xref: /aosp_15_r20/external/sdk-platform-java/test/integration/pubsub_v1.yaml (revision 882aa7c72c3cd3b66e72a261bdd69b93f7de7670)
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