1# Copyright 2020 Google LLC 2# 3# Licensed under the Apache License, Version 2.0 (the "License"); 4# you may not use this file except in compliance with the License. 5# You may obtain a copy of the License at 6# 7# https://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS, 11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12# See the License for the specific language governing permissions and 13# limitations under the License. 14 15type: google.api.Service 16config_version: 3 17name: showcase.googleapis.com 18title: Client Libraries Showcase API 19 20apis: 21 - name: google.showcase.v1beta1.Compliance 22 - name: google.showcase.v1beta1.Echo 23 - name: google.showcase.v1beta1.Identity 24 - name: google.showcase.v1beta1.Messaging 25 - name: google.showcase.v1beta1.SequenceService 26 - name: google.showcase.v1beta1.Testing 27 # Mix-in services 28 - name: 'google.cloud.location.Locations' 29 - name: 'google.iam.v1.IAMPolicy' 30 - name: 'google.longrunning.Operations' 31 32documentation: 33 summary: |- 34 Showcase represents both a model API and an integration testing surface for 35 client library generator consumption. 36 37backend: 38 rules: 39 - selector: 'google.cloud.location.Locations.*' 40 deadline: 60.0 41 - selector: 'google.iam.v1.IAMPolicy.*' 42 deadline: 60.0 43 - selector: 'google.longrunning.Operations.*' 44 deadline: 60.0 45 46http: 47 rules: 48 - selector: google.cloud.location.Locations.ListLocations 49 get: '/v1beta1/{name=projects/*}/locations' 50 - selector: google.cloud.location.Locations.GetLocation 51 get: '/v1beta1/{name=projects/*/locations/*}' 52 - selector: google.iam.v1.IAMPolicy.SetIamPolicy 53 post: '/v1beta1/{resource=users/*}:setIamPolicy' 54 body: '*' 55 additional_bindings: 56 - post: '/v1beta1/{resource=rooms/*}:setIamPolicy' 57 body: '*' 58 - post: '/v1beta1/{resource=rooms/*/blurbs/*}:setIamPolicy' 59 body: '*' 60 - post: '/v1beta1/{resource=sequences/*}:setIamPolicy' 61 body: '*' 62 - selector: google.iam.v1.IAMPolicy.GetIamPolicy 63 get: '/v1beta1/{resource=users/*}:getIamPolicy' 64 additional_bindings: 65 - get: '/v1beta1/{resource=rooms/*}:getIamPolicy' 66 - get: '/v1beta1/{resource=rooms/*/blurbs/*}:getIamPolicy' 67 - get: '/v1beta1/{resource=sequences/*}:getIamPolicy' 68 - selector: google.iam.v1.IAMPolicy.TestIamPermissions 69 post: '/v1beta1/{resource=users/*}:testIamPermissions' 70 body: '*' 71 additional_bindings: 72 - post: '/v1beta1/{resource=rooms/*}:testIamPermissions' 73 body: '*' 74 - post: '/v1beta1/{resource=rooms/*/blurbs/*}:testIamPermissions' 75 body: '*' 76 - post: '/v1beta1/{resource=sequences/*}:testIamPermissions' 77 body: '*' 78 - selector: google.longrunning.Operations.ListOperations 79 get: '/v1beta1/operations' 80 additional_bindings: 81 - get: '/v1beta2/operations' 82 - get: '/v1beta3/operations' 83 - selector: google.longrunning.Operations.GetOperation 84 get: '/v1beta1/{name=operations/**}' 85 additional_bindings: 86 - get: '/v1beta2/{name=operations/**}' 87 - get: '/v1beta3/{name=operations/**}' 88 - selector: google.longrunning.Operations.DeleteOperation 89 delete: '/v1beta1/{name=operations/**}' 90 additional_bindings: 91 - delete: '/v1beta2/{name=operations/**}' 92 - delete: '/v1beta3/{name=operations/**}' 93 - selector: google.longrunning.Operations.CancelOperation 94 post: '/v1beta1/{name=operations/**}:cancel' 95 additional_bindings: 96 - post: '/v1beta2/{name=operations/**}:cancel' 97 - post: '/v1beta3/{name=operations/**}:cancel'