@devvit/protos 0.11.6-next-2025-01-28-ba7ef7fe2.0 → 0.11.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (241) hide show
  1. package/package.json +4 -4
  2. package/schema/devvit/plugin/buildpack/buildpack_common.proto +1 -6
  3. package/schema/snootobuf.devenv.lock +102 -210
  4. package/schema/snootobuf.lock +102 -210
  5. package/schema/snootobuf.redditapi.lock +102 -210
  6. package/schema/snootobuf.ts.lock +102 -210
  7. package/types/devvit/dev_portal/dev_portal.d.ts +0 -2
  8. package/types/devvit/dev_portal/dev_portal.d.ts.map +1 -1
  9. package/types/devvit/plugin/builder/builder.d.ts +0 -4
  10. package/types/devvit/plugin/builder/builder.d.ts.map +1 -1
  11. package/types/devvit/plugin/buildpack/buildpack.d.ts +0 -8
  12. package/types/devvit/plugin/buildpack/buildpack.d.ts.map +1 -1
  13. package/types/devvit/plugin/buildpack/buildpack_common.d.ts +0 -3
  14. package/types/devvit/plugin/buildpack/buildpack_common.d.ts.map +1 -1
  15. package/types/devvit/plugin/buildpack/buildpack_common.js +1 -37
  16. package/types/devvit/plugin/linker/linker.d.ts +0 -2
  17. package/types/devvit/plugin/linker/linker.d.ts.map +1 -1
  18. package/types/devvit/plugin/linker/resolver.d.ts +0 -2
  19. package/types/devvit/plugin/linker/resolver.d.ts.map +1 -1
  20. package/meta.min.json +0 -7820
  21. package/protos.min.js +0 -2
  22. package/protos.min.js.map +0 -7
  23. package/schema/.snootobuf/deps/buf/validate/expression.proto +0 -92
  24. package/schema/.snootobuf/deps/buf/validate/priv/private.proto +0 -41
  25. package/schema/.snootobuf/deps/buf/validate/validate.proto +0 -4130
  26. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/audit.proto +0 -72
  27. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/auth.proto +0 -49
  28. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/organization.proto +0 -54
  29. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/service.proto +0 -46
  30. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/subscription.proto +0 -72
  31. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/ui.proto +0 -20
  32. package/schema/.snootobuf/deps/devvit/data/api/admin/v1alpha/user.proto +0 -45
  33. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/admin.proto +0 -54
  34. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/delivery.proto +0 -773
  35. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/filter.proto +0 -66
  36. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/firehose.proto +0 -100
  37. package/schema/.snootobuf/deps/devvit/data/api/v1alpha/intake.proto +0 -19
  38. package/schema/.snootobuf/deps/devvit/events/v1alpha/events.proto +0 -446
  39. package/schema/.snootobuf/deps/devvit/gateway/v1alpha/payments.proto +0 -24
  40. package/schema/.snootobuf/deps/devvit/options/options.proto +0 -98
  41. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/commentv2.proto +0 -29
  42. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/flair.proto +0 -25
  43. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/modaction.proto +0 -53
  44. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/modmail.proto +0 -56
  45. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/postv2.proto +0 -107
  46. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/subredditv2.proto +0 -41
  47. package/schema/.snootobuf/deps/devvit/reddit/v2alpha/userv2.proto +0 -23
  48. package/schema/.snootobuf/deps/devvit/triggers/v1alpha/triggers.proto +0 -162
  49. package/schema/.snootobuf/deps/enum/account_gender_category.proto +0 -14
  50. package/schema/.snootobuf/deps/enum/approval_status.proto +0 -15
  51. package/schema/.snootobuf/deps/enum/automated_reporting_level.proto +0 -12
  52. package/schema/.snootobuf/deps/enum/ban_evasion_threshold.proto +0 -13
  53. package/schema/.snootobuf/deps/enum/ban_info_action.proto +0 -12
  54. package/schema/.snootobuf/deps/enum/block_relation_type.proto +0 -11
  55. package/schema/.snootobuf/deps/enum/comment_sort.proto +0 -18
  56. package/schema/.snootobuf/deps/enum/comment_type.proto +0 -11
  57. package/schema/.snootobuf/deps/enum/crowd_control_level.proto +0 -12
  58. package/schema/.snootobuf/deps/enum/discussion_type.proto +0 -10
  59. package/schema/.snootobuf/deps/enum/distinguish_type.proto +0 -14
  60. package/schema/.snootobuf/deps/enum/flair_position.proto +0 -11
  61. package/schema/.snootobuf/deps/enum/hateful_content_threshold.proto +0 -12
  62. package/schema/.snootobuf/deps/enum/link_content_type.proto +0 -11
  63. package/schema/.snootobuf/deps/enum/link_type.proto +0 -11
  64. package/schema/.snootobuf/deps/enum/link_visibility.proto +0 -11
  65. package/schema/.snootobuf/deps/enum/prediction_leaderboard_entry_type.proto +0 -11
  66. package/schema/.snootobuf/deps/enum/promo_layout.proto +0 -11
  67. package/schema/.snootobuf/deps/enum/removed_by_type.proto +0 -18
  68. package/schema/.snootobuf/deps/enum/spam_level.proto +0 -11
  69. package/schema/.snootobuf/deps/enum/subreddit_type.proto +0 -16
  70. package/schema/.snootobuf/deps/enum/verdict.proto +0 -14
  71. package/schema/.snootobuf/deps/enum/vote.proto +0 -12
  72. package/schema/.snootobuf/deps/enum/whitelist_status.proto +0 -17
  73. package/schema/.snootobuf/deps/enum/wiki_edit_mode.proto +0 -12
  74. package/schema/.snootobuf/deps/evaluator/evaluator.proto +0 -203
  75. package/schema/.snootobuf/deps/google/api/annotations.proto +0 -31
  76. package/schema/.snootobuf/deps/google/api/apikeys/v2/apikeys.proto +0 -288
  77. package/schema/.snootobuf/deps/google/api/apikeys/v2/resources.proto +0 -175
  78. package/schema/.snootobuf/deps/google/api/auth.proto +0 -237
  79. package/schema/.snootobuf/deps/google/api/backend.proto +0 -185
  80. package/schema/.snootobuf/deps/google/api/billing.proto +0 -77
  81. package/schema/.snootobuf/deps/google/api/client.proto +0 -431
  82. package/schema/.snootobuf/deps/google/api/cloudquotas/v1/cloudquotas.proto +0 -322
  83. package/schema/.snootobuf/deps/google/api/cloudquotas/v1/resources.proto +0 -315
  84. package/schema/.snootobuf/deps/google/api/config_change.proto +0 -84
  85. package/schema/.snootobuf/deps/google/api/consumer.proto +0 -82
  86. package/schema/.snootobuf/deps/google/api/context.proto +0 -92
  87. package/schema/.snootobuf/deps/google/api/control.proto +0 -41
  88. package/schema/.snootobuf/deps/google/api/distribution.proto +0 -213
  89. package/schema/.snootobuf/deps/google/api/documentation.proto +0 -168
  90. package/schema/.snootobuf/deps/google/api/endpoint.proto +0 -69
  91. package/schema/.snootobuf/deps/google/api/error_reason.proto +0 -589
  92. package/schema/.snootobuf/deps/google/api/expr/conformance/v1alpha1/conformance_service.proto +0 -183
  93. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/checked.proto +0 -343
  94. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/eval.proto +0 -118
  95. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/explain.proto +0 -53
  96. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/syntax.proto +0 -438
  97. package/schema/.snootobuf/deps/google/api/expr/v1alpha1/value.proto +0 -115
  98. package/schema/.snootobuf/deps/google/api/expr/v1beta1/decl.proto +0 -84
  99. package/schema/.snootobuf/deps/google/api/expr/v1beta1/eval.proto +0 -125
  100. package/schema/.snootobuf/deps/google/api/expr/v1beta1/expr.proto +0 -265
  101. package/schema/.snootobuf/deps/google/api/expr/v1beta1/source.proto +0 -62
  102. package/schema/.snootobuf/deps/google/api/expr/v1beta1/value.proto +0 -114
  103. package/schema/.snootobuf/deps/google/api/field_behavior.proto +0 -104
  104. package/schema/.snootobuf/deps/google/api/field_info.proto +0 -106
  105. package/schema/.snootobuf/deps/google/api/http.proto +0 -371
  106. package/schema/.snootobuf/deps/google/api/httpbody.proto +0 -81
  107. package/schema/.snootobuf/deps/google/api/label.proto +0 -48
  108. package/schema/.snootobuf/deps/google/api/launch_stage.proto +0 -72
  109. package/schema/.snootobuf/deps/google/api/log.proto +0 -54
  110. package/schema/.snootobuf/deps/google/api/logging.proto +0 -81
  111. package/schema/.snootobuf/deps/google/api/metric.proto +0 -268
  112. package/schema/.snootobuf/deps/google/api/monitored_resource.proto +0 -130
  113. package/schema/.snootobuf/deps/google/api/monitoring.proto +0 -107
  114. package/schema/.snootobuf/deps/google/api/policy.proto +0 -85
  115. package/schema/.snootobuf/deps/google/api/quota.proto +0 -184
  116. package/schema/.snootobuf/deps/google/api/resource.proto +0 -243
  117. package/schema/.snootobuf/deps/google/api/routing.proto +0 -461
  118. package/schema/.snootobuf/deps/google/api/service.proto +0 -191
  119. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/check_error.proto +0 -124
  120. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/distribution.proto +0 -166
  121. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/http_request.proto +0 -93
  122. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/log_entry.proto +0 -126
  123. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/metric_value.proto +0 -81
  124. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/operation.proto +0 -123
  125. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/quota_controller.proto +0 -245
  126. package/schema/.snootobuf/deps/google/api/servicecontrol/v1/service_controller.proto +0 -260
  127. package/schema/.snootobuf/deps/google/api/servicecontrol/v2/service_controller.proto +0 -196
  128. package/schema/.snootobuf/deps/google/api/servicemanagement/v1/resources.proto +0 -295
  129. package/schema/.snootobuf/deps/google/api/servicemanagement/v1/servicemanager.proto +0 -508
  130. package/schema/.snootobuf/deps/google/api/serviceusage/v1/resources.proto +0 -130
  131. package/schema/.snootobuf/deps/google/api/serviceusage/v1/serviceusage.proto +0 -305
  132. package/schema/.snootobuf/deps/google/api/serviceusage/v1beta1/resources.proto +0 -458
  133. package/schema/.snootobuf/deps/google/api/serviceusage/v1beta1/serviceusage.proto +0 -793
  134. package/schema/.snootobuf/deps/google/api/source_info.proto +0 -31
  135. package/schema/.snootobuf/deps/google/api/system_parameter.proto +0 -96
  136. package/schema/.snootobuf/deps/google/api/usage.proto +0 -96
  137. package/schema/.snootobuf/deps/google/api/visibility.proto +0 -113
  138. package/schema/.snootobuf/deps/google/cloud/extended_operations.proto +0 -150
  139. package/schema/.snootobuf/deps/google/iam/admin/v1/iam.proto +0 -1087
  140. package/schema/.snootobuf/deps/google/iam/v1/iam_policy.proto +0 -145
  141. package/schema/.snootobuf/deps/google/iam/v1/logging/audit_data.proto +0 -34
  142. package/schema/.snootobuf/deps/google/iam/v1/options.proto +0 -41
  143. package/schema/.snootobuf/deps/google/iam/v1/policy.proto +0 -240
  144. package/schema/.snootobuf/deps/google/logging/type/http_request.proto +0 -92
  145. package/schema/.snootobuf/deps/google/logging/type/log_severity.proto +0 -72
  146. package/schema/.snootobuf/deps/google/longrunning/operations.proto +0 -247
  147. package/schema/.snootobuf/deps/google/protobuf/any.proto +0 -158
  148. package/schema/.snootobuf/deps/google/protobuf/api.proto +0 -208
  149. package/schema/.snootobuf/deps/google/protobuf/compiler/plugin.proto +0 -183
  150. package/schema/.snootobuf/deps/google/protobuf/descriptor.proto +0 -921
  151. package/schema/.snootobuf/deps/google/protobuf/duration.proto +0 -116
  152. package/schema/.snootobuf/deps/google/protobuf/empty.proto +0 -51
  153. package/schema/.snootobuf/deps/google/protobuf/field_mask.proto +0 -245
  154. package/schema/.snootobuf/deps/google/protobuf/source_context.proto +0 -48
  155. package/schema/.snootobuf/deps/google/protobuf/struct.proto +0 -95
  156. package/schema/.snootobuf/deps/google/protobuf/timestamp.proto +0 -147
  157. package/schema/.snootobuf/deps/google/protobuf/type.proto +0 -187
  158. package/schema/.snootobuf/deps/google/protobuf/wrappers.proto +0 -123
  159. package/schema/.snootobuf/deps/google/rpc/code.proto +0 -186
  160. package/schema/.snootobuf/deps/google/rpc/context/attribute_context.proto +0 -287
  161. package/schema/.snootobuf/deps/google/rpc/error_details.proto +0 -246
  162. package/schema/.snootobuf/deps/google/rpc/status.proto +0 -47
  163. package/schema/.snootobuf/deps/google/type/calendar_period.proto +0 -57
  164. package/schema/.snootobuf/deps/google/type/color.proto +0 -170
  165. package/schema/.snootobuf/deps/google/type/date.proto +0 -50
  166. package/schema/.snootobuf/deps/google/type/datetime.proto +0 -97
  167. package/schema/.snootobuf/deps/google/type/dayofweek.proto +0 -51
  168. package/schema/.snootobuf/deps/google/type/expr.proto +0 -51
  169. package/schema/.snootobuf/deps/google/type/fraction.proto +0 -34
  170. package/schema/.snootobuf/deps/google/type/latlng.proto +0 -37
  171. package/schema/.snootobuf/deps/google/type/money.proto +0 -43
  172. package/schema/.snootobuf/deps/google/type/month.proto +0 -66
  173. package/schema/.snootobuf/deps/google/type/postal_address.proto +0 -135
  174. package/schema/.snootobuf/deps/google/type/quaternion.proto +0 -95
  175. package/schema/.snootobuf/deps/google/type/timeofday.proto +0 -44
  176. package/schema/.snootobuf/deps/openapi/helper.proto +0 -20
  177. package/schema/.snootobuf/deps/products-api/protos/reddit/xpaymentsplatform/payproducts/v1/currencies.proto +0 -189
  178. package/schema/.snootobuf/deps/products-api/protos/reddit/xpaymentsplatform/payproducts/v1/payproducts.proto +0 -118
  179. package/schema/.snootobuf/deps/reddit/api/metadata/v1/metadata.proto +0 -55
  180. package/schema/.snootobuf/deps/reddit/coreplatform/account/v1/account.proto +0 -579
  181. package/schema/.snootobuf/deps/reddit/coreplatform/account/v1/account_relations.proto +0 -43
  182. package/schema/.snootobuf/deps/reddit/coreplatform/api/metadata/v1/metadata.proto +0 -82
  183. package/schema/.snootobuf/deps/reddit/coreplatform/blocking/v1/user_blocking_service.proto +0 -221
  184. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comment_tree.proto +0 -78
  185. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comment_tree_service.proto +0 -189
  186. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comment_tree_structure.proto +0 -29
  187. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comments.proto +0 -417
  188. package/schema/.snootobuf/deps/reddit/coreplatform/comments/v1/comments_service.proto +0 -72
  189. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/auth.proto +0 -25
  190. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/features.proto +0 -52
  191. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/lang.proto +0 -16
  192. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/legal.proto +0 -20
  193. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/media.proto +0 -149
  194. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/moderation.proto +0 -197
  195. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/safety.proto +0 -116
  196. package/schema/.snootobuf/deps/reddit/coreplatform/common/v1/time.proto +0 -25
  197. package/schema/.snootobuf/deps/reddit/coreplatform/domains/v1/domains_metadata_service.proto +0 -101
  198. package/schema/.snootobuf/deps/reddit/coreplatform/grpc_thrift/v1/grpc_thrift_options.proto +0 -34
  199. package/schema/.snootobuf/deps/reddit/coreplatform/links/v1/links.proto +0 -798
  200. package/schema/.snootobuf/deps/reddit/coreplatform/links/v1/links_service.proto +0 -186
  201. package/schema/.snootobuf/deps/reddit/coreplatform/messages/v1/messages.proto +0 -110
  202. package/schema/.snootobuf/deps/reddit/coreplatform/sensitive/v1/wrappers.proto +0 -51
  203. package/schema/.snootobuf/deps/reddit/coreplatform/subreddit/v1/subreddit.proto +0 -1202
  204. package/schema/.snootobuf/deps/reddit/coreplatform/subreddit/v1/subreddit_member_relations.proto +0 -85
  205. package/schema/.snootobuf/deps/reddit/coreplatform/subreddit/v1/subreddit_moderator_service.proto +0 -363
  206. package/schema/.snootobuf/deps/reddit/coreplatform/subreddit/v1/subreddit_service.proto +0 -301
  207. package/schema/.snootobuf/deps/reddit/coreplatform/thing/v0/thing.proto +0 -2869
  208. package/schema/.snootobuf/deps/reddit/devvit/custom_post/v1/custom_post.proto +0 -15
  209. package/schema/.snootobuf/deps/reddit/devvit/custom_post/v1/service.proto +0 -11
  210. package/schema/.snootobuf/deps/reddit/devvit/subreddit/v1/context_action.proto +0 -48
  211. package/schema/.snootobuf/deps/reddit/devvit/subreddit/v1/manifest.proto +0 -70
  212. package/schema/.snootobuf/deps/reddit/devvit/subreddit/v1/service.proto +0 -11
  213. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/acknowledge_order_delivery.proto +0 -17
  214. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/checkout.proto +0 -89
  215. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/common.proto +0 -322
  216. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/delete_products.proto +0 -17
  217. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/events.proto +0 -14
  218. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_batch_products.proto +0 -15
  219. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_gold_balances.proto +0 -48
  220. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_order.proto +0 -31
  221. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_orders.proto +0 -26
  222. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_orders_by_user.proto +0 -15
  223. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_payout_info_batch.proto +0 -52
  224. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_products.proto +0 -23
  225. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/get_user_profiles.proto +0 -28
  226. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/refund_order.proto +0 -17
  227. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/service.proto +0 -49
  228. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/service_data_compliance.proto +0 -20
  229. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payapi/v1/upsert_products.proto +0 -17
  230. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paygatewaypsps/v1/paygatewaypsps.proto +0 -158
  231. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payorders/v1/payments_data_compliance.proto +0 -18
  232. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payorders/v1/payorders.proto +0 -195
  233. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paypayments/v1/admin.proto +0 -44
  234. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paypayments/v1/ledger.proto +0 -200
  235. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paypayments/v1/payments_data_compliance.proto +0 -18
  236. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/paypayments/v1/paypayments.proto +0 -210
  237. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payproducts/v1/currencies.proto +0 -189
  238. package/schema/.snootobuf/deps/reddit/xpaymentsplatform/payproducts/v1/payproducts.proto +0 -135
  239. package/schema/.snootobuf/deps/snooron_sources/text_classification/text_classification.proto +0 -29
  240. package/schema/.snootobuf/deps/snooron_sources/v2_event/v2_event.proto +0 -3292
  241. package/schema/.snootobuf/deps/validate/validate.proto +0 -862
@@ -1,85 +0,0 @@
1
- syntax = "proto3";
2
-
3
- package reddit.coreplatform.subreddit.v1;
4
-
5
- import "google/protobuf/descriptor.proto";
6
- import "google/protobuf/timestamp.proto";
7
-
8
- option go_package = "github.snooguts.net/reddit/thing-api/go/grpc/subreddit/v1;subreddit";
9
- option java_multiple_files = true;
10
- option java_outer_classname = "SubredditMemberRelationsProto";
11
- option java_package = "com.reddit.coreplatform.api.subreddit.v1";
12
-
13
- // This message describes the relationship between a subreddit and an account with permissions to moderate it.
14
- message ModeratorRelation {
15
- // A message representing the moderator permissions an account has on the moderating subreddit.
16
- message Permissions {
17
- // Superuser for the subreddit, when true the user has all moderator capabilities.
18
- bool all = 1;
19
-
20
- // Manage Users, when true, the moderator can approve submitters and ban and mute users.
21
- bool manage_access = 2;
22
-
23
- // Manage Settings, when true, the moderator can manage community settings, appearance, emojis, rules, and AutoMod.
24
- bool manage_config = 3;
25
-
26
- // Manage Flair, when true, the moderator can create and manage user and post flair.
27
- bool manage_flair = 4;
28
-
29
- // Manage Mail, when true, the moderator can read and respond to mod-mail and mute users.
30
- bool manage_mail = 5;
31
-
32
- // Manage Posts and Comments, when true, the moderator can access queues, take action on content,
33
- // and manage collections and events.
34
- bool manage_posts = 6;
35
-
36
- // Manage Wiki Pages, when true, the moderator can create and manage wiki pages and AutoMod.
37
- bool manage_wiki = 7;
38
-
39
- // Manage Chats, when true, the moderator can create and manage chats, set up filters and rate limits, and block domains.
40
- bool manage_chat_config = 8;
41
-
42
- // Monitor Chats, when true, the moderator can remove messages, remove users, and lock chats.
43
- bool monitor_chat = 9;
44
-
45
- // Manage Channels, when true, a moderator can add, edit and remove subreddit channels.
46
- bool manage_channels = 10;
47
-
48
- // Manage Community Chat, when set to true, the moderator can moderate community chat channels.
49
- bool manage_community_chat = 11;
50
- }
51
-
52
- // The base36 identifier of the subreddit moderator relationship prefixed with rb_.
53
- string id = 1;
54
-
55
- // The t5 id of the subreddit that the moderator relation is for.
56
- string subreddit_id = 2;
57
-
58
- // The t2 id of the account moderating the subreddit.
59
- string account_id = 3;
60
-
61
- // The date the moderator joined the mod team in UTC.
62
- google.protobuf.Timestamp join_date = 4;
63
-
64
- // The rank of this moderator vs other moderators. Lower outranks higher.
65
- // Ranks across moderators of a subreddit aren't sequential.
66
- int64 rank = 5;
67
-
68
- // An set of moderator permission and restrictions.
69
- Permissions permissions = 6;
70
- }
71
-
72
- // This message describes the relationship between a subreddit and a contributor to the subreddit.
73
- message ContributorRelation {
74
- // The base36 identifier of the subreddit contributor relationship prefixed with rb_.
75
- string id = 1;
76
-
77
- // The t5 id of the subreddit that the account is a contributor for.
78
- string subreddit_id = 2;
79
-
80
- // The t2 id of the account contributing to the subreddit.
81
- string account_id = 3;
82
-
83
- // The date the account was added as a contributor to the subreddit in UTC.
84
- google.protobuf.Timestamp join_date = 4;
85
- }
@@ -1,363 +0,0 @@
1
- syntax = "proto3";
2
-
3
- package reddit.coreplatform.subreddit.v1;
4
-
5
- import "reddit/coreplatform/subreddit/v1/subreddit.proto";
6
- import "validate/validate.proto";
7
-
8
- option go_package = "github.snooguts.net/reddit/thing-api/go/grpc/subreddit/v1;subreddit";
9
- option java_multiple_files = true;
10
- option java_outer_classname = "SubredditModeratorServiceProto";
11
- option java_package = "com.reddit.coreplatform.api.subreddit.v1";
12
-
13
- // RPC Service for working with Subreddit moderators
14
- service SubredditModeratorService {
15
- // Retrieve moderated subreddits for a given account
16
- rpc GetModeratedSubreddits(GetModeratedSubredditsRequest) returns (GetModeratedSubredditsResponse) {
17
- option idempotency_level = NO_SIDE_EFFECTS;
18
- }
19
-
20
- // Retrieve moderators for a given subreddit
21
- rpc GetModeratorsBySubreddit(GetModeratorsBySubredditRequest) returns (GetModeratorsBySubredditResponse) {
22
- option idempotency_level = NO_SIDE_EFFECTS;
23
- }
24
-
25
- // Retrieve visible moderators for a given subreddit that filters out any mods on the list of invisible mods
26
- // https://github.snooguts.net/reddit/reddit-private/blob/ee159f8e2a9d9235c48001c9dcd8fc32b0628339/production.ini#L1778-L1792
27
- rpc GetVisibleModeratorsBySubreddit(GetVisibleModeratorsBySubredditRequest) returns (GetVisibleModeratorsBySubredditResponse) {
28
- option idempotency_level = IDEMPOTENT;
29
- }
30
-
31
- // Apply a new order of moderators for a given subreddit
32
- rpc ReorderModerators(ReorderModeratorsRequest) returns (ReorderModeratorsResponse) {
33
- option idempotency_level = IDEMPOTENT;
34
- }
35
-
36
- // CreateModerator adds a new user as subreddit moderator.
37
- // The moderator has all permissions by default; to add specific permissions, use UpdateModeratorPermissions.
38
- // Returns an AlreadyExists error if the moderator relation already exists.
39
- //
40
- // This method is asynchronous, and ordering is guaranteed by subreddit ID. The status of this operation
41
- // can be checked by calling Cloudroutine's PollOperationStatus with the returned operation ID.
42
- //
43
- // Note: this only creates the relation record itself and does not perform any verification.
44
- rpc CreateModerator(CreateModeratorRequest) returns (CreateModeratorResponse) {
45
- option idempotency_level = IDEMPOTENT;
46
- }
47
-
48
- // DeleteModerator removes a user as subreddit moderator.
49
- // Returns a NotFound error if the moderator relation does not exist.
50
- //
51
- // This method is asynchronous, and ordering is guaranteed by subreddit ID. The status of this operation
52
- // can be checked by calling Cloudroutine's PollOperationStatus with the returned operation ID.
53
- //
54
- // Note: this only removes the relation record itself and does not perform any verification.
55
- rpc DeleteModerator(DeleteModeratorRequest) returns (DeleteModeratorResponse) {
56
- option idempotency_level = IDEMPOTENT;
57
- }
58
-
59
- // UpdateModeratorPermissions restricts a given moderator to the specified moderator permissions.
60
- // Returns a NotFound error if the moderator relation does not exist.
61
- //
62
- // This method is asynchronous, and ordering is guaranteed by subreddit ID. The status of this operation
63
- // can be checked by calling Cloudroutine's PollOperationStatus with the returned operation ID.
64
- //
65
- // Note: this only updates the permissions record itself and does not perform any verification.
66
- rpc UpdateModeratorPermissions(UpdateModeratorPermissionsRequest) returns (UpdateModeratorPermissionsResponse) {
67
- option idempotency_level = IDEMPOTENT;
68
- }
69
-
70
- // CreateModeratorInvite adds a new user as being invited to be a subreddit moderator.
71
- // If the invite is accepted, the invite record is deleted and a moderator relation is created in its place.
72
- // Returns an AlreadyExists error if the moderator invite relation already exists.
73
- //
74
- // This method is asynchronous and ordering is guaranteed by subreddit ID. The status of this operation
75
- // can be checked by calling Cloudroutine's PollOperationStatus with the returned operation ID.
76
- //
77
- // Note: this only creates the relation record itself and does not perform any verification or sending out of invites.
78
- rpc CreateModeratorInvite(CreateModeratorInviteRequest) returns (CreateModeratorInviteResponse) {
79
- option idempotency_level = IDEMPOTENT;
80
- }
81
-
82
- // DeleteModeratorInvite removes a user from being invited to be a subreddit moderator.
83
- // Returns a NotFound error if no moderator invite relation exists.
84
- //
85
- // This method is asynchronous, and ordering is guaranteed by subreddit ID. The status of this operation
86
- // can be checked by calling Cloudroutine's PollOperationStatus with the returned operator ID.
87
- //
88
- // Note: this only creates the relation record itself and does not perform any verification.
89
- rpc DeleteModeratorInvite(DeleteModeratorInviteRequest) returns (DeleteModeratorInviteResponse) {
90
- option idempotency_level = IDEMPOTENT;
91
- }
92
- }
93
-
94
- // Request to get moderated subreddits for a given account
95
- // The request must be made with a service account edge context or a user edge context matching the provided account.
96
- message GetModeratedSubredditsRequest {
97
- // Account identifier to request list of moderators for. Not necessary when requesting as a service.
98
- // Specified account id should be a valid thing identifier with t2 prefix.
99
- string account_id = 1 [(validate.rules).string = {pattern: "^t2_[a-zA-Z0-9]+$"}];
100
-
101
- // Optional flag to hydrate the response subreddits with permissions.
102
- bool include_permissions = 2;
103
-
104
- // Cursor for the start index of the result set. When empty, the results start from the first page.
105
- // The sort order is descending, so the first page will be the most recently added moderated subreddits.
106
- // This API may be updated to allow that sort order to be specified, but the default will remain as descending.
107
- string cursor = 3 [(validate.rules).string = {
108
- ignore_empty: true,
109
- min_len: 1,
110
- }];
111
-
112
- // Maximum page size limit (defaults to and capped at 1000).
113
- int32 limit = 4 [(validate.rules).int32 = {
114
- ignore_empty: true,
115
- gte: 1,
116
- lte: 1000,
117
- }];
118
- }
119
-
120
- // Response of moderated subreddits for a given account
121
- // If the provided account is not a moderator of any subreddits, including if it is not a valid account,
122
- // an empty map will be returned in the response.
123
- message GetModeratedSubredditsResponse {
124
- // A map of moderated subreddits to permissions for the given account. Permissions will not be hydrated unless requested.
125
- map<string, ModeratorPermissions> subreddit_id_to_permissions = 1;
126
-
127
- // The cursor for the next page of results. If empty, then the end of the result set has been reached.
128
- // Cursor format is subject to change.
129
- string cursor = 2;
130
- }
131
-
132
- // Request to get moderators for a given subreddit
133
- // If the request is made on behalf of a user, only subreddits viewable by the user will be returned in the response.
134
- message GetModeratorsBySubredditRequest {
135
- // Account identifier to request list of moderators from. Not necessary when requesting as a service.
136
- // Specified account id should be a valid thing identifier with t2 prefix.
137
- string account_id = 1 [(validate.rules).string = {pattern: "^t2_[a-zA-Z0-9]+$"}];
138
-
139
- // Subreddit identifier to request list of moderators from.
140
- // Specified subreddit id should be a valid thing identifier with t5 prefix.
141
- string subreddit_id = 2 [(validate.rules).string = {pattern: "^t5_[a-zA-Z0-9]+$"}];
142
-
143
- // Optional flag to hydrate the response moderators with permissions.
144
- bool include_permissions = 3;
145
-
146
- // Cursor for the start index of the result set. When empty, the results start from the first page.
147
- // The sort order is descending, so the first page will be the most recently added moderators.
148
- // This API may be updated to allow that sort order to be specified, but the default will remain as descending.
149
- string cursor = 4 [(validate.rules).string = {
150
- ignore_empty: true,
151
- min_len: 1,
152
- }];
153
-
154
- // Maximum page size limit (defaults to and capped at 1000).
155
- int32 limit = 5 [(validate.rules).int32 = {
156
- ignore_empty: true,
157
- gte: 1,
158
- lte: 1000,
159
- }];
160
- }
161
-
162
- // Response of moderators for a given subreddit
163
- // If the provided subreddit has no moderators, including if it is not a valid subreddit,
164
- // an empty array and map will be returned in the response.
165
- message GetModeratorsBySubredditResponse {
166
- // A list of moderators for the given subreddit.
167
- repeated Moderator moderators = 1;
168
-
169
- // A map of moderator id to permissions for the given subreddit. Every moderator in the original list
170
- // will have an entry in this map. Permissions will not be hydrated unless requested.
171
- map<string, ModeratorPermissions> moderator_id_to_permissions = 2;
172
-
173
- // The cursor for the next page of results. If empty, then the end of the result set has been reached.
174
- // Cursor format is subject to change.
175
- string cursor = 3;
176
- }
177
-
178
- // Request to get moderators for a given subreddit that filters out any mods on the list of invisible mods
179
- // https://github.snooguts.net/reddit/reddit-private/blob/ee159f8e2a9d9235c48001c9dcd8fc32b0628339/production.ini#L1778-L1792
180
- //
181
- // If the request is made on behalf of a user, only subreddits viewable by the user will be returned in the response.
182
- message GetVisibleModeratorsBySubredditRequest {
183
- // Account identifier to request list of moderators from. Not necessary when requesting as a service.
184
- // Specified account id should be a valid thing identifier with t2 prefix.
185
- string account_id = 1 [(validate.rules).string = {
186
- pattern: "^t2_[a-zA-Z0-9]+$",
187
- ignore_empty: true,
188
- }];
189
-
190
- // Subreddit identifier to request list of moderators from.
191
- // Specified subreddit id should be a valid thing identifier with t5 prefix.
192
- string subreddit_id = 2 [(validate.rules).string = {pattern: "^t5_[a-zA-Z0-9]+$"}];
193
-
194
- // Cursor for the start index of the result set. When empty, the results start from the first page.
195
- // The sort order is descending, so the first page will be the most recently added moderators.
196
- // This API may be updated to allow that sort order to be specified, but the default will remain as descending.
197
- string cursor = 3 [(validate.rules).string = {
198
- ignore_empty: true,
199
- min_len: 1,
200
- }];
201
-
202
- // Maximum page size limit (defaults to and capped at 1000).
203
- int32 limit = 4 [(validate.rules).int32 = {
204
- ignore_empty: true,
205
- gte: 1,
206
- lte: 1000,
207
- }];
208
- }
209
-
210
- // Response of moderators for a given subreddit that filters out any mods on the list invisible mods
211
- // https://github.snooguts.net/reddit/reddit-private/blob/ee159f8e2a9d9235c48001c9dcd8fc32b0628339/production.ini#L1778-L1792
212
- //
213
- // If the provided subreddit has no moderators, including if it is not a valid subreddit,
214
- // an empty array will be returned in the response.
215
- message GetVisibleModeratorsBySubredditResponse {
216
- // A list of moderators for the given subreddit.
217
- repeated Moderator moderators = 1;
218
-
219
- // The cursor for the next page of results. If empty, then the end of the result set has been reached.
220
- // Cursor format is subject to change.
221
- string cursor = 2;
222
- }
223
-
224
- // Request to reorder moderators for a given subreddit with a limit of 100 moderators to reorder at a time.
225
- // The requester must have sufficient permissions (be a moderator with ALL permissions of the given subreddit)
226
- // and can only reorder starting from their position or below in the moderator ranking.
227
- message ReorderModeratorsRequest {
228
- // Account identifier of the moderator reordering the list of moderators.
229
- // Specified account id should be a valid thing identifier with t2 prefix.
230
- string account_id = 1 [(validate.rules).string = {pattern: "^t2_[a-zA-Z0-9]+$"}];
231
-
232
- // Subreddit identifier of subreddit to reorder moderators for.
233
- // Specified subreddit id should be a valid thing identifier with t5 prefix.
234
- string subreddit_id = 2 [(validate.rules).string = {pattern: "^t5_[a-zA-Z0-9]+$"}];
235
-
236
- // Existing moderator ranking on the given subreddit and will be validated against.
237
- // This must be the full ranking of moderators.
238
- // All moderators in the provided list must appear exactly in sequence in the existing moderator list.
239
- repeated Moderator existing_mod_ranking = 3 [(validate.rules).repeated = {
240
- min_items: 2,
241
- max_items: 100
242
- }];
243
-
244
- // New moderator ranking to apply for the given subreddit. This must be a permutation of the
245
- // existing full ranking of moderators on the request and at the time the request is processed.
246
- // The order of moderators is important as it determines which mods are able act on mods below them in the hierarchy.
247
- repeated Moderator new_mod_ranking = 4 [(validate.rules).repeated = {
248
- min_items: 2,
249
- max_items: 100
250
- }];
251
- }
252
-
253
- // Response of reordering moderators for a given subreddit. An empty response with no error
254
- // will be returned on a successful reorder.
255
- message ReorderModeratorsResponse {}
256
-
257
- // Request payload for creating a subreddit moderator
258
- message CreateModeratorRequest {
259
- // The account id of the user we want to add as moderator.
260
- // The id should be a valid thing identifier with t2 prefix.
261
- string account_id = 1 [(validate.rules).string = {
262
- pattern: "^t2_[a-zA-Z0-9]+$",
263
- ignore_empty: true,
264
- }];
265
-
266
- // Subreddit identifier requested user will be a moderator of.
267
- // Specified subreddit id should be a valid thing identifier with t5 prefix.
268
- string subreddit_id = 2 [(validate.rules).string = {pattern: "^t5_[a-zA-Z0-9]+$"}];
269
- }
270
-
271
- // The response message for creating a subreddit moderator
272
- message CreateModeratorResponse {
273
- // The operation URI, a unique identifier of the create request that the client can use to track progress.
274
- // Calling Cloudroutine's PollOperationStatus endpoint with this URI will return the current status.
275
- string operation_uri = 1;
276
- }
277
-
278
- // Request payload for removing a subreddit moderator
279
- message DeleteModeratorRequest {
280
- // The account id of the user we want to remove as moderator.
281
- // The id should be a valid thing identifier with t2 prefix.
282
- string account_id = 1 [(validate.rules).string = {
283
- pattern: "^t2_[a-zA-Z0-9]+$",
284
- ignore_empty: true,
285
- }];
286
-
287
- // Subreddit requested user will be removed from.
288
- // Specified subreddit id should be a valid thing identifier with t5 prefix.
289
- string subreddit_id = 2 [(validate.rules).string = {pattern: "^t5_[a-zA-Z0-9]+$"}];
290
- }
291
-
292
- // The response message for removing a subreddit moderator
293
- message DeleteModeratorResponse {
294
- // The operation URI, a unique identifier of the create request that the client can use to track progress.
295
- // Calling Cloudroutine's PollOperationStatus endpoint with this URI will return the current status.
296
- string operation_uri = 1;
297
- }
298
-
299
- // Request payload for updating moderator permissions
300
- message UpdateModeratorPermissionsRequest {
301
- // The account id of the user we want to update moderator permissions for.
302
- // The id should be a valid thing identifier with t2 prefix.
303
- string account_id = 1 [(validate.rules).string = {
304
- pattern: "^t2_[a-zA-Z0-9]+$",
305
- ignore_empty: true,
306
- }];
307
-
308
- // Subreddit requested user will have their moderator permissions updated for.
309
- // Specified subreddit id should be a valid thing identifier with t5 prefix.
310
- string subreddit_id = 2 [(validate.rules).string = {pattern: "^t5_[a-zA-Z0-9]+$"}];
311
-
312
- // Permissions that the user should be granted for the current subreddit.
313
- ModeratorPermissions permissions = 3;
314
- }
315
-
316
- // The response message for updating moderator permissions
317
- message UpdateModeratorPermissionsResponse {
318
- // The operation URI, a unique identifier of the create request that the client can use to track progress.
319
- // Calling Cloudroutine's PollOperationStatus endpoint with this URI will return the current status.
320
- string operation_uri = 1;
321
- }
322
-
323
- // Request payload for creating a subreddit moderator invite
324
- message CreateModeratorInviteRequest {
325
- // The account id of the user we want to invite as moderator.
326
- // The id should be a valid thing identifier with t2 prefix.
327
- string account_id = 1 [(validate.rules).string = {
328
- pattern: "^t2_[a-zA-Z0-9]+$",
329
- ignore_empty: true,
330
- }];
331
-
332
- // Subreddit requested user will be invited to be moderator of.
333
- // Specified subreddit id should be a valid thing identifier with t5 prefix.
334
- string subreddit_id = 2 [(validate.rules).string = {pattern: "^t5_[a-zA-Z0-9]+$"}];
335
- }
336
-
337
- // The response message for creating a subreddit moderator invite
338
- message CreateModeratorInviteResponse {
339
- // The operation URI, a unique identifier of the create request that the client can use to track progress.
340
- // Calling Cloudroutine's PollOperationStatus endpoint with this URI will return the current status.
341
- string operation_uri = 1;
342
- }
343
-
344
- // Request payload for removing a subreddit moderator invite
345
- message DeleteModeratorInviteRequest {
346
- // The account id of the user we want to remove a moderator invite from.
347
- // The id should be a valid thing identifier with t2 prefix.
348
- string account_id = 1 [(validate.rules).string = {
349
- pattern: "^t2_[a-zA-Z0-9]+$",
350
- ignore_empty: true,
351
- }];
352
-
353
- // Subreddit requested user will have their moderator invite removed from.
354
- // Specified subreddit id should be a valid thing identifier with t5 prefix.
355
- string subreddit_id = 2 [(validate.rules).string = {pattern: "^t5_[a-zA-Z0-9]+$"}];
356
- }
357
-
358
- // The response message for removing a subreddit moderator invite
359
- message DeleteModeratorInviteResponse {
360
- // The operation URI, a unique identifier of the create request that the client can use to track progress.
361
- // Calling Cloudroutine's PollOperationStatus endpoint with this URI will return the current status.
362
- string operation_uri = 1;
363
- }