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

Sign up to get free protection for your applications and to get access to all the features.
Files changed (223) hide show
  1. package/package.json +4 -4
  2. package/meta.min.json +0 -7820
  3. package/protos.min.js +0 -2
  4. package/protos.min.js.map +0 -7
  5. package/schema/.snootobuf/deps/buf/validate/expression.proto +0 -92
  6. package/schema/.snootobuf/deps/buf/validate/priv/private.proto +0 -41
  7. package/schema/.snootobuf/deps/buf/validate/validate.proto +0 -4130
  8. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/audit.proto +0 -72
  9. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/auth.proto +0 -49
  10. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/organization.proto +0 -54
  11. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/service.proto +0 -46
  12. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/subscription.proto +0 -72
  13. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/ui.proto +0 -20
  14. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/user.proto +0 -45
  15. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/admin.proto +0 -54
  16. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/delivery.proto +0 -773
  17. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/filter.proto +0 -66
  18. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/firehose.proto +0 -100
  19. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/intake.proto +0 -19
  20. package/schema/.snootobuf/deps/devvit/events/v1alpha/events.proto +0 -446
  21. package/schema/.snootobuf/deps/devvit/gateway/v1alpha/payments.proto +0 -24
  22. package/schema/.snootobuf/deps/devvit/options/options.proto +0 -98
  23. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/commentv2.proto +0 -29
  24. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/flair.proto +0 -25
  25. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/modaction.proto +0 -53
  26. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/modmail.proto +0 -56
  27. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/postv2.proto +0 -107
  28. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/subredditv2.proto +0 -41
  29. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/userv2.proto +0 -23
  30. package/schema/.snootobuf/deps/devvit/triggers/v1alpha/triggers.proto +0 -162
  31. package/schema/.snootobuf/deps/enum/account_gender_category.proto +0 -14
  32. package/schema/.snootobuf/deps/enum/approval_status.proto +0 -15
  33. package/schema/.snootobuf/deps/enum/automated_reporting_level.proto +0 -12
  34. package/schema/.snootobuf/deps/enum/ban_evasion_threshold.proto +0 -13
  35. package/schema/.snootobuf/deps/enum/ban_info_action.proto +0 -12
  36. package/schema/.snootobuf/deps/enum/block_relation_type.proto +0 -11
  37. package/schema/.snootobuf/deps/enum/comment_sort.proto +0 -18
  38. package/schema/.snootobuf/deps/enum/comment_type.proto +0 -11
  39. package/schema/.snootobuf/deps/enum/crowd_control_level.proto +0 -12
  40. package/schema/.snootobuf/deps/enum/discussion_type.proto +0 -10
  41. package/schema/.snootobuf/deps/enum/distinguish_type.proto +0 -14
  42. package/schema/.snootobuf/deps/enum/flair_position.proto +0 -11
  43. package/schema/.snootobuf/deps/enum/hateful_content_threshold.proto +0 -12
  44. package/schema/.snootobuf/deps/enum/link_content_type.proto +0 -11
  45. package/schema/.snootobuf/deps/enum/link_type.proto +0 -11
  46. package/schema/.snootobuf/deps/enum/link_visibility.proto +0 -11
  47. package/schema/.snootobuf/deps/enum/prediction_leaderboard_entry_type.proto +0 -11
  48. package/schema/.snootobuf/deps/enum/promo_layout.proto +0 -11
  49. package/schema/.snootobuf/deps/enum/removed_by_type.proto +0 -18
  50. package/schema/.snootobuf/deps/enum/spam_level.proto +0 -11
  51. package/schema/.snootobuf/deps/enum/subreddit_type.proto +0 -16
  52. package/schema/.snootobuf/deps/enum/verdict.proto +0 -14
  53. package/schema/.snootobuf/deps/enum/vote.proto +0 -12
  54. package/schema/.snootobuf/deps/enum/whitelist_status.proto +0 -17
  55. package/schema/.snootobuf/deps/enum/wiki_edit_mode.proto +0 -12
  56. package/schema/.snootobuf/deps/evaluator/evaluator.proto +0 -203
  57. package/schema/.snootobuf/deps/google/api/annotations.proto +0 -31
  58. package/schema/.snootobuf/deps/google/api/apikeys/v2/apikeys.proto +0 -288
  59. package/schema/.snootobuf/deps/google/api/apikeys/v2/resources.proto +0 -175
  60. package/schema/.snootobuf/deps/google/api/auth.proto +0 -237
  61. package/schema/.snootobuf/deps/google/api/backend.proto +0 -185
  62. package/schema/.snootobuf/deps/google/api/billing.proto +0 -77
  63. package/schema/.snootobuf/deps/google/api/client.proto +0 -431
  64. package/schema/.snootobuf/deps/google/api/cloudquotas/v1/cloudquotas.proto +0 -322
  65. package/schema/.snootobuf/deps/google/api/cloudquotas/v1/resources.proto +0 -315
  66. package/schema/.snootobuf/deps/google/api/config_change.proto +0 -84
  67. package/schema/.snootobuf/deps/google/api/consumer.proto +0 -82
  68. package/schema/.snootobuf/deps/google/api/context.proto +0 -92
  69. package/schema/.snootobuf/deps/google/api/control.proto +0 -41
  70. package/schema/.snootobuf/deps/google/api/distribution.proto +0 -213
  71. package/schema/.snootobuf/deps/google/api/documentation.proto +0 -168
  72. package/schema/.snootobuf/deps/google/api/endpoint.proto +0 -69
  73. package/schema/.snootobuf/deps/google/api/error_reason.proto +0 -589
  74. package/schema/.snootobuf/deps/google/api/expr/conformance/v1alpha1/conformance_service.proto +0 -183
  75. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/checked.proto +0 -343
  76. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/eval.proto +0 -118
  77. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/explain.proto +0 -53
  78. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/syntax.proto +0 -438
  79. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/value.proto +0 -115
  80. package/schema/.snootobuf/deps/google/api/expr/v1beta1/decl.proto +0 -84
  81. package/schema/.snootobuf/deps/google/api/expr/v1beta1/eval.proto +0 -125
  82. package/schema/.snootobuf/deps/google/api/expr/v1beta1/expr.proto +0 -265
  83. package/schema/.snootobuf/deps/google/api/expr/v1beta1/source.proto +0 -62
  84. package/schema/.snootobuf/deps/google/api/expr/v1beta1/value.proto +0 -114
  85. package/schema/.snootobuf/deps/google/api/field_behavior.proto +0 -104
  86. package/schema/.snootobuf/deps/google/api/field_info.proto +0 -106
  87. package/schema/.snootobuf/deps/google/api/http.proto +0 -371
  88. package/schema/.snootobuf/deps/google/api/httpbody.proto +0 -81
  89. package/schema/.snootobuf/deps/google/api/label.proto +0 -48
  90. package/schema/.snootobuf/deps/google/api/launch_stage.proto +0 -72
  91. package/schema/.snootobuf/deps/google/api/log.proto +0 -54
  92. package/schema/.snootobuf/deps/google/api/logging.proto +0 -81
  93. package/schema/.snootobuf/deps/google/api/metric.proto +0 -268
  94. package/schema/.snootobuf/deps/google/api/monitored_resource.proto +0 -130
  95. package/schema/.snootobuf/deps/google/api/monitoring.proto +0 -107
  96. package/schema/.snootobuf/deps/google/api/policy.proto +0 -85
  97. package/schema/.snootobuf/deps/google/api/quota.proto +0 -184
  98. package/schema/.snootobuf/deps/google/api/resource.proto +0 -243
  99. package/schema/.snootobuf/deps/google/api/routing.proto +0 -461
  100. package/schema/.snootobuf/deps/google/api/service.proto +0 -191
  101. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/check_error.proto +0 -124
  102. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/distribution.proto +0 -166
  103. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/http_request.proto +0 -93
  104. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/log_entry.proto +0 -126
  105. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/metric_value.proto +0 -81
  106. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/operation.proto +0 -123
  107. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/quota_controller.proto +0 -245
  108. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/service_controller.proto +0 -260
  109. package/schema/.snootobuf/deps/google/api/servicecontrol/v2/service_controller.proto +0 -196
  110. package/schema/.snootobuf/deps/google/api/servicemanagement/v1/resources.proto +0 -295
  111. package/schema/.snootobuf/deps/google/api/servicemanagement/v1/servicemanager.proto +0 -508
  112. package/schema/.snootobuf/deps/google/api/serviceusage/v1/resources.proto +0 -130
  113. package/schema/.snootobuf/deps/google/api/serviceusage/v1/serviceusage.proto +0 -305
  114. package/schema/.snootobuf/deps/google/api/serviceusage/v1beta1/resources.proto +0 -458
  115. package/schema/.snootobuf/deps/google/api/serviceusage/v1beta1/serviceusage.proto +0 -793
  116. package/schema/.snootobuf/deps/google/api/source_info.proto +0 -31
  117. package/schema/.snootobuf/deps/google/api/system_parameter.proto +0 -96
  118. package/schema/.snootobuf/deps/google/api/usage.proto +0 -96
  119. package/schema/.snootobuf/deps/google/api/visibility.proto +0 -113
  120. package/schema/.snootobuf/deps/google/cloud/extended_operations.proto +0 -150
  121. package/schema/.snootobuf/deps/google/iam/admin/v1/iam.proto +0 -1087
  122. package/schema/.snootobuf/deps/google/iam/v1/iam_policy.proto +0 -145
  123. package/schema/.snootobuf/deps/google/iam/v1/logging/audit_data.proto +0 -34
  124. package/schema/.snootobuf/deps/google/iam/v1/options.proto +0 -41
  125. package/schema/.snootobuf/deps/google/iam/v1/policy.proto +0 -240
  126. package/schema/.snootobuf/deps/google/logging/type/http_request.proto +0 -92
  127. package/schema/.snootobuf/deps/google/logging/type/log_severity.proto +0 -72
  128. package/schema/.snootobuf/deps/google/longrunning/operations.proto +0 -247
  129. package/schema/.snootobuf/deps/google/protobuf/any.proto +0 -158
  130. package/schema/.snootobuf/deps/google/protobuf/api.proto +0 -208
  131. package/schema/.snootobuf/deps/google/protobuf/compiler/plugin.proto +0 -183
  132. package/schema/.snootobuf/deps/google/protobuf/descriptor.proto +0 -921
  133. package/schema/.snootobuf/deps/google/protobuf/duration.proto +0 -116
  134. package/schema/.snootobuf/deps/google/protobuf/empty.proto +0 -51
  135. package/schema/.snootobuf/deps/google/protobuf/field_mask.proto +0 -245
  136. package/schema/.snootobuf/deps/google/protobuf/source_context.proto +0 -48
  137. package/schema/.snootobuf/deps/google/protobuf/struct.proto +0 -95
  138. package/schema/.snootobuf/deps/google/protobuf/timestamp.proto +0 -147
  139. package/schema/.snootobuf/deps/google/protobuf/type.proto +0 -187
  140. package/schema/.snootobuf/deps/google/protobuf/wrappers.proto +0 -123
  141. package/schema/.snootobuf/deps/google/rpc/code.proto +0 -186
  142. package/schema/.snootobuf/deps/google/rpc/context/attribute_context.proto +0 -287
  143. package/schema/.snootobuf/deps/google/rpc/error_details.proto +0 -246
  144. package/schema/.snootobuf/deps/google/rpc/status.proto +0 -47
  145. package/schema/.snootobuf/deps/google/type/calendar_period.proto +0 -57
  146. package/schema/.snootobuf/deps/google/type/color.proto +0 -170
  147. package/schema/.snootobuf/deps/google/type/date.proto +0 -50
  148. package/schema/.snootobuf/deps/google/type/datetime.proto +0 -97
  149. package/schema/.snootobuf/deps/google/type/dayofweek.proto +0 -51
  150. package/schema/.snootobuf/deps/google/type/expr.proto +0 -51
  151. package/schema/.snootobuf/deps/google/type/fraction.proto +0 -34
  152. package/schema/.snootobuf/deps/google/type/latlng.proto +0 -37
  153. package/schema/.snootobuf/deps/google/type/money.proto +0 -43
  154. package/schema/.snootobuf/deps/google/type/month.proto +0 -66
  155. package/schema/.snootobuf/deps/google/type/postal_address.proto +0 -135
  156. package/schema/.snootobuf/deps/google/type/quaternion.proto +0 -95
  157. package/schema/.snootobuf/deps/google/type/timeofday.proto +0 -44
  158. package/schema/.snootobuf/deps/openapi/helper.proto +0 -20
  159. package/schema/.snootobuf/deps/products-api/protos/reddit/xpaymentsplatform/payproducts/v1/currencies.proto +0 -189
  160. package/schema/.snootobuf/deps/products-api/protos/reddit/xpaymentsplatform/payproducts/v1/payproducts.proto +0 -118
  161. package/schema/.snootobuf/deps/reddit/api/metadata/v1/metadata.proto +0 -55
  162. package/schema/.snootobuf/deps/reddit/coreplatform/account/v1/account.proto +0 -579
  163. package/schema/.snootobuf/deps/reddit/coreplatform/account/v1/account_relations.proto +0 -43
  164. package/schema/.snootobuf/deps/reddit/coreplatform/api/metadata/v1/metadata.proto +0 -82
  165. package/schema/.snootobuf/deps/reddit/coreplatform/blocking/v1/user_blocking_service.proto +0 -221
  166. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comment_tree.proto +0 -78
  167. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comment_tree_service.proto +0 -189
  168. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comment_tree_structure.proto +0 -29
  169. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comments.proto +0 -417
  170. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comments_service.proto +0 -72
  171. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/auth.proto +0 -25
  172. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/features.proto +0 -52
  173. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/lang.proto +0 -16
  174. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/legal.proto +0 -20
  175. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/media.proto +0 -149
  176. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/moderation.proto +0 -197
  177. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/safety.proto +0 -116
  178. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/time.proto +0 -25
  179. package/schema/.snootobuf/deps/reddit/coreplatform/domains/v1/domains_metadata_service.proto +0 -101
  180. package/schema/.snootobuf/deps/reddit/coreplatform/grpc_thrift/v1/grpc_thrift_options.proto +0 -34
  181. package/schema/.snootobuf/deps/reddit/coreplatform/links/v1/links.proto +0 -798
  182. package/schema/.snootobuf/deps/reddit/coreplatform/links/v1/links_service.proto +0 -186
  183. package/schema/.snootobuf/deps/reddit/coreplatform/messages/v1/messages.proto +0 -110
  184. package/schema/.snootobuf/deps/reddit/coreplatform/sensitive/v1/wrappers.proto +0 -51
  185. package/schema/.snootobuf/deps/reddit/coreplatform/subreddit/v1/subreddit.proto +0 -1202
  186. package/schema/.snootobuf/deps/reddit/coreplatform/subreddit/v1/subreddit_member_relations.proto +0 -85
  187. package/schema/.snootobuf/deps/reddit/coreplatform/subreddit/v1/subreddit_moderator_service.proto +0 -363
  188. package/schema/.snootobuf/deps/reddit/coreplatform/subreddit/v1/subreddit_service.proto +0 -301
  189. package/schema/.snootobuf/deps/reddit/coreplatform/thing/v0/thing.proto +0 -2869
  190. package/schema/.snootobuf/deps/reddit/devvit/custom_post/v1/custom_post.proto +0 -15
  191. package/schema/.snootobuf/deps/reddit/devvit/custom_post/v1/service.proto +0 -11
  192. package/schema/.snootobuf/deps/reddit/devvit/subreddit/v1/context_action.proto +0 -48
  193. package/schema/.snootobuf/deps/reddit/devvit/subreddit/v1/manifest.proto +0 -70
  194. package/schema/.snootobuf/deps/reddit/devvit/subreddit/v1/service.proto +0 -11
  195. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/acknowledge_order_delivery.proto +0 -17
  196. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/checkout.proto +0 -89
  197. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/common.proto +0 -322
  198. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/delete_products.proto +0 -17
  199. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/events.proto +0 -14
  200. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_batch_products.proto +0 -15
  201. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_gold_balances.proto +0 -48
  202. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_order.proto +0 -31
  203. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_orders.proto +0 -26
  204. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_orders_by_user.proto +0 -15
  205. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_payout_info_batch.proto +0 -52
  206. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_products.proto +0 -23
  207. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_user_profiles.proto +0 -28
  208. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/refund_order.proto +0 -17
  209. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/service.proto +0 -49
  210. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/service_data_compliance.proto +0 -20
  211. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/upsert_products.proto +0 -17
  212. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paygatewaypsps/v1/paygatewaypsps.proto +0 -158
  213. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payorders/v1/payments_data_compliance.proto +0 -18
  214. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payorders/v1/payorders.proto +0 -195
  215. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paypayments/v1/admin.proto +0 -44
  216. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paypayments/v1/ledger.proto +0 -200
  217. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paypayments/v1/payments_data_compliance.proto +0 -18
  218. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paypayments/v1/paypayments.proto +0 -210
  219. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payproducts/v1/currencies.proto +0 -189
  220. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payproducts/v1/payproducts.proto +0 -135
  221. package/schema/.snootobuf/deps/snooron_sources/text_classification/text_classification.proto +0 -29
  222. package/schema/.snootobuf/deps/snooron_sources/v2_event/v2_event.proto +0 -3292
  223. package/schema/.snootobuf/deps/validate/validate.proto +0 -862
@@ -1,301 +0,0 @@
1
- syntax = "proto3";
2
-
3
- package reddit.coreplatform.subreddit.v1;
4
-
5
- import "google/protobuf/field_mask.proto";
6
- import "google/rpc/status.proto";
7
- import "reddit/coreplatform/subreddit/v1/subreddit.proto";
8
- import "validate/validate.proto";
9
-
10
- option go_package = "github.snooguts.net/reddit/thing-api/go/grpc/subreddit/v1;subreddit";
11
- option java_multiple_files = true;
12
- option java_outer_classname = "SubredditServiceProto";
13
- option java_package = "com.reddit.coreplatform.api.subreddit.v1";
14
-
15
- // RPC Service for working with core Subreddit data
16
- service SubredditService {
17
- // Checks whether or not an account has access to view a subreddit
18
- rpc CanAccountViewSubreddit(CanAccountViewSubredditRequest) returns (CanAccountViewSubredditResponse) {
19
- option idempotency_level = NO_SIDE_EFFECTS;
20
- }
21
- // Checks accounts related to a subreddit, e.g. moderators, invited moderators, contributors, or banned
22
- rpc AccountRelationsForSubreddits(AccountRelationsForSubredditsRequest) returns (AccountRelationsForSubredditsResponse) {
23
- option idempotency_level = NO_SIDE_EFFECTS;
24
- }
25
-
26
- // Subscribes a given account to a given subreddit, asynchronous
27
- rpc SubscribeToSubreddit(SubscribeToSubredditRequest) returns (SubscribeToSubredditResponse) {
28
- option idempotency_level = IDEMPOTENT;
29
- }
30
-
31
- // Unsubscribes a given account from a given subreddit, asynchronous
32
- rpc UnsubscribeFromSubreddit(UnsubscribeFromSubredditRequest) returns (UnsubscribeFromSubredditResponse) {
33
- option idempotency_level = IDEMPOTENT;
34
- }
35
-
36
- // Get the list of accounts banned from this subreddit, with metadata
37
- rpc GetBannedUsersBySubreddit(GetBannedUsersBySubredditRequest) returns (GetBannedUsersBySubredditResponse) {
38
- option idempotency_level = NO_SIDE_EFFECTS;
39
- }
40
-
41
- // Get a count of subreddits each member in a list of users is banned from.
42
- // Restricted to admin and service actors
43
- rpc SubredditBanCountForAccountIDs(SubredditBanCountForAccountIDsRequest) returns (SubredditBanCountForAccountIDsResponse) {
44
- option idempotency_level = NO_SIDE_EFFECTS;
45
- }
46
-
47
- // Get a map of Account ID to active ban information for the specified Subreddit and Account IDs
48
- rpc GetBansForAccountIDsForSubreddit(GetBansForAccountIDsForSubredditRequest) returns (GetBansForAccountIDsForSubredditResponse) {
49
- option idempotency_level = NO_SIDE_EFFECTS;
50
- }
51
-
52
- // Retrieve AMA Settings for a given subreddit
53
- rpc GetAMASettings(GetAMASettingsRequest) returns (GetAMASettingsResponse) {
54
- option idempotency_level = NO_SIDE_EFFECTS;
55
- }
56
-
57
- // Update AMA Settings for a given subreddit
58
- rpc UpdateAMASettings(UpdateAMASettingsRequest) returns (UpdateAMASettingsResponse) {
59
- option idempotency_level = IDEMPOTENT;
60
- }
61
- }
62
-
63
- // Request arguments for subreddit access checks.
64
- message CanAccountViewSubredditRequest {
65
- // The account id of the user we are checking visibility permissions against.
66
- // The id must be in a valid `t2_{}` thing id format.
67
- string account_id = 1 [(validate.rules).string = {
68
- pattern: "^t2_[a-zA-Z0-9]+$",
69
- ignore_empty: true,
70
- }];
71
-
72
- // A list of subreddit ids to check if the supplied account id has permission to view
73
- // Each subreddit id must be in a valid `t5_{}` thing id format.
74
- repeated string subreddit_ids = 2 [(validate.rules).repeated = {
75
- min_items: 1,
76
- max_items: 100,
77
- items: {
78
- string: {pattern: "^t5_[a-zA-Z0-9]+$"}
79
- }
80
- }];
81
- }
82
-
83
- // Response payload for a subreddit visibility check.
84
- message CanAccountViewSubredditResponse {
85
- // A list which is a subset of subreddits the requested account has permission to view.
86
- repeated string visible_subreddit_ids = 1;
87
- }
88
-
89
- // Request arguments for a subreddit account relations check.
90
- message AccountRelationsForSubredditsRequest {
91
- // The account ID of the user we're checking account relations for.
92
- // The id must be in a valid `t2_{}` thing id format.
93
- string account_id = 1 [(validate.rules).string = {pattern: "^t2_[a-zA-Z0-9]+$"}];
94
-
95
- // An optional list of relation types to check against for the supplied account and subreddits.
96
- // Each relation type must be a valid SrRelationType enum value, excluding "UNKNOWN".
97
- repeated RelationType relation_types = 2 [(validate.rules).repeated = {
98
- min_items: 0,
99
- max_items: 6,
100
- items: {
101
- enum: {
102
- defined_only: true,
103
- not_in: [0]
104
- }
105
- }
106
- }];
107
-
108
- // A list of subreddit ids to check relations against for the supplied account id.
109
- // Each subreddit id must be in a valid `t5_{}` thing id format.
110
- repeated string subreddit_ids = 3 [(validate.rules).repeated = {
111
- min_items: 1,
112
- max_items: 1000,
113
- items: {
114
- string: {pattern: "^t5_[a-zA-Z0-9]+$"}
115
- }
116
- }];
117
- }
118
-
119
- // Response payload for a subreddit account relations check.
120
- message AccountRelationsForSubredditsResponse {
121
- // A map of subreddit IDs to relations that the user has with that subreddit.
122
- map<string, RelationTypeList> relations = 1;
123
- }
124
-
125
- // Request payload to subscribe to a subreddit
126
- // The account must be able to view a subreddit in order to subscribe to it,
127
- // otherwise, a `FAILED_PRECONDITION` status is returned to the caller.
128
- // If the account is already subscribed to the subreddit, an operation_id is returned in this response too.
129
- message SubscribeToSubredditRequest {
130
- // The account ID of the user requesting to subscribe to the given subreddit.
131
- // The ID must be in a valid `t2_{}` thing ID format.
132
- string account_id = 1 [(validate.rules).string = {pattern: "^t2_[a-zA-Z0-9]+$"}];
133
-
134
- // The subreddit ID being subscribed to.
135
- // The ID must be in a valid `t5_{}` thing ID format.
136
- string subreddit_id = 2 [(validate.rules).string = {pattern: "^t5_[a-zA-Z0-9]+$"}];
137
- }
138
-
139
- // Response payload to subscribe to a subreddit
140
- message SubscribeToSubredditResponse {
141
- // The operation ID, a unique identifier of the subscribe request that the client can use to track progress.
142
- // A valid UUID (via RFC 4122)
143
- string operation_id = 1 [(validate.rules).string.uuid = true];
144
- }
145
-
146
- // Request payload to unsubscribe to a subreddit
147
- // The account must be able to view a subreddit in order to unsubscribe from it,
148
- // otherwise, a `FAILED_PRECONDITION` status is returned to the caller.
149
- // If the account is already unsubscribed from the subreddit, an operation_id is returned in this response too.
150
- message UnsubscribeFromSubredditRequest {
151
- // The account ID of the user requesting to unsubscribe from the given subreddit.
152
- // The id must be in a valid `t2_{}` thing id format.
153
- string account_id = 1 [(validate.rules).string = {pattern: "^t2_[a-zA-Z0-9]+$"}];
154
-
155
- // The subreddit ID being unsubscribed from.
156
- // The ID must be in a valid `t5_{}` thing ID format.
157
- string subreddit_id = 2 [(validate.rules).string = {pattern: "^t5_[a-zA-Z0-9]+$"}];
158
- }
159
-
160
- // Response payload to unsubscribe to a subreddit
161
- message UnsubscribeFromSubredditResponse {
162
- // The operation ID, a unique identifier of the unsubscribe request that the client can use to track progress.
163
- // A valid UUID (via RFC 4122)
164
- string operation_id = 1 [(validate.rules).string.uuid = true];
165
- }
166
-
167
- // Request the list of users that are banned from a given subreddit, with metadata
168
- message GetBannedUsersBySubredditRequest {
169
- // Subreddit identifier to request list of banned users from.
170
- // Specified subreddit id should be a valid thing identifier with t5 prefix.
171
- string subreddit_id = 1 [(validate.rules).string = {pattern: "^t5_[a-zA-Z0-9]+$"}];
172
-
173
- // Cursor for the start index of the result set. When empty, the results start from the first page.
174
- // The sort order is descending, so the first page will be the most recently banned users.
175
- // This API may be updated to allow that sort order to be specified, but the default will remain as descending.
176
- string cursor = 2 [(validate.rules).string = {
177
- ignore_empty: true,
178
- min_len: 1,
179
- }];
180
-
181
- // Optional maximum page size limit (defaults to and capped at 1000).
182
- optional int32 limit = 3 [(validate.rules).int32 = {
183
- gte: 1,
184
- lte: 1000,
185
- }];
186
- }
187
-
188
- // The response message for querying users banned from a subreddit
189
- message GetBannedUsersBySubredditResponse {
190
- // The list of users banned from the subreddit.
191
- repeated BannedUser banned_user = 1;
192
-
193
- // The cursor for the next page of results. If empty, then the end of the result set has been reached.
194
- string cursor = 2;
195
- }
196
-
197
- // Request payload specifying which account IDs to get ban counts for
198
- message SubredditBanCountForAccountIDsRequest {
199
- // A list of up to 100 account IDs to get ban counts for.
200
- // Each account ID must be in a valid `t2_{}` thing ID format.
201
- // Note that this endpoint does not check for an account's existence before querying bans.
202
- repeated string account_ids = 1 [(validate.rules).repeated = {
203
- min_items: 1,
204
- max_items: 100,
205
- items: {
206
- string: {pattern: "^t2_[a-zA-Z0-9]+$"}
207
- }
208
- }];
209
- }
210
-
211
- // The response message for querying subreddit ban counts for account IDs
212
- message SubredditBanCountForAccountIDsResponse {
213
- // A map of account IDs to the number of subreddits each user is banned from.
214
- // If an account ID shows a ban count of 0, that either means no ban relations were found
215
- // or the user does not exist.
216
- map<string, int32> ban_counts = 1;
217
- }
218
-
219
- // Request active ban information for the provided account IDs in the specified subreddit.
220
- message GetBansForAccountIDsForSubredditRequest {
221
- // Subreddit ID to query account bans from.
222
- // Specified subreddit ID should be a valid thing identifier with a t5 prefix.
223
- string subreddit_id = 1 [(validate.rules).string = {pattern: "^t5_[a-zA-Z0-9]+$"}];
224
-
225
- // Account identifiers to request bans against.
226
- // Specified account IDs should be valid thing identifiers with a t2 prefix.
227
- // There should be between 1 and 100 account IDs specified.
228
- repeated string account_ids = 2 [(validate.rules).repeated = {
229
- min_items: 1,
230
- max_items: 100,
231
- items: {
232
- string: {pattern: "^t2_[a-zA-Z0-9]+$"}
233
- }
234
- }];
235
- }
236
-
237
- // A map of all requested account IDs with active ban information for the requested subreddit.
238
- // A request with a non-existent subreddit ID will return an empty map.
239
- message GetBansForAccountIDsForSubredditResponse {
240
- // Map of account ID to active ban information for the requested subreddit.
241
- // A missing account ID indicates the account does not exist or the account is not actively banned from the subreddit.
242
- map<string, BannedUser> bans_by_account_id = 1;
243
- }
244
-
245
- // Request to get AMA settings for a given subreddit
246
- message GetAMASettingsRequest {
247
- // Subreddit Identifier
248
- repeated string subreddit_ids = 1 [(validate.rules).repeated = {
249
- min_items: 1,
250
- max_items: 100,
251
- items: {
252
- string: {pattern: "^t5_[a-zA-Z0-9]+$"}
253
- }
254
- }];
255
- }
256
-
257
- // Response of AMA settings for a given Subreddit
258
- message GetAMASettingsResponse {
259
- // A map of the requested AMA Settings keyed by Subreddit ID.
260
- // Subreddit IDs present in this map will never be present in the errors_by_subreddit_id field.
261
- map<string, AMASettings> ama_settings_by_subreddit_id = 1;
262
-
263
- // A map of errors produced when looking up AMA Settings for given Subreddit IDs.
264
- // Subreddit IDs present in this map will never be present in the ama_settings_by_subreddit_id field.
265
- // The status can be set to NotFound, indicating that we do not have AMASettings set for the indicated subreddit
266
- map<string, google.rpc.Status> errors_by_subreddit_id = 2;
267
- }
268
-
269
- // Request to update AMA Settings for a given subreddit
270
- message UpdateAMASettingsRequest {
271
- // Subreddit Identifier
272
- string subreddit_id = 1 [(validate.rules).string = {pattern: "^t5_[a-zA-Z0-9]+$"}];
273
- // AMA Settings to be updated for the given subreddit
274
- AMASettings ama_settings = 2;
275
- // The list of fields to be updated with the values found in ama_settings.
276
- // This is REQUIRED and an error will be returned if it is not set.
277
- // * is a special value that indicates that ALL fields are to be updated, setting them to their empty value if not set in ama_settings.
278
- google.protobuf.FieldMask update_mask = 3;
279
- }
280
-
281
- // Response from updating AMA settings for a subreddit
282
- message UpdateAMASettingsResponse {}
283
-
284
- // This message describes AMA settings for a Subreddit
285
- message AMASettings {
286
- // List of permission settings describing which groups of users can create AMA posts on a subreddit
287
- // An empty list indicates that there are no Permissions for this subreddit, indicating that no one can make AMA posts
288
- repeated PostPermissions post_permissions = 1;
289
-
290
- // Enum describing which types of user can create AMA posts on a subreddit
291
- enum PostPermissions {
292
- // Default value, should not be used directly
293
- POST_PERMISSIONS_UNSPECIFIED = 0;
294
- // Logged-in users can create AMA posts
295
- POST_PERMISSIONS_USERS = 1;
296
- // Contributors can create AMA posts
297
- POST_PERMISSIONS_CONTRIBUTORS = 2;
298
- // Mods can create AMA posts
299
- POST_PERMISSIONS_MODS = 3;
300
- }
301
- }