1type: google.api.Service 2config_version: 3 3name: pubsub.googleapis.com 4title: Cloud Pub/Sub API 5 6apis: 7- name: google.pubsub.v1.Publisher 8- name: google.pubsub.v1.SchemaService 9- name: google.pubsub.v1.Subscriber 10- name: google.iam.v1.IAMPolicy 11 12documentation: 13 summary: |- 14 Provides reliable, many-to-many, asynchronous messaging between 15 applications. 16 rules: 17 - selector: google.iam.v1.IAMPolicy.GetIamPolicy 18 description: |- 19 Gets the access control policy for a resource. Returns an empty policy 20 if the resource exists and does not have a policy set. 21 22 - selector: google.iam.v1.IAMPolicy.SetIamPolicy 23 description: |- 24 Sets the access control policy on the specified resource. Replaces 25 any existing policy. 26 27 Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` 28 errors. 29 30 - selector: google.iam.v1.IAMPolicy.TestIamPermissions 31 description: |- 32 Returns permissions that a caller has on the specified resource. If the 33 resource does not exist, this will return an empty set of 34 permissions, not a `NOT_FOUND` error. 35 36 Note: This operation is designed to be used for building 37 permission-aware UIs and command-line tools, not for authorization 38 checking. This operation may "fail open" without warning. 39 40backend: 41 rules: 42 - selector: 'google.pubsub.v1.Publisher.*' 43 deadline: 120.0 44 - selector: google.pubsub.v1.Publisher.Publish 45 deadline: 20.0 46 - selector: 'google.pubsub.v1.Subscriber.*' 47 deadline: 120.0 48 49http: 50 rules: 51 - selector: google.iam.v1.IAMPolicy.GetIamPolicy 52 get: '/v1/{resource=projects/*/topics/*}:getIamPolicy' 53 additional_bindings: 54 - get: '/v1/{resource=projects/*/subscriptions/*}:getIamPolicy' 55 - get: '/v1/{resource=projects/*/snapshots/*}:getIamPolicy' 56 - selector: google.iam.v1.IAMPolicy.SetIamPolicy 57 post: '/v1/{resource=projects/*/topics/*}:setIamPolicy' 58 body: '*' 59 additional_bindings: 60 - post: '/v1/{resource=projects/*/subscriptions/*}:setIamPolicy' 61 body: '*' 62 - post: '/v1/{resource=projects/*/snapshots/*}:setIamPolicy' 63 body: '*' 64 - selector: google.iam.v1.IAMPolicy.TestIamPermissions 65 post: '/v1/{resource=projects/*/subscriptions/*}:testIamPermissions' 66 body: '*' 67 additional_bindings: 68 - post: '/v1/{resource=projects/*/topics/*}:testIamPermissions' 69 body: '*' 70 - post: '/v1/{resource=projects/*/snapshots/*}:testIamPermissions' 71 body: '*' 72 73authentication: 74 rules: 75 - selector: 'google.iam.v1.IAMPolicy.*' 76 oauth: 77 canonical_scopes: |- 78 https://www.googleapis.com/auth/cloud-platform, 79 https://www.googleapis.com/auth/pubsub 80 - selector: 'google.pubsub.v1.Publisher.*' 81 oauth: 82 canonical_scopes: |- 83 https://www.googleapis.com/auth/cloud-platform, 84 https://www.googleapis.com/auth/pubsub 85 - selector: 'google.pubsub.v1.SchemaService.*' 86 oauth: 87 canonical_scopes: |- 88 https://www.googleapis.com/auth/cloud-platform, 89 https://www.googleapis.com/auth/pubsub 90 - selector: 'google.pubsub.v1.Subscriber.*' 91 oauth: 92 canonical_scopes: |- 93 https://www.googleapis.com/auth/cloud-platform, 94 https://www.googleapis.com/auth/pubsub 95