pubsub_gapic.yaml 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412
  1. type: com.google.api.codegen.ConfigProto
  2. language_settings:
  3. java:
  4. package_name: com.google.cloud.pubsub.spi.v1
  5. python:
  6. package_name: google.cloud.gapic.pubsub.v1
  7. go:
  8. package_name: cloud.google.com/go/pubsub/apiv1
  9. csharp:
  10. package_name: Google.Pubsub.V1
  11. ruby:
  12. package_name: Google::Cloud::Pubsub::V1
  13. php:
  14. package_name: Google\Cloud\PubSub\V1
  15. nodejs:
  16. package_name: "@google-cloud/pubsub"
  17. interfaces:
  18. - name: google.pubsub.v1.Subscriber
  19. collections:
  20. - name_pattern: projects/{project}
  21. entity_name: project
  22. - name_pattern: projects/{project}/subscriptions/{subscription}
  23. entity_name: subscription
  24. - name_pattern: projects/{project}/topics/{topic}
  25. entity_name: topic
  26. retry_codes_def:
  27. - name: idempotent
  28. retry_codes:
  29. - UNAVAILABLE
  30. - DEADLINE_EXCEEDED
  31. - name: non_idempotent
  32. retry_codes: []
  33. retry_params_def:
  34. - name: default
  35. initial_retry_delay_millis: 100
  36. retry_delay_multiplier: 1.3
  37. max_retry_delay_millis: 60000 # 60 seconds
  38. initial_rpc_timeout_millis: 60000 # 60 seconds
  39. rpc_timeout_multiplier: 1
  40. max_rpc_timeout_millis: 60000 # 60 seconds
  41. total_timeout_millis: 600000 # 10 minutes
  42. - name: messaging
  43. initial_retry_delay_millis: 100
  44. retry_delay_multiplier: 1.3
  45. max_retry_delay_millis: 60000 # 60 seconds
  46. initial_rpc_timeout_millis: 12000 # 12 seconds
  47. rpc_timeout_multiplier: 1
  48. max_rpc_timeout_millis: 12000 # 12 seconds
  49. total_timeout_millis: 600000 # 10 minutes
  50. methods:
  51. - name: CreateSubscription
  52. flattening:
  53. groups:
  54. - parameters:
  55. - name
  56. - topic
  57. - push_config
  58. - ack_deadline_seconds
  59. required_fields:
  60. - name
  61. - topic
  62. request_object_method: true
  63. retry_codes_name: idempotent
  64. retry_params_name: default
  65. field_name_patterns:
  66. name: subscription
  67. topic: topic
  68. timeout_millis: 60000
  69. - name: GetSubscription
  70. flattening:
  71. groups:
  72. - parameters:
  73. - subscription
  74. required_fields:
  75. - subscription
  76. request_object_method: false
  77. retry_codes_name: idempotent
  78. retry_params_name: default
  79. field_name_patterns:
  80. subscription: subscription
  81. timeout_millis: 60000
  82. - name: ListSubscriptions
  83. flattening:
  84. groups:
  85. - parameters:
  86. - project
  87. required_fields:
  88. - project
  89. request_object_method: true
  90. page_streaming:
  91. request:
  92. page_size_field: page_size
  93. token_field: page_token
  94. response:
  95. token_field: next_page_token
  96. resources_field: subscriptions
  97. retry_codes_name: idempotent
  98. retry_params_name: default
  99. field_name_patterns:
  100. project: project
  101. timeout_millis: 60000
  102. - name: DeleteSubscription
  103. flattening:
  104. groups:
  105. - parameters:
  106. - subscription
  107. required_fields:
  108. - subscription
  109. request_object_method: false
  110. retry_codes_name: idempotent
  111. retry_params_name: default
  112. field_name_patterns:
  113. subscription: subscription
  114. timeout_millis: 60000
  115. - name: ModifyAckDeadline
  116. flattening:
  117. groups:
  118. - parameters:
  119. - subscription
  120. - ack_ids
  121. - ack_deadline_seconds
  122. required_fields:
  123. - subscription
  124. - ack_ids
  125. - ack_deadline_seconds
  126. request_object_method: true
  127. retry_codes_name: non_idempotent
  128. retry_params_name: default
  129. field_name_patterns:
  130. subscription: subscription
  131. timeout_millis: 60000
  132. - name: Acknowledge
  133. flattening:
  134. groups:
  135. - parameters:
  136. - subscription
  137. - ack_ids
  138. required_fields:
  139. - subscription
  140. - ack_ids
  141. request_object_method: true
  142. retry_codes_name: non_idempotent
  143. retry_params_name: messaging
  144. field_name_patterns:
  145. subscription: subscription
  146. timeout_millis: 60000
  147. - name: Pull
  148. flattening:
  149. groups:
  150. - parameters:
  151. - subscription
  152. - return_immediately
  153. - max_messages
  154. required_fields:
  155. - subscription
  156. - max_messages
  157. request_object_method: true
  158. retry_codes_name: non_idempotent
  159. retry_params_name: messaging
  160. field_name_patterns:
  161. subscription: subscription
  162. timeout_millis: 60000
  163. - name: ModifyPushConfig
  164. flattening:
  165. groups:
  166. - parameters:
  167. - subscription
  168. - push_config
  169. required_fields:
  170. - subscription
  171. - push_config
  172. request_object_method: true
  173. retry_codes_name: non_idempotent
  174. retry_params_name: default
  175. field_name_patterns:
  176. subscription: subscription
  177. timeout_millis: 60000
  178. - name: SetIamPolicy
  179. flattening:
  180. groups:
  181. - parameters:
  182. - resource
  183. - policy
  184. required_fields:
  185. - resource
  186. - policy
  187. request_object_method: true
  188. retry_codes_name: non_idempotent
  189. retry_params_name: default
  190. field_name_patterns:
  191. resource: subscription
  192. timeout_millis: 60000
  193. reroute_to_grpc_interface: google.iam.v1.IAMPolicy
  194. - name: GetIamPolicy
  195. flattening:
  196. groups:
  197. - parameters:
  198. - resource
  199. required_fields:
  200. - resource
  201. request_object_method: false
  202. retry_codes_name: idempotent
  203. retry_params_name: default
  204. field_name_patterns:
  205. resource: subscription
  206. timeout_millis: 60000
  207. reroute_to_grpc_interface: google.iam.v1.IAMPolicy
  208. - name: TestIamPermissions
  209. flattening:
  210. groups:
  211. - parameters:
  212. - resource
  213. - permissions
  214. required_fields:
  215. - resource
  216. - permissions
  217. request_object_method: true
  218. retry_codes_name: non_idempotent
  219. retry_params_name: default
  220. field_name_patterns:
  221. resource: subscription
  222. timeout_millis: 60000
  223. reroute_to_grpc_interface: google.iam.v1.IAMPolicy
  224. - name: google.pubsub.v1.Publisher
  225. collections:
  226. - name_pattern: projects/{project}
  227. entity_name: project
  228. - name_pattern: projects/{project}/topics/{topic}
  229. entity_name: topic
  230. retry_codes_def:
  231. - name: idempotent
  232. retry_codes:
  233. - UNAVAILABLE
  234. - DEADLINE_EXCEEDED
  235. - name: one_plus_delivery
  236. retry_codes:
  237. - UNAVAILABLE
  238. - DEADLINE_EXCEEDED
  239. - name: non_idempotent
  240. retry_codes: []
  241. retry_params_def:
  242. - name: default
  243. initial_retry_delay_millis: 100
  244. retry_delay_multiplier: 1.3
  245. max_retry_delay_millis: 60000 # 60 seconds
  246. initial_rpc_timeout_millis: 60000 # 60 seconds
  247. rpc_timeout_multiplier: 1
  248. max_rpc_timeout_millis: 60000 # 60 seconds
  249. total_timeout_millis: 600000 # 10 minutes
  250. - name: messaging
  251. initial_retry_delay_millis: 100
  252. retry_delay_multiplier: 1.3
  253. max_retry_delay_millis: 60000 # 60 seconds
  254. initial_rpc_timeout_millis: 12000 # 12 seconds
  255. rpc_timeout_multiplier: 1
  256. max_rpc_timeout_millis: 12000 # 12 seconds
  257. total_timeout_millis: 600000 # 10 minutes
  258. methods:
  259. - name: CreateTopic
  260. flattening:
  261. groups:
  262. - parameters:
  263. - name
  264. required_fields:
  265. - name
  266. request_object_method: false
  267. retry_codes_name: idempotent
  268. retry_params_name: default
  269. field_name_patterns:
  270. name: topic
  271. timeout_millis: 60000
  272. - name: Publish
  273. flattening:
  274. groups:
  275. - parameters:
  276. - topic
  277. - messages
  278. required_fields:
  279. - topic
  280. - messages
  281. request_object_method: true
  282. retry_codes_name: one_plus_delivery
  283. retry_params_name: messaging
  284. bundling:
  285. thresholds:
  286. element_count_threshold: 10
  287. element_count_limit: 1000 # TO BE REMOVED LATER
  288. request_byte_threshold: 1024 # 1 Kb
  289. request_byte_limit: 10485760 # TO BE REMOVED LATER
  290. delay_threshold_millis: 10
  291. bundle_descriptor:
  292. bundled_field: messages
  293. discriminator_fields:
  294. - topic
  295. subresponse_field: message_ids
  296. field_name_patterns:
  297. topic: topic
  298. sample_code_init_fields:
  299. - messages[0].data
  300. timeout_millis: 60000
  301. - name: GetTopic
  302. flattening:
  303. groups:
  304. - parameters:
  305. - topic
  306. required_fields:
  307. - topic
  308. request_object_method: false
  309. retry_codes_name: idempotent
  310. retry_params_name: default
  311. field_name_patterns:
  312. topic: topic
  313. timeout_millis: 60000
  314. - name: ListTopics
  315. flattening:
  316. groups:
  317. - parameters:
  318. - project
  319. required_fields:
  320. - project
  321. request_object_method: true
  322. page_streaming:
  323. request:
  324. page_size_field: page_size
  325. token_field: page_token
  326. response:
  327. token_field: next_page_token
  328. resources_field: topics
  329. retry_codes_name: idempotent
  330. retry_params_name: default
  331. field_name_patterns:
  332. project: project
  333. timeout_millis: 60000
  334. - name: ListTopicSubscriptions
  335. flattening:
  336. groups:
  337. - parameters:
  338. - topic
  339. required_fields:
  340. - topic
  341. request_object_method: true
  342. page_streaming:
  343. request:
  344. page_size_field: page_size
  345. token_field: page_token
  346. response:
  347. token_field: next_page_token
  348. resources_field: subscriptions
  349. retry_codes_name: idempotent
  350. retry_params_name: default
  351. field_name_patterns:
  352. topic: topic
  353. timeout_millis: 60000
  354. - name: DeleteTopic
  355. flattening:
  356. groups:
  357. - parameters:
  358. - topic
  359. required_fields:
  360. - topic
  361. request_object_method: false
  362. retry_codes_name: idempotent
  363. retry_params_name: default
  364. field_name_patterns:
  365. topic: topic
  366. timeout_millis: 60000
  367. - name: SetIamPolicy
  368. flattening:
  369. groups:
  370. - parameters:
  371. - resource
  372. - policy
  373. required_fields:
  374. - resource
  375. - policy
  376. request_object_method: true
  377. retry_codes_name: non_idempotent
  378. retry_params_name: default
  379. field_name_patterns:
  380. resource: topic
  381. timeout_millis: 60000
  382. reroute_to_grpc_interface: google.iam.v1.IAMPolicy
  383. - name: GetIamPolicy
  384. flattening:
  385. groups:
  386. - parameters:
  387. - resource
  388. required_fields:
  389. - resource
  390. request_object_method: false
  391. retry_codes_name: idempotent
  392. retry_params_name: default
  393. field_name_patterns:
  394. resource: topic
  395. timeout_millis: 60000
  396. reroute_to_grpc_interface: google.iam.v1.IAMPolicy
  397. - name: TestIamPermissions
  398. flattening:
  399. groups:
  400. - parameters:
  401. - resource
  402. - permissions
  403. required_fields:
  404. - resource
  405. - permissions
  406. request_object_method: true
  407. retry_codes_name: non_idempotent
  408. retry_params_name: default
  409. field_name_patterns:
  410. resource: topic
  411. timeout_millis: 60000
  412. reroute_to_grpc_interface: google.iam.v1.IAMPolicy