@greatwait/contracts 0.1.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (241) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +77 -0
  3. package/dist/authority.d.ts +217 -0
  4. package/dist/authority.js +261 -0
  5. package/dist/callback-ownership.d.ts +58 -0
  6. package/dist/callback-ownership.js +71 -0
  7. package/dist/callback-safety.d.ts +38 -0
  8. package/dist/callback-safety.js +403 -0
  9. package/dist/compatibility.d.ts +82 -0
  10. package/dist/compatibility.js +115 -0
  11. package/dist/delivery.d.ts +401 -0
  12. package/dist/delivery.js +311 -0
  13. package/dist/endpoints.d.ts +305 -0
  14. package/dist/endpoints.js +179 -0
  15. package/dist/events.d.ts +62 -0
  16. package/dist/events.js +38 -0
  17. package/dist/first-value-journey.d.ts +305 -0
  18. package/dist/first-value-journey.js +466 -0
  19. package/dist/forecast.d.ts +443 -0
  20. package/dist/forecast.js +729 -0
  21. package/dist/identifiers.d.ts +109 -0
  22. package/dist/identifiers.js +131 -0
  23. package/dist/identity.d.ts +196 -0
  24. package/dist/identity.js +182 -0
  25. package/dist/index.d.ts +27 -0
  26. package/dist/index.js +27 -0
  27. package/dist/mcp.d.ts +51 -0
  28. package/dist/mcp.js +56 -0
  29. package/dist/oauth.d.ts +796 -0
  30. package/dist/oauth.js +708 -0
  31. package/dist/operations.d.ts +3985 -0
  32. package/dist/operations.js +1837 -0
  33. package/dist/partition.d.ts +771 -0
  34. package/dist/partition.js +206 -0
  35. package/dist/policy.d.ts +93 -0
  36. package/dist/policy.js +180 -0
  37. package/dist/problems.d.ts +158 -0
  38. package/dist/problems.js +104 -0
  39. package/dist/protocol.d.ts +308 -0
  40. package/dist/protocol.js +515 -0
  41. package/dist/scheduling-records.d.ts +395 -0
  42. package/dist/scheduling-records.js +284 -0
  43. package/dist/scheduling.d.ts +1098 -0
  44. package/dist/scheduling.js +1116 -0
  45. package/dist/secrets.d.ts +383 -0
  46. package/dist/secrets.js +272 -0
  47. package/dist/signatures.d.ts +704 -0
  48. package/dist/signatures.js +867 -0
  49. package/dist/tenancy.d.ts +178 -0
  50. package/dist/tenancy.js +145 -0
  51. package/dist/test-sink.d.ts +986 -0
  52. package/dist/test-sink.js +755 -0
  53. package/dist/time.d.ts +45 -0
  54. package/dist/time.js +128 -0
  55. package/dist/usage.d.ts +121 -0
  56. package/dist/usage.js +200 -0
  57. package/dist/webhooks.d.ts +116 -0
  58. package/dist/webhooks.js +161 -0
  59. package/dist/workspace.d.ts +92 -0
  60. package/dist/workspace.js +59 -0
  61. package/generated/v1/callback-delivery-signature.json +467 -0
  62. package/generated/v1/callback-endpoint-verification.json +59 -0
  63. package/generated/v1/callback-receiver.json +241 -0
  64. package/generated/v1/examples/attempts.list.response.json +24 -0
  65. package/generated/v1/examples/attempts.read.response.json +20 -0
  66. package/generated/v1/examples/credentials.create.request.json +5 -0
  67. package/generated/v1/examples/credentials.create.response.json +10 -0
  68. package/generated/v1/examples/credentials.list.response.json +17 -0
  69. package/generated/v1/examples/credentials.revoke.response.json +11 -0
  70. package/generated/v1/examples/credentials.rotate.request.json +3 -0
  71. package/generated/v1/examples/credentials.rotate.response.json +22 -0
  72. package/generated/v1/examples/endpoints.create.request.json +3 -0
  73. package/generated/v1/examples/endpoints.create.response.json +16 -0
  74. package/generated/v1/examples/endpoints.disable.response.json +15 -0
  75. package/generated/v1/examples/endpoints.list.response.json +21 -0
  76. package/generated/v1/examples/endpoints.read.response.json +14 -0
  77. package/generated/v1/examples/endpoints.rotateSigningKey.request.json +3 -0
  78. package/generated/v1/examples/endpoints.rotateSigningKey.response.json +23 -0
  79. package/generated/v1/examples/endpoints.update.request.json +3 -0
  80. package/generated/v1/examples/endpoints.update.response.json +13 -0
  81. package/generated/v1/examples/endpoints.verify.response.json +15 -0
  82. package/generated/v1/examples/forecast.read.response.json +28 -0
  83. package/generated/v1/examples/forecast.windows.response.json +21 -0
  84. package/generated/v1/examples/grants.list.response.json +17 -0
  85. package/generated/v1/examples/grants.revoke.response.json +16 -0
  86. package/generated/v1/examples/meta.scaffold.response.json +5 -0
  87. package/generated/v1/examples/meta.version.response.json +5 -0
  88. package/generated/v1/examples/occurrences.list.response.json +17 -0
  89. package/generated/v1/examples/occurrences.read.response.json +15 -0
  90. package/generated/v1/examples/occurrences.redeliver.response.json +16 -0
  91. package/generated/v1/examples/projects.create.request.json +3 -0
  92. package/generated/v1/examples/projects.create.response.json +5 -0
  93. package/generated/v1/examples/projects.list.response.json +9 -0
  94. package/generated/v1/examples/schedules.archive.response.json +25 -0
  95. package/generated/v1/examples/schedules.cancel.response.json +24 -0
  96. package/generated/v1/examples/schedules.create.request.json +9 -0
  97. package/generated/v1/examples/schedules.create.response.json +25 -0
  98. package/generated/v1/examples/schedules.list.response.json +23 -0
  99. package/generated/v1/examples/schedules.pause.response.json +23 -0
  100. package/generated/v1/examples/schedules.read.response.json +25 -0
  101. package/generated/v1/examples/schedules.replace.request.json +8 -0
  102. package/generated/v1/examples/schedules.replace.response.json +25 -0
  103. package/generated/v1/examples/schedules.resume.response.json +23 -0
  104. package/generated/v1/examples/sinkdeliveries.list.response.json +19 -0
  105. package/generated/v1/examples/sinkdeliveries.read.response.json +16 -0
  106. package/generated/v1/examples/testsinks.configure.request.json +3 -0
  107. package/generated/v1/examples/testsinks.configure.response.json +13 -0
  108. package/generated/v1/examples/testsinks.create.request.json +8 -0
  109. package/generated/v1/examples/testsinks.create.response.json +13 -0
  110. package/generated/v1/examples/testsinks.delete.response.json +13 -0
  111. package/generated/v1/examples/testsinks.list.response.json +20 -0
  112. package/generated/v1/examples/testsinks.read.response.json +14 -0
  113. package/generated/v1/examples/usage.read.response.json +20 -0
  114. package/generated/v1/first-value-journey.json +436 -0
  115. package/generated/v1/manifest.json +1037 -0
  116. package/generated/v1/openapi.json +23665 -0
  117. package/generated/v1/policy-matrix.json +305 -0
  118. package/generated/v1/schemas/attempts.list.query.json +16 -0
  119. package/generated/v1/schemas/attempts.list.response.json +175 -0
  120. package/generated/v1/schemas/attempts.read.response.json +168 -0
  121. package/generated/v1/schemas/credentials.create.request.json +39 -0
  122. package/generated/v1/schemas/credentials.create.response.json +88 -0
  123. package/generated/v1/schemas/credentials.list.query.json +16 -0
  124. package/generated/v1/schemas/credentials.list.response.json +124 -0
  125. package/generated/v1/schemas/credentials.revoke.response.json +84 -0
  126. package/generated/v1/schemas/credentials.rotate.request.json +11 -0
  127. package/generated/v1/schemas/credentials.rotate.response.json +171 -0
  128. package/generated/v1/schemas/endpoints.create.request.json +12 -0
  129. package/generated/v1/schemas/endpoints.create.response.json +115 -0
  130. package/generated/v1/schemas/endpoints.disable.response-headers.json +11 -0
  131. package/generated/v1/schemas/endpoints.disable.response.json +100 -0
  132. package/generated/v1/schemas/endpoints.list.query.json +16 -0
  133. package/generated/v1/schemas/endpoints.list.response.json +146 -0
  134. package/generated/v1/schemas/endpoints.read.response-headers.json +11 -0
  135. package/generated/v1/schemas/endpoints.read.response.json +100 -0
  136. package/generated/v1/schemas/endpoints.rotateSigningKey.request-headers.json +10 -0
  137. package/generated/v1/schemas/endpoints.rotateSigningKey.request.json +11 -0
  138. package/generated/v1/schemas/endpoints.rotateSigningKey.response-headers.json +11 -0
  139. package/generated/v1/schemas/endpoints.rotateSigningKey.response.json +118 -0
  140. package/generated/v1/schemas/endpoints.update.request-headers.json +10 -0
  141. package/generated/v1/schemas/endpoints.update.request.json +12 -0
  142. package/generated/v1/schemas/endpoints.update.response-headers.json +11 -0
  143. package/generated/v1/schemas/endpoints.update.response.json +100 -0
  144. package/generated/v1/schemas/endpoints.verify.request-headers.json +10 -0
  145. package/generated/v1/schemas/endpoints.verify.response-headers.json +11 -0
  146. package/generated/v1/schemas/endpoints.verify.response.json +100 -0
  147. package/generated/v1/schemas/forecast.read.query.json +26 -0
  148. package/generated/v1/schemas/forecast.read.response.json +100 -0
  149. package/generated/v1/schemas/forecast.windows.query.json +26 -0
  150. package/generated/v1/schemas/forecast.windows.response.json +94 -0
  151. package/generated/v1/schemas/grants.list.response.json +98 -0
  152. package/generated/v1/schemas/grants.revoke.response.json +95 -0
  153. package/generated/v1/schemas/meta.scaffold.response.json +36 -0
  154. package/generated/v1/schemas/meta.version.response.json +19 -0
  155. package/generated/v1/schemas/occurrences.list.query.json +16 -0
  156. package/generated/v1/schemas/occurrences.list.response.json +83 -0
  157. package/generated/v1/schemas/occurrences.read.response.json +76 -0
  158. package/generated/v1/schemas/occurrences.redeliver.request-headers.json +13 -0
  159. package/generated/v1/schemas/occurrences.redeliver.response-headers.json +10 -0
  160. package/generated/v1/schemas/occurrences.redeliver.response.json +168 -0
  161. package/generated/v1/schemas/projects.create.request.json +12 -0
  162. package/generated/v1/schemas/projects.create.response.json +25 -0
  163. package/generated/v1/schemas/projects.list.response.json +35 -0
  164. package/generated/v1/schemas/schedules.archive.request-headers.json +10 -0
  165. package/generated/v1/schemas/schedules.archive.response-headers.json +11 -0
  166. package/generated/v1/schemas/schedules.archive.response.json +189 -0
  167. package/generated/v1/schemas/schedules.cancel.request-headers.json +10 -0
  168. package/generated/v1/schemas/schedules.cancel.response-headers.json +11 -0
  169. package/generated/v1/schemas/schedules.cancel.response.json +189 -0
  170. package/generated/v1/schemas/schedules.create.request-headers.json +12 -0
  171. package/generated/v1/schemas/schedules.create.request.json +99 -0
  172. package/generated/v1/schemas/schedules.create.response-headers.json +15 -0
  173. package/generated/v1/schemas/schedules.create.response.json +189 -0
  174. package/generated/v1/schemas/schedules.list.query.json +16 -0
  175. package/generated/v1/schemas/schedules.list.response.json +170 -0
  176. package/generated/v1/schemas/schedules.pause.request-headers.json +10 -0
  177. package/generated/v1/schemas/schedules.pause.response-headers.json +11 -0
  178. package/generated/v1/schemas/schedules.pause.response.json +189 -0
  179. package/generated/v1/schemas/schedules.read.response-headers.json +11 -0
  180. package/generated/v1/schemas/schedules.read.response.json +189 -0
  181. package/generated/v1/schemas/schedules.replace.request-headers.json +10 -0
  182. package/generated/v1/schemas/schedules.replace.request.json +99 -0
  183. package/generated/v1/schemas/schedules.replace.response-headers.json +11 -0
  184. package/generated/v1/schemas/schedules.replace.response.json +189 -0
  185. package/generated/v1/schemas/schedules.resume.request-headers.json +10 -0
  186. package/generated/v1/schemas/schedules.resume.response-headers.json +11 -0
  187. package/generated/v1/schemas/schedules.resume.response.json +189 -0
  188. package/generated/v1/schemas/sinkdeliveries.list.query.json +16 -0
  189. package/generated/v1/schemas/sinkdeliveries.list.response.json +126 -0
  190. package/generated/v1/schemas/sinkdeliveries.read.response.json +98 -0
  191. package/generated/v1/schemas/testsinks.configure.request.json +66 -0
  192. package/generated/v1/schemas/testsinks.configure.response.json +115 -0
  193. package/generated/v1/schemas/testsinks.create.request.json +76 -0
  194. package/generated/v1/schemas/testsinks.create.response.json +115 -0
  195. package/generated/v1/schemas/testsinks.delete.response.json +115 -0
  196. package/generated/v1/schemas/testsinks.list.query.json +16 -0
  197. package/generated/v1/schemas/testsinks.list.response.json +161 -0
  198. package/generated/v1/schemas/testsinks.read.response.json +115 -0
  199. package/generated/v1/schemas/usage.read.query.json +15 -0
  200. package/generated/v1/schemas/usage.read.response.json +71 -0
  201. package/generated/v1/snippets/attempts.list.json +5 -0
  202. package/generated/v1/snippets/attempts.read.json +5 -0
  203. package/generated/v1/snippets/credentials.create.json +5 -0
  204. package/generated/v1/snippets/credentials.list.json +5 -0
  205. package/generated/v1/snippets/credentials.revoke.json +5 -0
  206. package/generated/v1/snippets/credentials.rotate.json +5 -0
  207. package/generated/v1/snippets/endpoints.create.json +5 -0
  208. package/generated/v1/snippets/endpoints.disable.json +5 -0
  209. package/generated/v1/snippets/endpoints.list.json +5 -0
  210. package/generated/v1/snippets/endpoints.read.json +5 -0
  211. package/generated/v1/snippets/endpoints.rotateSigningKey.json +5 -0
  212. package/generated/v1/snippets/endpoints.update.json +5 -0
  213. package/generated/v1/snippets/endpoints.verify.json +5 -0
  214. package/generated/v1/snippets/forecast.read.json +5 -0
  215. package/generated/v1/snippets/forecast.windows.json +5 -0
  216. package/generated/v1/snippets/grants.list.json +5 -0
  217. package/generated/v1/snippets/grants.revoke.json +5 -0
  218. package/generated/v1/snippets/meta.scaffold.json +5 -0
  219. package/generated/v1/snippets/meta.version.json +5 -0
  220. package/generated/v1/snippets/occurrences.list.json +5 -0
  221. package/generated/v1/snippets/occurrences.read.json +5 -0
  222. package/generated/v1/snippets/occurrences.redeliver.json +5 -0
  223. package/generated/v1/snippets/projects.create.json +5 -0
  224. package/generated/v1/snippets/projects.list.json +5 -0
  225. package/generated/v1/snippets/schedules.archive.json +5 -0
  226. package/generated/v1/snippets/schedules.cancel.json +5 -0
  227. package/generated/v1/snippets/schedules.create.json +5 -0
  228. package/generated/v1/snippets/schedules.list.json +5 -0
  229. package/generated/v1/snippets/schedules.pause.json +5 -0
  230. package/generated/v1/snippets/schedules.read.json +5 -0
  231. package/generated/v1/snippets/schedules.replace.json +5 -0
  232. package/generated/v1/snippets/schedules.resume.json +5 -0
  233. package/generated/v1/snippets/sinkdeliveries.list.json +5 -0
  234. package/generated/v1/snippets/sinkdeliveries.read.json +5 -0
  235. package/generated/v1/snippets/testsinks.configure.json +5 -0
  236. package/generated/v1/snippets/testsinks.create.json +5 -0
  237. package/generated/v1/snippets/testsinks.delete.json +5 -0
  238. package/generated/v1/snippets/testsinks.list.json +5 -0
  239. package/generated/v1/snippets/testsinks.read.json +5 -0
  240. package/generated/v1/snippets/usage.read.json +5 -0
  241. package/package.json +153 -0
@@ -0,0 +1,305 @@
1
+ [
2
+ {
3
+ "mutates": false,
4
+ "operation": "attempts.list",
5
+ "principals": ["api-credential", "oauth", "session"],
6
+ "roles": ["admin", "member"],
7
+ "scopes": ["occurrences:read"]
8
+ },
9
+ {
10
+ "mutates": false,
11
+ "operation": "attempts.read",
12
+ "principals": ["api-credential", "oauth", "session"],
13
+ "roles": ["admin", "member"],
14
+ "scopes": ["occurrences:read"]
15
+ },
16
+ {
17
+ "mutates": true,
18
+ "operation": "credentials.create",
19
+ "principals": ["session"],
20
+ "roles": ["admin", "member"],
21
+ "scopes": ["credentials:write"]
22
+ },
23
+ {
24
+ "mutates": false,
25
+ "operation": "credentials.list",
26
+ "principals": ["api-credential", "oauth", "session"],
27
+ "roles": ["admin", "member"],
28
+ "scopes": ["credentials:read"]
29
+ },
30
+ {
31
+ "mutates": true,
32
+ "operation": "credentials.revoke",
33
+ "conditionalScopes": ["credentials:administer"],
34
+ "principals": ["api-credential", "oauth", "session"],
35
+ "roles": ["admin", "member"],
36
+ "scopes": ["credentials:write"]
37
+ },
38
+ {
39
+ "mutates": true,
40
+ "operation": "credentials.rotate",
41
+ "conditionalScopes": ["credentials:administer"],
42
+ "principals": ["api-credential", "oauth", "session"],
43
+ "roles": ["admin", "member"],
44
+ "scopes": ["credentials:write"]
45
+ },
46
+ {
47
+ "mutates": true,
48
+ "operation": "endpoints.create",
49
+ "principals": ["api-credential", "oauth", "session"],
50
+ "roles": ["admin", "member"],
51
+ "scopes": ["endpoints:write"]
52
+ },
53
+ {
54
+ "mutates": true,
55
+ "operation": "endpoints.disable",
56
+ "principals": ["api-credential", "oauth", "session"],
57
+ "roles": ["admin", "member"],
58
+ "scopes": ["endpoints:write"]
59
+ },
60
+ {
61
+ "mutates": false,
62
+ "operation": "endpoints.list",
63
+ "principals": ["api-credential", "oauth", "session"],
64
+ "roles": ["admin", "member"],
65
+ "scopes": ["endpoints:read"]
66
+ },
67
+ {
68
+ "mutates": false,
69
+ "operation": "endpoints.read",
70
+ "principals": ["api-credential", "oauth", "session"],
71
+ "roles": ["admin", "member"],
72
+ "scopes": ["endpoints:read"]
73
+ },
74
+ {
75
+ "mutates": true,
76
+ "operation": "endpoints.rotateSigningKey",
77
+ "principals": ["api-credential", "oauth", "session"],
78
+ "roles": ["admin", "member"],
79
+ "scopes": ["endpoints:write"]
80
+ },
81
+ {
82
+ "mutates": true,
83
+ "operation": "endpoints.update",
84
+ "principals": ["api-credential", "oauth", "session"],
85
+ "roles": ["admin", "member"],
86
+ "scopes": ["endpoints:write"]
87
+ },
88
+ {
89
+ "mutates": true,
90
+ "operation": "endpoints.verify",
91
+ "principals": ["api-credential", "oauth", "session"],
92
+ "roles": ["admin", "member"],
93
+ "scopes": ["endpoints:write"]
94
+ },
95
+ {
96
+ "mutates": false,
97
+ "operation": "forecast.read",
98
+ "principals": ["api-credential", "oauth", "session"],
99
+ "roles": ["admin", "member"],
100
+ "scopes": ["forecast:read"]
101
+ },
102
+ {
103
+ "mutates": false,
104
+ "operation": "forecast.windows",
105
+ "principals": ["api-credential", "oauth", "session"],
106
+ "roles": ["admin", "member"],
107
+ "scopes": ["forecast:read"]
108
+ },
109
+ {
110
+ "mutates": false,
111
+ "operation": "grants.list",
112
+ "principals": ["session"],
113
+ "roles": ["admin", "member"],
114
+ "scopes": ["grants:read"]
115
+ },
116
+ {
117
+ "mutates": true,
118
+ "operation": "grants.revoke",
119
+ "principals": ["session"],
120
+ "roles": ["admin", "member"],
121
+ "scopes": ["grants:write"]
122
+ },
123
+ {
124
+ "mutates": false,
125
+ "operation": "meta.scaffold",
126
+ "principals": [],
127
+ "roles": ["admin", "member"],
128
+ "scopes": []
129
+ },
130
+ {
131
+ "mutates": false,
132
+ "operation": "meta.version",
133
+ "principals": [],
134
+ "roles": ["admin", "member"],
135
+ "scopes": []
136
+ },
137
+ {
138
+ "mutates": false,
139
+ "operation": "mock.getFixture",
140
+ "principals": [],
141
+ "roles": ["admin", "member"],
142
+ "scopes": []
143
+ },
144
+ {
145
+ "mutates": false,
146
+ "operation": "mock.listFixtures",
147
+ "principals": [],
148
+ "roles": ["admin", "member"],
149
+ "scopes": []
150
+ },
151
+ {
152
+ "mutates": true,
153
+ "operation": "mock.setScenario",
154
+ "principals": [],
155
+ "roles": ["admin", "member"],
156
+ "scopes": []
157
+ },
158
+ {
159
+ "mutates": false,
160
+ "operation": "occurrences.list",
161
+ "principals": ["api-credential", "oauth", "session"],
162
+ "roles": ["admin", "member"],
163
+ "scopes": ["occurrences:read"]
164
+ },
165
+ {
166
+ "mutates": false,
167
+ "operation": "occurrences.read",
168
+ "principals": ["api-credential", "oauth", "session"],
169
+ "roles": ["admin", "member"],
170
+ "scopes": ["occurrences:read"]
171
+ },
172
+ {
173
+ "mutates": true,
174
+ "operation": "occurrences.redeliver",
175
+ "principals": ["api-credential", "oauth", "session"],
176
+ "roles": ["admin", "member"],
177
+ "scopes": ["occurrences:redeliver"]
178
+ },
179
+ {
180
+ "mutates": true,
181
+ "operation": "projects.create",
182
+ "principals": ["session"],
183
+ "roles": ["admin", "member"],
184
+ "scopes": ["projects:write"]
185
+ },
186
+ {
187
+ "mutates": false,
188
+ "operation": "projects.list",
189
+ "principals": ["session"],
190
+ "roles": ["admin", "member"],
191
+ "scopes": ["projects:read"]
192
+ },
193
+ {
194
+ "mutates": true,
195
+ "operation": "schedules.archive",
196
+ "principals": ["api-credential", "oauth", "session"],
197
+ "roles": ["admin", "member"],
198
+ "scopes": ["schedules:write"]
199
+ },
200
+ {
201
+ "mutates": true,
202
+ "operation": "schedules.cancel",
203
+ "principals": ["api-credential", "oauth", "session"],
204
+ "roles": ["admin", "member"],
205
+ "scopes": ["schedules:write"]
206
+ },
207
+ {
208
+ "mutates": true,
209
+ "operation": "schedules.create",
210
+ "principals": ["api-credential", "oauth", "session"],
211
+ "roles": ["admin", "member"],
212
+ "scopes": ["schedules:write"]
213
+ },
214
+ {
215
+ "mutates": false,
216
+ "operation": "schedules.list",
217
+ "principals": ["api-credential", "oauth", "session"],
218
+ "roles": ["admin", "member"],
219
+ "scopes": ["schedules:read"]
220
+ },
221
+ {
222
+ "mutates": true,
223
+ "operation": "schedules.pause",
224
+ "principals": ["api-credential", "oauth", "session"],
225
+ "roles": ["admin", "member"],
226
+ "scopes": ["schedules:write"]
227
+ },
228
+ {
229
+ "mutates": false,
230
+ "operation": "schedules.read",
231
+ "principals": ["api-credential", "oauth", "session"],
232
+ "roles": ["admin", "member"],
233
+ "scopes": ["schedules:read"]
234
+ },
235
+ {
236
+ "mutates": true,
237
+ "operation": "schedules.replace",
238
+ "principals": ["api-credential", "oauth", "session"],
239
+ "roles": ["admin", "member"],
240
+ "scopes": ["schedules:write"]
241
+ },
242
+ {
243
+ "mutates": true,
244
+ "operation": "schedules.resume",
245
+ "principals": ["api-credential", "oauth", "session"],
246
+ "roles": ["admin", "member"],
247
+ "scopes": ["schedules:write"]
248
+ },
249
+ {
250
+ "mutates": false,
251
+ "operation": "sinkdeliveries.list",
252
+ "principals": ["api-credential", "oauth", "session"],
253
+ "roles": ["admin", "member"],
254
+ "scopes": ["endpoints:read"]
255
+ },
256
+ {
257
+ "mutates": false,
258
+ "operation": "sinkdeliveries.read",
259
+ "principals": ["api-credential", "oauth", "session"],
260
+ "roles": ["admin", "member"],
261
+ "scopes": ["endpoints:read"]
262
+ },
263
+ {
264
+ "mutates": true,
265
+ "operation": "testsinks.configure",
266
+ "principals": ["api-credential", "oauth", "session"],
267
+ "roles": ["admin", "member"],
268
+ "scopes": ["endpoints:write"]
269
+ },
270
+ {
271
+ "mutates": true,
272
+ "operation": "testsinks.create",
273
+ "principals": ["api-credential", "oauth", "session"],
274
+ "roles": ["admin", "member"],
275
+ "scopes": ["endpoints:write"]
276
+ },
277
+ {
278
+ "mutates": true,
279
+ "operation": "testsinks.delete",
280
+ "principals": ["api-credential", "oauth", "session"],
281
+ "roles": ["admin", "member"],
282
+ "scopes": ["endpoints:write"]
283
+ },
284
+ {
285
+ "mutates": false,
286
+ "operation": "testsinks.list",
287
+ "principals": ["api-credential", "oauth", "session"],
288
+ "roles": ["admin", "member"],
289
+ "scopes": ["endpoints:read"]
290
+ },
291
+ {
292
+ "mutates": false,
293
+ "operation": "testsinks.read",
294
+ "principals": ["api-credential", "oauth", "session"],
295
+ "roles": ["admin", "member"],
296
+ "scopes": ["endpoints:read"]
297
+ },
298
+ {
299
+ "mutates": false,
300
+ "operation": "usage.read",
301
+ "principals": ["api-credential", "oauth", "session"],
302
+ "roles": ["admin", "member"],
303
+ "scopes": ["usage:read"]
304
+ }
305
+ ]
@@ -0,0 +1,16 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "cursor": {
6
+ "type": "string",
7
+ "minLength": 1
8
+ },
9
+ "limit": {
10
+ "default": 25,
11
+ "type": "integer",
12
+ "minimum": 1,
13
+ "maximum": 100
14
+ }
15
+ }
16
+ }
@@ -0,0 +1,175 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "data": {
6
+ "type": "array",
7
+ "items": {
8
+ "type": "object",
9
+ "properties": {
10
+ "attemptNumber": {
11
+ "type": "integer",
12
+ "exclusiveMinimum": 0,
13
+ "maximum": 9007199254740991
14
+ },
15
+ "classifiedAt": {
16
+ "type": "string",
17
+ "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z$"
18
+ },
19
+ "delivery": {
20
+ "type": "string",
21
+ "pattern": "^dlv_[0-9abcdefghjkmnpqrstvwxyz]{26}$"
22
+ },
23
+ "diagnostic": {
24
+ "type": "string",
25
+ "x-callback-attempt-diagnostics": [
26
+ "completion_timed_out",
27
+ "delivered",
28
+ "duplicate_inflight",
29
+ "endpoint_unavailable",
30
+ "endpoint_unsafe",
31
+ "http_refused",
32
+ "http_retryable",
33
+ "http_terminal",
34
+ "identity_conflict",
35
+ "network_ambiguous",
36
+ "payload_unavailable",
37
+ "rate_limited"
38
+ ]
39
+ },
40
+ "durationMs": {
41
+ "type": "integer",
42
+ "minimum": 0,
43
+ "maximum": 9007199254740991
44
+ },
45
+ "id": {
46
+ "type": "string",
47
+ "pattern": "^att_[0-9abcdefghjkmnpqrstvwxyz]{26}$"
48
+ },
49
+ "occurrence": {
50
+ "type": "string",
51
+ "pattern": "^occ_[0-9abcdefghjkmnpqrstvwxyz]{26}$"
52
+ },
53
+ "remediation": {
54
+ "type": "string",
55
+ "enum": [
56
+ "none",
57
+ "review_retry_policy",
58
+ "inspect_receiver",
59
+ "verify_endpoint",
60
+ "replace_payload",
61
+ "contact_support",
62
+ "review_before_redelivery"
63
+ ]
64
+ },
65
+ "failureSnippet": {
66
+ "type": "object",
67
+ "properties": {
68
+ "contentType": {
69
+ "type": "string",
70
+ "minLength": 1,
71
+ "maxLength": 128
72
+ },
73
+ "text": {
74
+ "type": "string",
75
+ "maxLength": 4096
76
+ },
77
+ "truncated": {
78
+ "type": "boolean"
79
+ }
80
+ },
81
+ "required": ["contentType", "text", "truncated"]
82
+ },
83
+ "responseHeaders": {
84
+ "maxItems": 8,
85
+ "type": "array",
86
+ "items": {
87
+ "type": "object",
88
+ "properties": {
89
+ "name": {
90
+ "type": "string",
91
+ "minLength": 1,
92
+ "maxLength": 64
93
+ },
94
+ "value": {
95
+ "type": "string",
96
+ "maxLength": 256
97
+ }
98
+ },
99
+ "required": ["name", "value"]
100
+ }
101
+ },
102
+ "responseStatus": {
103
+ "type": "integer",
104
+ "minimum": 100,
105
+ "maximum": 599
106
+ },
107
+ "startedAt": {
108
+ "type": "string",
109
+ "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z$"
110
+ },
111
+ "state": {
112
+ "type": "string",
113
+ "enum": [
114
+ "succeeded",
115
+ "retryable_failure",
116
+ "terminal_failure",
117
+ "ambiguous"
118
+ ]
119
+ },
120
+ "trigger": {
121
+ "oneOf": [
122
+ {
123
+ "type": "object",
124
+ "properties": {
125
+ "kind": {
126
+ "type": "string",
127
+ "const": "automatic"
128
+ }
129
+ },
130
+ "required": ["kind"]
131
+ },
132
+ {
133
+ "type": "object",
134
+ "properties": {
135
+ "kind": {
136
+ "type": "string",
137
+ "const": "redelivery"
138
+ },
139
+ "sourceAttemptId": {
140
+ "type": "string",
141
+ "pattern": "^att_[0-9abcdefghjkmnpqrstvwxyz]{26}$"
142
+ }
143
+ },
144
+ "required": ["kind", "sourceAttemptId"]
145
+ }
146
+ ]
147
+ }
148
+ },
149
+ "required": [
150
+ "attemptNumber",
151
+ "delivery",
152
+ "id",
153
+ "occurrence",
154
+ "startedAt",
155
+ "trigger"
156
+ ]
157
+ }
158
+ },
159
+ "freshness": {
160
+ "type": "object",
161
+ "properties": {
162
+ "kind": {
163
+ "type": "string",
164
+ "const": "authoritative"
165
+ }
166
+ },
167
+ "required": ["kind"]
168
+ },
169
+ "nextCursor": {
170
+ "type": "string",
171
+ "minLength": 1
172
+ }
173
+ },
174
+ "required": ["data", "freshness"]
175
+ }
@@ -0,0 +1,168 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "attempt": {
6
+ "type": "object",
7
+ "properties": {
8
+ "attemptNumber": {
9
+ "type": "integer",
10
+ "exclusiveMinimum": 0,
11
+ "maximum": 9007199254740991
12
+ },
13
+ "classifiedAt": {
14
+ "type": "string",
15
+ "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z$"
16
+ },
17
+ "delivery": {
18
+ "type": "string",
19
+ "pattern": "^dlv_[0-9abcdefghjkmnpqrstvwxyz]{26}$"
20
+ },
21
+ "diagnostic": {
22
+ "type": "string",
23
+ "x-callback-attempt-diagnostics": [
24
+ "completion_timed_out",
25
+ "delivered",
26
+ "duplicate_inflight",
27
+ "endpoint_unavailable",
28
+ "endpoint_unsafe",
29
+ "http_refused",
30
+ "http_retryable",
31
+ "http_terminal",
32
+ "identity_conflict",
33
+ "network_ambiguous",
34
+ "payload_unavailable",
35
+ "rate_limited"
36
+ ]
37
+ },
38
+ "durationMs": {
39
+ "type": "integer",
40
+ "minimum": 0,
41
+ "maximum": 9007199254740991
42
+ },
43
+ "id": {
44
+ "type": "string",
45
+ "pattern": "^att_[0-9abcdefghjkmnpqrstvwxyz]{26}$"
46
+ },
47
+ "occurrence": {
48
+ "type": "string",
49
+ "pattern": "^occ_[0-9abcdefghjkmnpqrstvwxyz]{26}$"
50
+ },
51
+ "remediation": {
52
+ "type": "string",
53
+ "enum": [
54
+ "none",
55
+ "review_retry_policy",
56
+ "inspect_receiver",
57
+ "verify_endpoint",
58
+ "replace_payload",
59
+ "contact_support",
60
+ "review_before_redelivery"
61
+ ]
62
+ },
63
+ "failureSnippet": {
64
+ "type": "object",
65
+ "properties": {
66
+ "contentType": {
67
+ "type": "string",
68
+ "minLength": 1,
69
+ "maxLength": 128
70
+ },
71
+ "text": {
72
+ "type": "string",
73
+ "maxLength": 4096
74
+ },
75
+ "truncated": {
76
+ "type": "boolean"
77
+ }
78
+ },
79
+ "required": ["contentType", "text", "truncated"]
80
+ },
81
+ "responseHeaders": {
82
+ "maxItems": 8,
83
+ "type": "array",
84
+ "items": {
85
+ "type": "object",
86
+ "properties": {
87
+ "name": {
88
+ "type": "string",
89
+ "minLength": 1,
90
+ "maxLength": 64
91
+ },
92
+ "value": {
93
+ "type": "string",
94
+ "maxLength": 256
95
+ }
96
+ },
97
+ "required": ["name", "value"]
98
+ }
99
+ },
100
+ "responseStatus": {
101
+ "type": "integer",
102
+ "minimum": 100,
103
+ "maximum": 599
104
+ },
105
+ "startedAt": {
106
+ "type": "string",
107
+ "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z$"
108
+ },
109
+ "state": {
110
+ "type": "string",
111
+ "enum": [
112
+ "succeeded",
113
+ "retryable_failure",
114
+ "terminal_failure",
115
+ "ambiguous"
116
+ ]
117
+ },
118
+ "trigger": {
119
+ "oneOf": [
120
+ {
121
+ "type": "object",
122
+ "properties": {
123
+ "kind": {
124
+ "type": "string",
125
+ "const": "automatic"
126
+ }
127
+ },
128
+ "required": ["kind"]
129
+ },
130
+ {
131
+ "type": "object",
132
+ "properties": {
133
+ "kind": {
134
+ "type": "string",
135
+ "const": "redelivery"
136
+ },
137
+ "sourceAttemptId": {
138
+ "type": "string",
139
+ "pattern": "^att_[0-9abcdefghjkmnpqrstvwxyz]{26}$"
140
+ }
141
+ },
142
+ "required": ["kind", "sourceAttemptId"]
143
+ }
144
+ ]
145
+ }
146
+ },
147
+ "required": [
148
+ "attemptNumber",
149
+ "delivery",
150
+ "id",
151
+ "occurrence",
152
+ "startedAt",
153
+ "trigger"
154
+ ]
155
+ },
156
+ "freshness": {
157
+ "type": "object",
158
+ "properties": {
159
+ "kind": {
160
+ "type": "string",
161
+ "const": "authoritative"
162
+ }
163
+ },
164
+ "required": ["kind"]
165
+ }
166
+ },
167
+ "required": ["attempt", "freshness"]
168
+ }