@devvit/protos 0.11.7 → 0.11.8-next-2025-02-10-c496a14e8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (233) hide show
  1. package/meta.min.json +7825 -0
  2. package/package.json +4 -4
  3. package/protos.min.js +2 -0
  4. package/protos.min.js.map +7 -0
  5. package/schema/.snootobuf/deps/buf/validate/expression.proto +92 -0
  6. package/schema/.snootobuf/deps/buf/validate/priv/private.proto +41 -0
  7. package/schema/.snootobuf/deps/buf/validate/validate.proto +4130 -0
  8. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/audit.proto +72 -0
  9. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/auth.proto +49 -0
  10. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/organization.proto +54 -0
  11. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/service.proto +46 -0
  12. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/subscription.proto +72 -0
  13. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/ui.proto +20 -0
  14. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/user.proto +45 -0
  15. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/admin.proto +54 -0
  16. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/delivery.proto +773 -0
  17. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/filter.proto +66 -0
  18. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/firehose.proto +100 -0
  19. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/intake.proto +19 -0
  20. package/schema/.snootobuf/deps/devvit/events/v1alpha/events.proto +446 -0
  21. package/schema/.snootobuf/deps/devvit/gateway/v1alpha/payments.proto +24 -0
  22. package/schema/.snootobuf/deps/devvit/options/options.proto +98 -0
  23. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/commentv2.proto +29 -0
  24. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/flair.proto +25 -0
  25. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/modaction.proto +53 -0
  26. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/modmail.proto +56 -0
  27. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/postv2.proto +107 -0
  28. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/subredditv2.proto +41 -0
  29. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/userv2.proto +23 -0
  30. package/schema/.snootobuf/deps/devvit/triggers/v1alpha/triggers.proto +162 -0
  31. package/schema/.snootobuf/deps/enum/account_gender_category.proto +14 -0
  32. package/schema/.snootobuf/deps/enum/approval_status.proto +15 -0
  33. package/schema/.snootobuf/deps/enum/automated_reporting_level.proto +12 -0
  34. package/schema/.snootobuf/deps/enum/ban_evasion_threshold.proto +13 -0
  35. package/schema/.snootobuf/deps/enum/ban_info_action.proto +12 -0
  36. package/schema/.snootobuf/deps/enum/block_relation_type.proto +11 -0
  37. package/schema/.snootobuf/deps/enum/comment_sort.proto +18 -0
  38. package/schema/.snootobuf/deps/enum/comment_type.proto +11 -0
  39. package/schema/.snootobuf/deps/enum/crowd_control_level.proto +12 -0
  40. package/schema/.snootobuf/deps/enum/discussion_type.proto +10 -0
  41. package/schema/.snootobuf/deps/enum/distinguish_type.proto +14 -0
  42. package/schema/.snootobuf/deps/enum/flair_position.proto +11 -0
  43. package/schema/.snootobuf/deps/enum/hateful_content_threshold.proto +12 -0
  44. package/schema/.snootobuf/deps/enum/link_content_type.proto +11 -0
  45. package/schema/.snootobuf/deps/enum/link_type.proto +11 -0
  46. package/schema/.snootobuf/deps/enum/link_visibility.proto +11 -0
  47. package/schema/.snootobuf/deps/enum/prediction_leaderboard_entry_type.proto +11 -0
  48. package/schema/.snootobuf/deps/enum/promo_layout.proto +11 -0
  49. package/schema/.snootobuf/deps/enum/removed_by_type.proto +18 -0
  50. package/schema/.snootobuf/deps/enum/spam_level.proto +11 -0
  51. package/schema/.snootobuf/deps/enum/subreddit_type.proto +16 -0
  52. package/schema/.snootobuf/deps/enum/verdict.proto +14 -0
  53. package/schema/.snootobuf/deps/enum/vote.proto +12 -0
  54. package/schema/.snootobuf/deps/enum/whitelist_status.proto +17 -0
  55. package/schema/.snootobuf/deps/enum/wiki_edit_mode.proto +12 -0
  56. package/schema/.snootobuf/deps/evaluator/evaluator.proto +203 -0
  57. package/schema/.snootobuf/deps/google/api/annotations.proto +31 -0
  58. package/schema/.snootobuf/deps/google/api/apikeys/v2/apikeys.proto +288 -0
  59. package/schema/.snootobuf/deps/google/api/apikeys/v2/resources.proto +175 -0
  60. package/schema/.snootobuf/deps/google/api/auth.proto +237 -0
  61. package/schema/.snootobuf/deps/google/api/backend.proto +185 -0
  62. package/schema/.snootobuf/deps/google/api/billing.proto +77 -0
  63. package/schema/.snootobuf/deps/google/api/client.proto +431 -0
  64. package/schema/.snootobuf/deps/google/api/cloudquotas/v1/cloudquotas.proto +322 -0
  65. package/schema/.snootobuf/deps/google/api/cloudquotas/v1/resources.proto +315 -0
  66. package/schema/.snootobuf/deps/google/api/config_change.proto +84 -0
  67. package/schema/.snootobuf/deps/google/api/consumer.proto +82 -0
  68. package/schema/.snootobuf/deps/google/api/context.proto +92 -0
  69. package/schema/.snootobuf/deps/google/api/control.proto +41 -0
  70. package/schema/.snootobuf/deps/google/api/distribution.proto +213 -0
  71. package/schema/.snootobuf/deps/google/api/documentation.proto +168 -0
  72. package/schema/.snootobuf/deps/google/api/endpoint.proto +69 -0
  73. package/schema/.snootobuf/deps/google/api/error_reason.proto +589 -0
  74. package/schema/.snootobuf/deps/google/api/expr/conformance/v1alpha1/conformance_service.proto +183 -0
  75. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/checked.proto +343 -0
  76. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/eval.proto +118 -0
  77. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/explain.proto +53 -0
  78. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/syntax.proto +438 -0
  79. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/value.proto +115 -0
  80. package/schema/.snootobuf/deps/google/api/expr/v1beta1/decl.proto +84 -0
  81. package/schema/.snootobuf/deps/google/api/expr/v1beta1/eval.proto +125 -0
  82. package/schema/.snootobuf/deps/google/api/expr/v1beta1/expr.proto +265 -0
  83. package/schema/.snootobuf/deps/google/api/expr/v1beta1/source.proto +62 -0
  84. package/schema/.snootobuf/deps/google/api/expr/v1beta1/value.proto +114 -0
  85. package/schema/.snootobuf/deps/google/api/field_behavior.proto +104 -0
  86. package/schema/.snootobuf/deps/google/api/field_info.proto +106 -0
  87. package/schema/.snootobuf/deps/google/api/http.proto +371 -0
  88. package/schema/.snootobuf/deps/google/api/httpbody.proto +81 -0
  89. package/schema/.snootobuf/deps/google/api/label.proto +48 -0
  90. package/schema/.snootobuf/deps/google/api/launch_stage.proto +72 -0
  91. package/schema/.snootobuf/deps/google/api/log.proto +54 -0
  92. package/schema/.snootobuf/deps/google/api/logging.proto +81 -0
  93. package/schema/.snootobuf/deps/google/api/metric.proto +268 -0
  94. package/schema/.snootobuf/deps/google/api/monitored_resource.proto +130 -0
  95. package/schema/.snootobuf/deps/google/api/monitoring.proto +107 -0
  96. package/schema/.snootobuf/deps/google/api/policy.proto +85 -0
  97. package/schema/.snootobuf/deps/google/api/quota.proto +184 -0
  98. package/schema/.snootobuf/deps/google/api/resource.proto +243 -0
  99. package/schema/.snootobuf/deps/google/api/routing.proto +461 -0
  100. package/schema/.snootobuf/deps/google/api/service.proto +191 -0
  101. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/check_error.proto +124 -0
  102. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/distribution.proto +166 -0
  103. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/http_request.proto +93 -0
  104. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/log_entry.proto +126 -0
  105. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/metric_value.proto +81 -0
  106. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/operation.proto +123 -0
  107. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/quota_controller.proto +245 -0
  108. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/service_controller.proto +260 -0
  109. package/schema/.snootobuf/deps/google/api/servicecontrol/v2/service_controller.proto +196 -0
  110. package/schema/.snootobuf/deps/google/api/servicemanagement/v1/resources.proto +295 -0
  111. package/schema/.snootobuf/deps/google/api/servicemanagement/v1/servicemanager.proto +508 -0
  112. package/schema/.snootobuf/deps/google/api/serviceusage/v1/resources.proto +130 -0
  113. package/schema/.snootobuf/deps/google/api/serviceusage/v1/serviceusage.proto +305 -0
  114. package/schema/.snootobuf/deps/google/api/serviceusage/v1beta1/resources.proto +458 -0
  115. package/schema/.snootobuf/deps/google/api/serviceusage/v1beta1/serviceusage.proto +793 -0
  116. package/schema/.snootobuf/deps/google/api/source_info.proto +31 -0
  117. package/schema/.snootobuf/deps/google/api/system_parameter.proto +96 -0
  118. package/schema/.snootobuf/deps/google/api/usage.proto +96 -0
  119. package/schema/.snootobuf/deps/google/api/visibility.proto +113 -0
  120. package/schema/.snootobuf/deps/google/cloud/extended_operations.proto +150 -0
  121. package/schema/.snootobuf/deps/google/iam/admin/v1/iam.proto +1087 -0
  122. package/schema/.snootobuf/deps/google/iam/v1/iam_policy.proto +145 -0
  123. package/schema/.snootobuf/deps/google/iam/v1/logging/audit_data.proto +34 -0
  124. package/schema/.snootobuf/deps/google/iam/v1/options.proto +41 -0
  125. package/schema/.snootobuf/deps/google/iam/v1/policy.proto +240 -0
  126. package/schema/.snootobuf/deps/google/logging/type/http_request.proto +92 -0
  127. package/schema/.snootobuf/deps/google/logging/type/log_severity.proto +72 -0
  128. package/schema/.snootobuf/deps/google/longrunning/operations.proto +247 -0
  129. package/schema/.snootobuf/deps/google/protobuf/any.proto +158 -0
  130. package/schema/.snootobuf/deps/google/protobuf/api.proto +208 -0
  131. package/schema/.snootobuf/deps/google/protobuf/compiler/plugin.proto +183 -0
  132. package/schema/.snootobuf/deps/google/protobuf/descriptor.proto +921 -0
  133. package/schema/.snootobuf/deps/google/protobuf/duration.proto +116 -0
  134. package/schema/.snootobuf/deps/google/protobuf/empty.proto +51 -0
  135. package/schema/.snootobuf/deps/google/protobuf/field_mask.proto +245 -0
  136. package/schema/.snootobuf/deps/google/protobuf/source_context.proto +48 -0
  137. package/schema/.snootobuf/deps/google/protobuf/struct.proto +95 -0
  138. package/schema/.snootobuf/deps/google/protobuf/timestamp.proto +147 -0
  139. package/schema/.snootobuf/deps/google/protobuf/type.proto +187 -0
  140. package/schema/.snootobuf/deps/google/protobuf/wrappers.proto +123 -0
  141. package/schema/.snootobuf/deps/google/rpc/code.proto +186 -0
  142. package/schema/.snootobuf/deps/google/rpc/context/attribute_context.proto +287 -0
  143. package/schema/.snootobuf/deps/google/rpc/error_details.proto +246 -0
  144. package/schema/.snootobuf/deps/google/rpc/status.proto +47 -0
  145. package/schema/.snootobuf/deps/google/type/calendar_period.proto +57 -0
  146. package/schema/.snootobuf/deps/google/type/color.proto +170 -0
  147. package/schema/.snootobuf/deps/google/type/date.proto +50 -0
  148. package/schema/.snootobuf/deps/google/type/datetime.proto +97 -0
  149. package/schema/.snootobuf/deps/google/type/dayofweek.proto +51 -0
  150. package/schema/.snootobuf/deps/google/type/expr.proto +51 -0
  151. package/schema/.snootobuf/deps/google/type/fraction.proto +34 -0
  152. package/schema/.snootobuf/deps/google/type/latlng.proto +37 -0
  153. package/schema/.snootobuf/deps/google/type/money.proto +43 -0
  154. package/schema/.snootobuf/deps/google/type/month.proto +66 -0
  155. package/schema/.snootobuf/deps/google/type/postal_address.proto +135 -0
  156. package/schema/.snootobuf/deps/google/type/quaternion.proto +95 -0
  157. package/schema/.snootobuf/deps/google/type/timeofday.proto +44 -0
  158. package/schema/.snootobuf/deps/openapi/helper.proto +20 -0
  159. package/schema/.snootobuf/deps/products-api/protos/reddit/xpaymentsplatform/payproducts/v1/currencies.proto +189 -0
  160. package/schema/.snootobuf/deps/products-api/protos/reddit/xpaymentsplatform/payproducts/v1/payproducts.proto +118 -0
  161. package/schema/.snootobuf/deps/reddit/api/metadata/v1/metadata.proto +55 -0
  162. package/schema/.snootobuf/deps/reddit/coreplatform/account/v1/account.proto +579 -0
  163. package/schema/.snootobuf/deps/reddit/coreplatform/account/v1/account_relations.proto +43 -0
  164. package/schema/.snootobuf/deps/reddit/coreplatform/api/metadata/v1/metadata.proto +82 -0
  165. package/schema/.snootobuf/deps/reddit/coreplatform/blocking/v1/user_blocking_service.proto +221 -0
  166. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comment_tree.proto +78 -0
  167. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comment_tree_service.proto +189 -0
  168. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comment_tree_structure.proto +29 -0
  169. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comments.proto +417 -0
  170. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comments_service.proto +72 -0
  171. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/auth.proto +25 -0
  172. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/features.proto +52 -0
  173. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/lang.proto +16 -0
  174. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/legal.proto +20 -0
  175. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/media.proto +149 -0
  176. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/moderation.proto +197 -0
  177. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/safety.proto +116 -0
  178. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/time.proto +25 -0
  179. package/schema/.snootobuf/deps/reddit/coreplatform/domains/v1/domains_metadata_service.proto +101 -0
  180. package/schema/.snootobuf/deps/reddit/coreplatform/grpc_thrift/v1/grpc_thrift_options.proto +34 -0
  181. package/schema/.snootobuf/deps/reddit/coreplatform/links/v1/links.proto +798 -0
  182. package/schema/.snootobuf/deps/reddit/coreplatform/links/v1/links_service.proto +186 -0
  183. package/schema/.snootobuf/deps/reddit/coreplatform/messages/v1/messages.proto +110 -0
  184. package/schema/.snootobuf/deps/reddit/coreplatform/sensitive/v1/wrappers.proto +51 -0
  185. package/schema/.snootobuf/deps/reddit/coreplatform/subreddit/v1/subreddit.proto +1202 -0
  186. package/schema/.snootobuf/deps/reddit/coreplatform/subreddit/v1/subreddit_member_relations.proto +85 -0
  187. package/schema/.snootobuf/deps/reddit/coreplatform/subreddit/v1/subreddit_moderator_service.proto +363 -0
  188. package/schema/.snootobuf/deps/reddit/coreplatform/subreddit/v1/subreddit_service.proto +301 -0
  189. package/schema/.snootobuf/deps/reddit/coreplatform/thing/v0/thing.proto +2869 -0
  190. package/schema/.snootobuf/deps/reddit/devvit/custom_post/v1/custom_post.proto +15 -0
  191. package/schema/.snootobuf/deps/reddit/devvit/custom_post/v1/service.proto +11 -0
  192. package/schema/.snootobuf/deps/reddit/devvit/subreddit/v1/context_action.proto +48 -0
  193. package/schema/.snootobuf/deps/reddit/devvit/subreddit/v1/manifest.proto +70 -0
  194. package/schema/.snootobuf/deps/reddit/devvit/subreddit/v1/service.proto +11 -0
  195. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/acknowledge_order_delivery.proto +17 -0
  196. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/checkout.proto +89 -0
  197. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/common.proto +322 -0
  198. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/delete_products.proto +17 -0
  199. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/events.proto +14 -0
  200. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_batch_products.proto +15 -0
  201. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_gold_balances.proto +48 -0
  202. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_order.proto +31 -0
  203. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_orders.proto +26 -0
  204. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_orders_by_user.proto +15 -0
  205. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_payout_info_batch.proto +52 -0
  206. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_products.proto +23 -0
  207. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_user_profiles.proto +28 -0
  208. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/refund_order.proto +17 -0
  209. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/service.proto +49 -0
  210. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/service_data_compliance.proto +20 -0
  211. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/upsert_products.proto +17 -0
  212. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paygatewaypsps/v1/paygatewaypsps.proto +158 -0
  213. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payorders/v1/payments_data_compliance.proto +18 -0
  214. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payorders/v1/payorders.proto +195 -0
  215. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paypayments/v1/admin.proto +44 -0
  216. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paypayments/v1/ledger.proto +200 -0
  217. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paypayments/v1/payments_data_compliance.proto +18 -0
  218. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paypayments/v1/paypayments.proto +210 -0
  219. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payproducts/v1/currencies.proto +189 -0
  220. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payproducts/v1/payproducts.proto +135 -0
  221. package/schema/.snootobuf/deps/snooron_sources/text_classification/text_classification.proto +29 -0
  222. package/schema/.snootobuf/deps/snooron_sources/v2_event/v2_event.proto +3292 -0
  223. package/schema/.snootobuf/deps/validate/validate.proto +862 -0
  224. package/schema/devvit/plugin/redditapi/linksandcomments/linksandcomments_msg.proto +3 -0
  225. package/schema/snootobuf.devenv.lock +444 -388
  226. package/schema/snootobuf.lock +444 -388
  227. package/schema/snootobuf.redditapi.lock +444 -388
  228. package/schema/snootobuf.ts.lock +444 -388
  229. package/types/devvit/plugin/redditapi/linksandcomments/linksandcomments_msg.d.ts +2 -0
  230. package/types/devvit/plugin/redditapi/linksandcomments/linksandcomments_msg.d.ts.map +1 -1
  231. package/types/devvit/plugin/redditapi/linksandcomments/linksandcomments_msg.js +16 -0
  232. package/types/devvit/plugin/redditapi/linksandcomments/linksandcomments_svc.d.ts +4 -0
  233. package/types/devvit/plugin/redditapi/linksandcomments/linksandcomments_svc.d.ts.map +1 -1
@@ -0,0 +1,288 @@
1
+ // Copyright 2024 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
+ // http://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
+
15
+ syntax = "proto3";
16
+
17
+ package google.api.apikeys.v2;
18
+
19
+ import "google/api/annotations.proto";
20
+ import "google/api/apikeys/v2/resources.proto";
21
+ import "google/api/client.proto";
22
+ import "google/api/field_behavior.proto";
23
+ import "google/api/resource.proto";
24
+ import "google/longrunning/operations.proto";
25
+ import "google/protobuf/empty.proto";
26
+ import "google/protobuf/field_mask.proto";
27
+
28
+ option csharp_namespace = "Google.Cloud.ApiKeys.V2";
29
+ option go_package = "cloud.google.com/go/apikeys/apiv2/apikeyspb;apikeyspb";
30
+ option java_multiple_files = true;
31
+ option java_outer_classname = "ApiKeysProto";
32
+ option java_package = "com.google.api.apikeys.v2";
33
+ option php_namespace = "Google\\Cloud\\ApiKeys\\V2";
34
+ option ruby_package = "Google::Cloud::ApiKeys::V2";
35
+
36
+ // Manages the API keys associated with projects.
37
+ service ApiKeys {
38
+ option (google.api.default_host) = "apikeys.googleapis.com";
39
+ option (google.api.oauth_scopes) =
40
+ "https://www.googleapis.com/auth/cloud-platform,"
41
+ "https://www.googleapis.com/auth/cloud-platform.read-only";
42
+
43
+ // Creates a new API key.
44
+ //
45
+ // NOTE: Key is a global resource; hence the only supported value for
46
+ // location is `global`.
47
+ rpc CreateKey(CreateKeyRequest) returns (google.longrunning.Operation) {
48
+ option (google.api.http) = {
49
+ post: "/v2/{parent=projects/*/locations/*}/keys"
50
+ body: "key"
51
+ };
52
+ option (google.api.method_signature) = "parent,key,key_id";
53
+ option (google.longrunning.operation_info) = {
54
+ response_type: "Key"
55
+ metadata_type: "google.protobuf.Empty"
56
+ };
57
+ }
58
+
59
+ // Lists the API keys owned by a project. The key string of the API key
60
+ // isn't included in the response.
61
+ //
62
+ // NOTE: Key is a global resource; hence the only supported value for
63
+ // location is `global`.
64
+ rpc ListKeys(ListKeysRequest) returns (ListKeysResponse) {
65
+ option (google.api.http) = {
66
+ get: "/v2/{parent=projects/*/locations/*}/keys"
67
+ };
68
+ option (google.api.method_signature) = "parent";
69
+ }
70
+
71
+ // Gets the metadata for an API key. The key string of the API key
72
+ // isn't included in the response.
73
+ //
74
+ // NOTE: Key is a global resource; hence the only supported value for
75
+ // location is `global`.
76
+ rpc GetKey(GetKeyRequest) returns (Key) {
77
+ option (google.api.http) = {
78
+ get: "/v2/{name=projects/*/locations/*/keys/*}"
79
+ };
80
+ option (google.api.method_signature) = "name";
81
+ }
82
+
83
+ // Get the key string for an API key.
84
+ //
85
+ // NOTE: Key is a global resource; hence the only supported value for
86
+ // location is `global`.
87
+ rpc GetKeyString(GetKeyStringRequest) returns (GetKeyStringResponse) {
88
+ option (google.api.http) = {
89
+ get: "/v2/{name=projects/*/locations/*/keys/*}/keyString"
90
+ };
91
+ option (google.api.method_signature) = "name";
92
+ }
93
+
94
+ // Patches the modifiable fields of an API key.
95
+ // The key string of the API key isn't included in the response.
96
+ //
97
+ // NOTE: Key is a global resource; hence the only supported value for
98
+ // location is `global`.
99
+ rpc UpdateKey(UpdateKeyRequest) returns (google.longrunning.Operation) {
100
+ option (google.api.http) = {
101
+ patch: "/v2/{key.name=projects/*/locations/*/keys/*}"
102
+ body: "key"
103
+ };
104
+ option (google.api.method_signature) = "key,update_mask";
105
+ option (google.longrunning.operation_info) = {
106
+ response_type: "Key"
107
+ metadata_type: "google.protobuf.Empty"
108
+ };
109
+ }
110
+
111
+ // Deletes an API key. Deleted key can be retrieved within 30 days of
112
+ // deletion. Afterward, key will be purged from the project.
113
+ //
114
+ // NOTE: Key is a global resource; hence the only supported value for
115
+ // location is `global`.
116
+ rpc DeleteKey(DeleteKeyRequest) returns (google.longrunning.Operation) {
117
+ option (google.api.http) = {
118
+ delete: "/v2/{name=projects/*/locations/*/keys/*}"
119
+ };
120
+ option (google.api.method_signature) = "name";
121
+ option (google.longrunning.operation_info) = {
122
+ response_type: "Key"
123
+ metadata_type: "google.protobuf.Empty"
124
+ };
125
+ }
126
+
127
+ // Undeletes an API key which was deleted within 30 days.
128
+ //
129
+ // NOTE: Key is a global resource; hence the only supported value for
130
+ // location is `global`.
131
+ rpc UndeleteKey(UndeleteKeyRequest) returns (google.longrunning.Operation) {
132
+ option (google.api.http) = {
133
+ post: "/v2/{name=projects/*/locations/*/keys/*}:undelete"
134
+ body: "*"
135
+ };
136
+ option (google.longrunning.operation_info) = {
137
+ response_type: "Key"
138
+ metadata_type: "google.protobuf.Empty"
139
+ };
140
+ }
141
+
142
+ // Find the parent project and resource name of the API
143
+ // key that matches the key string in the request. If the API key has been
144
+ // purged, resource name will not be set.
145
+ // The service account must have the `apikeys.keys.lookup` permission
146
+ // on the parent project.
147
+ rpc LookupKey(LookupKeyRequest) returns (LookupKeyResponse) {
148
+ option (google.api.http) = {
149
+ get: "/v2/keys:lookupKey"
150
+ };
151
+ }
152
+ }
153
+
154
+ // Request message for `CreateKey` method.
155
+ message CreateKeyRequest {
156
+ // Required. The project in which the API key is created.
157
+ string parent = 1 [
158
+ (google.api.field_behavior) = REQUIRED,
159
+ (google.api.resource_reference) = {
160
+ child_type: "apikeys.googleapis.com/Key"
161
+ }
162
+ ];
163
+
164
+ // Required. The API key fields to set at creation time.
165
+ // You can configure only the `display_name`, `restrictions`, and
166
+ // `annotations` fields.
167
+ Key key = 2 [(google.api.field_behavior) = REQUIRED];
168
+
169
+ // User specified key id (optional). If specified, it will become the final
170
+ // component of the key resource name.
171
+ //
172
+ // The id must be unique within the project, must conform with RFC-1034,
173
+ // is restricted to lower-cased letters, and has a maximum length of 63
174
+ // characters. In another word, the id must match the regular
175
+ // expression: `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`.
176
+ //
177
+ // The id must NOT be a UUID-like string.
178
+ string key_id = 3;
179
+ }
180
+
181
+ // Request message for `ListKeys` method.
182
+ message ListKeysRequest {
183
+ // Required. Lists all API keys associated with this project.
184
+ string parent = 1 [
185
+ (google.api.field_behavior) = REQUIRED,
186
+ (google.api.resource_reference) = {
187
+ child_type: "apikeys.googleapis.com/Key"
188
+ }
189
+ ];
190
+
191
+ // Optional. Specifies the maximum number of results to be returned at a time.
192
+ int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
193
+
194
+ // Optional. Requests a specific page of results.
195
+ string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
196
+
197
+ // Optional. Indicate that keys deleted in the past 30 days should also be
198
+ // returned.
199
+ bool show_deleted = 6 [(google.api.field_behavior) = OPTIONAL];
200
+ }
201
+
202
+ // Response message for `ListKeys` method.
203
+ message ListKeysResponse {
204
+ // A list of API keys.
205
+ repeated Key keys = 1;
206
+
207
+ // The pagination token for the next page of results.
208
+ string next_page_token = 2;
209
+ }
210
+
211
+ // Request message for `GetKey` method.
212
+ message GetKeyRequest {
213
+ // Required. The resource name of the API key to get.
214
+ string name = 1 [
215
+ (google.api.field_behavior) = REQUIRED,
216
+ (google.api.resource_reference) = { type: "apikeys.googleapis.com/Key" }
217
+ ];
218
+ }
219
+
220
+ // Request message for `GetKeyString` method.
221
+ message GetKeyStringRequest {
222
+ // Required. The resource name of the API key to be retrieved.
223
+ string name = 1 [
224
+ (google.api.field_behavior) = REQUIRED,
225
+ (google.api.resource_reference) = { type: "apikeys.googleapis.com/Key" }
226
+ ];
227
+ }
228
+
229
+ // Response message for `GetKeyString` method.
230
+ message GetKeyStringResponse {
231
+ // An encrypted and signed value of the key.
232
+ string key_string = 1;
233
+ }
234
+
235
+ // Request message for `UpdateKey` method.
236
+ message UpdateKeyRequest {
237
+ // Required. Set the `name` field to the resource name of the API key to be
238
+ // updated. You can update only the `display_name`, `restrictions`, and
239
+ // `annotations` fields.
240
+ Key key = 1 [(google.api.field_behavior) = REQUIRED];
241
+
242
+ // The field mask specifies which fields to be updated as part of this
243
+ // request. All other fields are ignored.
244
+ // Mutable fields are: `display_name`, `restrictions`, and `annotations`.
245
+ // If an update mask is not provided, the service treats it as an implied mask
246
+ // equivalent to all allowed fields that are set on the wire. If the field
247
+ // mask has a special value "*", the service treats it equivalent to replace
248
+ // all allowed mutable fields.
249
+ google.protobuf.FieldMask update_mask = 2;
250
+ }
251
+
252
+ // Request message for `DeleteKey` method.
253
+ message DeleteKeyRequest {
254
+ // Required. The resource name of the API key to be deleted.
255
+ string name = 1 [
256
+ (google.api.field_behavior) = REQUIRED,
257
+ (google.api.resource_reference) = { type: "apikeys.googleapis.com/Key" }
258
+ ];
259
+
260
+ // Optional. The etag known to the client for the expected state of the key.
261
+ // This is to be used for optimistic concurrency.
262
+ string etag = 2 [(google.api.field_behavior) = OPTIONAL];
263
+ }
264
+
265
+ // Request message for `UndeleteKey` method.
266
+ message UndeleteKeyRequest {
267
+ // Required. The resource name of the API key to be undeleted.
268
+ string name = 1 [
269
+ (google.api.field_behavior) = REQUIRED,
270
+ (google.api.resource_reference) = { type: "apikeys.googleapis.com/Key" }
271
+ ];
272
+ }
273
+
274
+ // Request message for `LookupKey` method.
275
+ message LookupKeyRequest {
276
+ // Required. Finds the project that owns the key string value.
277
+ string key_string = 1 [(google.api.field_behavior) = REQUIRED];
278
+ }
279
+
280
+ // Response message for `LookupKey` method.
281
+ message LookupKeyResponse {
282
+ // The project that owns the key with the value specified in the request.
283
+ string parent = 1;
284
+
285
+ // The resource name of the API key. If the API key has been purged,
286
+ // resource name is empty.
287
+ string name = 2;
288
+ }
@@ -0,0 +1,175 @@
1
+ // Copyright 2024 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
+ // http://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
+
15
+ syntax = "proto3";
16
+
17
+ package google.api.apikeys.v2;
18
+
19
+ import "google/api/field_behavior.proto";
20
+ import "google/api/resource.proto";
21
+ import "google/protobuf/timestamp.proto";
22
+
23
+ option csharp_namespace = "Google.Cloud.ApiKeys.V2";
24
+ option go_package = "cloud.google.com/go/apikeys/apiv2/apikeyspb;apikeyspb";
25
+ option java_multiple_files = true;
26
+ option java_outer_classname = "ResourcesProto";
27
+ option java_package = "com.google.api.apikeys.v2";
28
+ option php_namespace = "Google\\Cloud\\ApiKeys\\V2";
29
+ option ruby_package = "Google::Cloud::ApiKeys::V2";
30
+
31
+ // The representation of a key managed by the API Keys API.
32
+ message Key {
33
+ option (google.api.resource) = {
34
+ type: "apikeys.googleapis.com/Key"
35
+ pattern: "projects/{project}/locations/{location}/keys/{key}"
36
+ plural: "keys"
37
+ singular: "key"
38
+ style: DECLARATIVE_FRIENDLY
39
+ };
40
+
41
+ // Output only. The resource name of the key.
42
+ // The `name` has the form:
43
+ // `projects/<PROJECT_NUMBER>/locations/global/keys/<KEY_ID>`.
44
+ // For example:
45
+ // `projects/123456867718/locations/global/keys/b7ff1f9f-8275-410a-94dd-3855ee9b5dd2`
46
+ //
47
+ // NOTE: Key is a global resource; hence the only supported value for
48
+ // location is `global`.
49
+ string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
50
+
51
+ // Output only. Unique id in UUID4 format.
52
+ string uid = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
53
+
54
+ // Human-readable display name of this key that you can modify.
55
+ // The maximum length is 63 characters.
56
+ string display_name = 2;
57
+
58
+ // Output only. An encrypted and signed value held by this key.
59
+ // This field can be accessed only through the `GetKeyString` method.
60
+ string key_string = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
61
+
62
+ // Output only. A timestamp identifying the time this key was originally
63
+ // created.
64
+ google.protobuf.Timestamp create_time = 4
65
+ [(google.api.field_behavior) = OUTPUT_ONLY];
66
+
67
+ // Output only. A timestamp identifying the time this key was last
68
+ // updated.
69
+ google.protobuf.Timestamp update_time = 6
70
+ [(google.api.field_behavior) = OUTPUT_ONLY];
71
+
72
+ // Output only. A timestamp when this key was deleted. If the resource is not
73
+ // deleted, this must be empty.
74
+ google.protobuf.Timestamp delete_time = 7
75
+ [(google.api.field_behavior) = OUTPUT_ONLY];
76
+
77
+ // Annotations is an unstructured key-value map stored with a policy that
78
+ // may be set by external tools to store and retrieve arbitrary metadata.
79
+ // They are not queryable and should be preserved when modifying objects.
80
+ map<string, string> annotations = 8;
81
+
82
+ // Key restrictions.
83
+ Restrictions restrictions = 9;
84
+
85
+ // Output only. A checksum computed by the server based on the current value
86
+ // of the Key resource. This may be sent on update and delete requests to
87
+ // ensure the client has an up-to-date value before proceeding. See
88
+ // https://google.aip.dev/154.
89
+ string etag = 11 [(google.api.field_behavior) = OUTPUT_ONLY];
90
+ }
91
+
92
+ // Describes the restrictions on the key.
93
+ message Restrictions {
94
+ // The websites, IP addresses, Android apps, or iOS apps (the clients) that
95
+ // are allowed to use the key. You can specify only one type of client
96
+ // restrictions per key.
97
+ oneof client_restrictions {
98
+ // The HTTP referrers (websites) that are allowed to use the key.
99
+ BrowserKeyRestrictions browser_key_restrictions = 1;
100
+
101
+ // The IP addresses of callers that are allowed to use the key.
102
+ ServerKeyRestrictions server_key_restrictions = 2;
103
+
104
+ // The Android apps that are allowed to use the key.
105
+ AndroidKeyRestrictions android_key_restrictions = 3;
106
+
107
+ // The iOS apps that are allowed to use the key.
108
+ IosKeyRestrictions ios_key_restrictions = 4;
109
+ }
110
+
111
+ // A restriction for a specific service and optionally one or
112
+ // more specific methods. Requests are allowed if they
113
+ // match any of these restrictions. If no restrictions are
114
+ // specified, all targets are allowed.
115
+ repeated ApiTarget api_targets = 5;
116
+ }
117
+
118
+ // The HTTP referrers (websites) that are allowed to use the key.
119
+ message BrowserKeyRestrictions {
120
+ // A list of regular expressions for the referrer URLs that are allowed
121
+ // to make API calls with this key.
122
+ repeated string allowed_referrers = 1;
123
+ }
124
+
125
+ // The IP addresses of callers that are allowed to use the key.
126
+ message ServerKeyRestrictions {
127
+ // A list of the caller IP addresses that are allowed to make API calls
128
+ // with this key.
129
+ repeated string allowed_ips = 1;
130
+ }
131
+
132
+ // The Android apps that are allowed to use the key.
133
+ message AndroidKeyRestrictions {
134
+ // A list of Android applications that are allowed to make API calls with
135
+ // this key.
136
+ repeated AndroidApplication allowed_applications = 1;
137
+ }
138
+
139
+ // Identifier of an Android application for key use.
140
+ message AndroidApplication {
141
+ // The SHA1 fingerprint of the application. For example, both sha1 formats are
142
+ // acceptable : DA:39:A3:EE:5E:6B:4B:0D:32:55:BF:EF:95:60:18:90:AF:D8:07:09 or
143
+ // DA39A3EE5E6B4B0D3255BFEF95601890AFD80709.
144
+ // Output format is the latter.
145
+ string sha1_fingerprint = 1;
146
+
147
+ // The package name of the application.
148
+ string package_name = 2;
149
+ }
150
+
151
+ // The iOS apps that are allowed to use the key.
152
+ message IosKeyRestrictions {
153
+ // A list of bundle IDs that are allowed when making API calls with this key.
154
+ repeated string allowed_bundle_ids = 1;
155
+ }
156
+
157
+ // A restriction for a specific service and optionally one or multiple
158
+ // specific methods. Both fields are case insensitive.
159
+ message ApiTarget {
160
+ // The service for this restriction. It should be the canonical
161
+ // service name, for example: `translate.googleapis.com`.
162
+ // You can use [`gcloud services list`](/sdk/gcloud/reference/services/list)
163
+ // to get a list of services that are enabled in the project.
164
+ string service = 1;
165
+
166
+ // Optional. List of one or more methods that can be called.
167
+ // If empty, all methods for the service are allowed. A wildcard
168
+ // (*) can be used as the last symbol.
169
+ // Valid examples:
170
+ // `google.cloud.translate.v2.TranslateService.GetSupportedLanguage`
171
+ // `TranslateText`
172
+ // `Get*`
173
+ // `translate.googleapis.com.Get*`
174
+ repeated string methods = 2 [(google.api.field_behavior) = OPTIONAL];
175
+ }