@greatwait/contracts 0.1.0-alpha.4 → 0.1.0-alpha.6

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 (190) hide show
  1. package/README.md +1 -1
  2. package/dist/authority.d.ts +4 -1
  3. package/dist/authority.js +1 -0
  4. package/dist/billing.d.ts +231 -1
  5. package/dist/billing.js +150 -1
  6. package/dist/callback-safety.js +13 -3
  7. package/dist/configuration-bounds.d.ts +13 -0
  8. package/dist/configuration-bounds.js +13 -0
  9. package/dist/data-export.d.ts +2 -0
  10. package/dist/delivery.d.ts +26 -0
  11. package/dist/delivery.js +2 -0
  12. package/dist/effective-limits.d.ts +40 -0
  13. package/dist/effective-limits.js +42 -0
  14. package/dist/endpoints.d.ts +173 -5
  15. package/dist/endpoints.js +77 -6
  16. package/dist/first-value-journey.d.ts +1 -1
  17. package/dist/first-value-journey.js +11 -7
  18. package/dist/forecast.d.ts +111 -21
  19. package/dist/forecast.js +87 -24
  20. package/dist/http-request.d.ts +193 -0
  21. package/dist/http-request.js +305 -0
  22. package/dist/identity.d.ts +4 -4
  23. package/dist/index.d.ts +9 -6
  24. package/dist/index.js +8 -5
  25. package/dist/mcp.d.ts +2 -1
  26. package/dist/mcp.js +1 -1
  27. package/dist/members.d.ts +141 -0
  28. package/dist/members.js +223 -0
  29. package/dist/oauth.d.ts +7 -0
  30. package/dist/operation-definitions.d.ts +20 -4
  31. package/dist/operation-definitions.js +9 -1
  32. package/dist/operational-config.d.ts +101 -0
  33. package/dist/operational-config.js +341 -0
  34. package/dist/operations.d.ts +1299 -52
  35. package/dist/operations.js +466 -32
  36. package/dist/organization-lifecycle.d.ts +10 -0
  37. package/dist/partition.d.ts +17 -9
  38. package/dist/partition.js +3 -3
  39. package/dist/policy.js +5 -2
  40. package/dist/problems.d.ts +25 -2
  41. package/dist/problems.js +49 -1
  42. package/dist/protocol.d.ts +5 -5
  43. package/dist/protocol.js +2 -1
  44. package/dist/scheduling-records.d.ts +226 -0
  45. package/dist/scheduling-records.js +5 -0
  46. package/dist/scheduling.d.ts +273 -1
  47. package/dist/scheduling.js +91 -4
  48. package/dist/secrets.d.ts +7 -0
  49. package/dist/tenancy.d.ts +1 -1
  50. package/dist/tenancy.js +1 -1
  51. package/dist/usage.js +6 -21
  52. package/dist/zod-values.d.ts +2 -2
  53. package/dist/zod-values.js +1 -1
  54. package/generated/v1/examples/attempts.list.response.json +2 -0
  55. package/generated/v1/examples/attempts.read.response.json +2 -0
  56. package/generated/v1/examples/billing.fundingconfirm.response.json +120 -0
  57. package/generated/v1/examples/billing.invoicehistory.response.json +6 -0
  58. package/generated/v1/examples/billing.invoices.response.json +15 -0
  59. package/generated/v1/examples/billing.paymenthistory.response.json +6 -0
  60. package/generated/v1/examples/billing.paymentmethod.response.json +16 -0
  61. package/generated/v1/examples/billing.paymentmethodconfirm.request.json +3 -0
  62. package/generated/v1/examples/billing.paymentmethodconfirm.response.json +16 -0
  63. package/generated/v1/examples/billing.paymentmethodremove.request.json +3 -0
  64. package/generated/v1/examples/billing.paymentmethodremove.response.json +4 -0
  65. package/generated/v1/examples/billing.paymentmethodsetup.request.json +1 -0
  66. package/generated/v1/examples/billing.paymentmethodsetup.response.json +3 -0
  67. package/generated/v1/examples/endpoints.ensure.request.json +3 -0
  68. package/generated/v1/examples/endpoints.ensure.response.json +20 -0
  69. package/generated/v1/examples/invitations.create.request.json +5 -0
  70. package/generated/v1/examples/invitations.create.response.json +7 -0
  71. package/generated/v1/examples/invitations.list.response.json +11 -0
  72. package/generated/v1/examples/invitations.resend.request.json +1 -0
  73. package/generated/v1/examples/invitations.resend.response.json +4 -0
  74. package/generated/v1/examples/invitations.revoke.request.json +3 -0
  75. package/generated/v1/examples/invitations.revoke.response.json +4 -0
  76. package/generated/v1/examples/limits.read.response.json +16 -0
  77. package/generated/v1/examples/members.list.response.json +13 -0
  78. package/generated/v1/examples/members.remove.request.json +3 -0
  79. package/generated/v1/examples/members.remove.response.json +4 -0
  80. package/generated/v1/examples/members.role.request.json +3 -0
  81. package/generated/v1/examples/members.role.response.json +4 -0
  82. package/generated/v1/examples/occurrences.redeliver.response.json +2 -0
  83. package/generated/v1/examples/projectmembers.add.request.json +1 -0
  84. package/generated/v1/examples/projectmembers.add.response.json +4 -0
  85. package/generated/v1/examples/projectmembers.remove.request.json +3 -0
  86. package/generated/v1/examples/projectmembers.remove.response.json +4 -0
  87. package/generated/v1/first-value-journey.json +24 -8
  88. package/generated/v1/manifest.json +627 -10
  89. package/generated/v1/openapi.json +29081 -15663
  90. package/generated/v1/policy-matrix.json +137 -2
  91. package/generated/v1/schemas/attempts.list.response.json +15 -0
  92. package/generated/v1/schemas/attempts.read.response.json +15 -0
  93. package/generated/v1/schemas/billing.fundingconfirm.response.json +552 -0
  94. package/generated/v1/schemas/billing.invoicehistory.query.json +16 -0
  95. package/generated/v1/schemas/billing.invoicehistory.response.json +88 -0
  96. package/generated/v1/schemas/billing.invoices.response.json +51 -0
  97. package/generated/v1/schemas/billing.ledger.response.json +5 -0
  98. package/generated/v1/schemas/billing.notificationsettingsupdate.request.json +24 -17
  99. package/generated/v1/schemas/billing.paymenthistory.query.json +16 -0
  100. package/generated/v1/schemas/billing.paymenthistory.response.json +182 -0
  101. package/generated/v1/schemas/billing.paymentmethod.response.json +137 -0
  102. package/generated/v1/schemas/billing.paymentmethodconfirm.request.json +14 -0
  103. package/generated/v1/schemas/billing.paymentmethodconfirm.response.json +137 -0
  104. package/generated/v1/schemas/billing.paymentmethodremove.request.json +12 -0
  105. package/generated/v1/schemas/billing.paymentmethodremove.response.json +137 -0
  106. package/generated/v1/schemas/billing.paymentmethodsetup.request.json +12 -0
  107. package/generated/v1/schemas/billing.paymentmethodsetup.response.json +11 -0
  108. package/generated/v1/schemas/billing.purchase.request.json +4 -0
  109. package/generated/v1/schemas/context.read.response.json +1 -0
  110. package/generated/v1/schemas/credentials.connection.response.json +1 -0
  111. package/generated/v1/schemas/credentials.create.request.json +1 -0
  112. package/generated/v1/schemas/credentials.create.response.json +1 -0
  113. package/generated/v1/schemas/credentials.list.response.json +1 -0
  114. package/generated/v1/schemas/credentials.revoke.response.json +1 -0
  115. package/generated/v1/schemas/credentials.rotate.response.json +2 -0
  116. package/generated/v1/schemas/endpoints.acknowledgeSigningKeyRotation.response.json +59 -0
  117. package/generated/v1/schemas/endpoints.create.request.json +74 -0
  118. package/generated/v1/schemas/endpoints.create.response.json +59 -0
  119. package/generated/v1/schemas/endpoints.disable.response.json +59 -0
  120. package/generated/v1/schemas/endpoints.enable.response.json +59 -0
  121. package/generated/v1/schemas/endpoints.ensure.request.json +91 -0
  122. package/generated/v1/schemas/endpoints.ensure.response.json +169 -0
  123. package/generated/v1/schemas/endpoints.list.response.json +59 -0
  124. package/generated/v1/schemas/endpoints.read.response.json +59 -0
  125. package/generated/v1/schemas/endpoints.rotateSigningKey.response.json +59 -0
  126. package/generated/v1/schemas/endpoints.update.request.json +74 -0
  127. package/generated/v1/schemas/endpoints.update.response.json +59 -0
  128. package/generated/v1/schemas/forecast.read.request-headers.json +10 -0
  129. package/generated/v1/schemas/forecast.read.response.json +148 -0
  130. package/generated/v1/schemas/grants.list.response.json +1 -0
  131. package/generated/v1/schemas/grants.revoke.response.json +1 -0
  132. package/generated/v1/schemas/invitations.create.request-headers.json +13 -0
  133. package/generated/v1/schemas/invitations.create.request.json +24 -0
  134. package/generated/v1/schemas/invitations.create.response.json +31 -0
  135. package/generated/v1/schemas/invitations.list.response.json +40 -0
  136. package/generated/v1/schemas/invitations.resend.request-headers.json +13 -0
  137. package/generated/v1/schemas/invitations.resend.request.json +6 -0
  138. package/generated/v1/schemas/invitations.resend.response.json +27 -0
  139. package/generated/v1/schemas/invitations.revoke.request-headers.json +13 -0
  140. package/generated/v1/schemas/invitations.revoke.request.json +12 -0
  141. package/generated/v1/schemas/invitations.revoke.response.json +27 -0
  142. package/generated/v1/schemas/limits.read.response.json +79 -0
  143. package/generated/v1/schemas/members.list.response.json +53 -0
  144. package/generated/v1/schemas/members.remove.request-headers.json +13 -0
  145. package/generated/v1/schemas/members.remove.request.json +12 -0
  146. package/generated/v1/schemas/members.remove.response.json +27 -0
  147. package/generated/v1/schemas/members.role.request-headers.json +13 -0
  148. package/generated/v1/schemas/members.role.request.json +12 -0
  149. package/generated/v1/schemas/members.role.response.json +27 -0
  150. package/generated/v1/schemas/occurrences.redeliver.response.json +15 -0
  151. package/generated/v1/schemas/projectmembers.add.request-headers.json +13 -0
  152. package/generated/v1/schemas/projectmembers.add.request.json +6 -0
  153. package/generated/v1/schemas/projectmembers.add.response.json +27 -0
  154. package/generated/v1/schemas/projectmembers.remove.request-headers.json +13 -0
  155. package/generated/v1/schemas/projectmembers.remove.request.json +12 -0
  156. package/generated/v1/schemas/projectmembers.remove.response.json +27 -0
  157. package/generated/v1/schemas/schedules.archive.response.json +138 -1
  158. package/generated/v1/schemas/schedules.cancel.response.json +138 -1
  159. package/generated/v1/schemas/schedules.create.request.json +150 -1
  160. package/generated/v1/schemas/schedules.create.response.json +156 -1
  161. package/generated/v1/schemas/schedules.list.response.json +138 -1
  162. package/generated/v1/schemas/schedules.pause.response.json +138 -1
  163. package/generated/v1/schemas/schedules.read.response.json +138 -1
  164. package/generated/v1/schemas/schedules.replace.request.json +150 -1
  165. package/generated/v1/schemas/schedules.replace.response.json +156 -1
  166. package/generated/v1/schemas/schedules.resume.response.json +138 -1
  167. package/generated/v1/snippets/billing.fundingconfirm.json +6 -0
  168. package/generated/v1/snippets/billing.invoicehistory.json +6 -0
  169. package/generated/v1/snippets/billing.invoices.json +6 -0
  170. package/generated/v1/snippets/billing.notificationsettingsupdate.json +1 -1
  171. package/generated/v1/snippets/billing.paymenthistory.json +6 -0
  172. package/generated/v1/snippets/billing.paymentmethod.json +6 -0
  173. package/generated/v1/snippets/billing.paymentmethodconfirm.json +6 -0
  174. package/generated/v1/snippets/billing.paymentmethodremove.json +6 -0
  175. package/generated/v1/snippets/billing.paymentmethodsetup.json +6 -0
  176. package/generated/v1/snippets/endpoints.create.json +1 -1
  177. package/generated/v1/snippets/endpoints.ensure.json +6 -0
  178. package/generated/v1/snippets/forecast.windows.json +1 -1
  179. package/generated/v1/snippets/invitations.create.json +6 -0
  180. package/generated/v1/snippets/invitations.list.json +6 -0
  181. package/generated/v1/snippets/invitations.resend.json +6 -0
  182. package/generated/v1/snippets/invitations.revoke.json +6 -0
  183. package/generated/v1/snippets/journey/create-destination.json +1 -1
  184. package/generated/v1/snippets/limits.read.json +6 -0
  185. package/generated/v1/snippets/members.list.json +6 -0
  186. package/generated/v1/snippets/members.remove.json +6 -0
  187. package/generated/v1/snippets/members.role.json +6 -0
  188. package/generated/v1/snippets/projectmembers.add.json +6 -0
  189. package/generated/v1/snippets/projectmembers.remove.json +6 -0
  190. package/package.json +7 -2
@@ -87,12 +87,118 @@
87
87
  "schedule": {
88
88
  "type": "object",
89
89
  "properties": {
90
+ "http": {
91
+ "type": "object",
92
+ "properties": {
93
+ "method": {
94
+ "type": "string",
95
+ "enum": ["POST", "PUT", "GET"]
96
+ },
97
+ "body": {
98
+ "oneOf": [
99
+ {
100
+ "type": "object",
101
+ "properties": {
102
+ "mode": {
103
+ "type": "string",
104
+ "const": "envelope"
105
+ }
106
+ },
107
+ "required": ["mode"]
108
+ },
109
+ {
110
+ "type": "object",
111
+ "properties": {
112
+ "mode": {
113
+ "type": "string",
114
+ "const": "none"
115
+ }
116
+ },
117
+ "required": ["mode"]
118
+ },
119
+ {
120
+ "type": "object",
121
+ "properties": {
122
+ "mode": {
123
+ "type": "string",
124
+ "const": "json"
125
+ },
126
+ "value": {
127
+ "$ref": "#/$defs/__schema0"
128
+ }
129
+ },
130
+ "required": ["mode"]
131
+ }
132
+ ]
133
+ },
134
+ "headers": {
135
+ "type": "array",
136
+ "items": {
137
+ "anyOf": [
138
+ {
139
+ "type": "object",
140
+ "properties": {
141
+ "name": {
142
+ "type": "string",
143
+ "minLength": 1
144
+ },
145
+ "secret": {
146
+ "type": "boolean",
147
+ "const": false
148
+ },
149
+ "value": {
150
+ "type": "string"
151
+ }
152
+ },
153
+ "required": ["name", "secret", "value"]
154
+ },
155
+ {
156
+ "type": "object",
157
+ "properties": {
158
+ "name": {
159
+ "type": "string",
160
+ "minLength": 1
161
+ },
162
+ "secret": {
163
+ "type": "boolean",
164
+ "const": true
165
+ },
166
+ "configured": {
167
+ "type": "boolean",
168
+ "const": true
169
+ },
170
+ "value": {
171
+ "not": {}
172
+ }
173
+ },
174
+ "required": ["name", "secret", "configured"]
175
+ },
176
+ {
177
+ "type": "object",
178
+ "properties": {
179
+ "name": {
180
+ "type": "string",
181
+ "minLength": 1
182
+ },
183
+ "suppressed": {
184
+ "type": "boolean",
185
+ "const": true
186
+ }
187
+ },
188
+ "required": ["name", "suppressed"]
189
+ }
190
+ ]
191
+ }
192
+ }
193
+ },
194
+ "required": ["method", "body", "headers"]
195
+ },
90
196
  "archivedAt": {
91
197
  "type": "string",
92
198
  "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z$"
93
199
  },
94
200
  "data": {
95
- "$ref": "#/$defs/__schema0"
201
+ "$ref": "#/$defs/__schema1"
96
202
  },
97
203
  "createdAt": {
98
204
  "type": "string",
@@ -238,6 +344,24 @@
238
344
  "updatedAt",
239
345
  "version"
240
346
  ]
347
+ },
348
+ "endpointSigningSecret": {
349
+ "type": "object",
350
+ "properties": {
351
+ "guidance": {
352
+ "type": "string",
353
+ "minLength": 1
354
+ },
355
+ "returned": {
356
+ "type": "boolean",
357
+ "const": false
358
+ },
359
+ "revealUrl": {
360
+ "type": "string",
361
+ "format": "uri"
362
+ }
363
+ },
364
+ "required": ["guidance", "returned"]
241
365
  }
242
366
  },
243
367
  "required": ["occurrence", "schedule"],
@@ -272,6 +396,37 @@
272
396
  }
273
397
  }
274
398
  ]
399
+ },
400
+ "__schema1": {
401
+ "anyOf": [
402
+ {
403
+ "type": "string"
404
+ },
405
+ {
406
+ "type": "number"
407
+ },
408
+ {
409
+ "type": "boolean"
410
+ },
411
+ {
412
+ "type": "null"
413
+ },
414
+ {
415
+ "type": "array",
416
+ "items": {
417
+ "$ref": "#/$defs/__schema1"
418
+ }
419
+ },
420
+ {
421
+ "type": "object",
422
+ "propertyNames": {
423
+ "type": "string"
424
+ },
425
+ "additionalProperties": {
426
+ "$ref": "#/$defs/__schema1"
427
+ }
428
+ }
429
+ ]
275
430
  }
276
431
  }
277
432
  }
@@ -87,12 +87,118 @@
87
87
  "schedule": {
88
88
  "type": "object",
89
89
  "properties": {
90
+ "http": {
91
+ "type": "object",
92
+ "properties": {
93
+ "method": {
94
+ "type": "string",
95
+ "enum": ["POST", "PUT", "GET"]
96
+ },
97
+ "body": {
98
+ "oneOf": [
99
+ {
100
+ "type": "object",
101
+ "properties": {
102
+ "mode": {
103
+ "type": "string",
104
+ "const": "envelope"
105
+ }
106
+ },
107
+ "required": ["mode"]
108
+ },
109
+ {
110
+ "type": "object",
111
+ "properties": {
112
+ "mode": {
113
+ "type": "string",
114
+ "const": "none"
115
+ }
116
+ },
117
+ "required": ["mode"]
118
+ },
119
+ {
120
+ "type": "object",
121
+ "properties": {
122
+ "mode": {
123
+ "type": "string",
124
+ "const": "json"
125
+ },
126
+ "value": {
127
+ "$ref": "#/$defs/__schema0"
128
+ }
129
+ },
130
+ "required": ["mode"]
131
+ }
132
+ ]
133
+ },
134
+ "headers": {
135
+ "type": "array",
136
+ "items": {
137
+ "anyOf": [
138
+ {
139
+ "type": "object",
140
+ "properties": {
141
+ "name": {
142
+ "type": "string",
143
+ "minLength": 1
144
+ },
145
+ "secret": {
146
+ "type": "boolean",
147
+ "const": false
148
+ },
149
+ "value": {
150
+ "type": "string"
151
+ }
152
+ },
153
+ "required": ["name", "secret", "value"]
154
+ },
155
+ {
156
+ "type": "object",
157
+ "properties": {
158
+ "name": {
159
+ "type": "string",
160
+ "minLength": 1
161
+ },
162
+ "secret": {
163
+ "type": "boolean",
164
+ "const": true
165
+ },
166
+ "configured": {
167
+ "type": "boolean",
168
+ "const": true
169
+ },
170
+ "value": {
171
+ "not": {}
172
+ }
173
+ },
174
+ "required": ["name", "secret", "configured"]
175
+ },
176
+ {
177
+ "type": "object",
178
+ "properties": {
179
+ "name": {
180
+ "type": "string",
181
+ "minLength": 1
182
+ },
183
+ "suppressed": {
184
+ "type": "boolean",
185
+ "const": true
186
+ }
187
+ },
188
+ "required": ["name", "suppressed"]
189
+ }
190
+ ]
191
+ }
192
+ }
193
+ },
194
+ "required": ["method", "body", "headers"]
195
+ },
90
196
  "archivedAt": {
91
197
  "type": "string",
92
198
  "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z$"
93
199
  },
94
200
  "data": {
95
- "$ref": "#/$defs/__schema0"
201
+ "$ref": "#/$defs/__schema1"
96
202
  },
97
203
  "createdAt": {
98
204
  "type": "string",
@@ -272,6 +378,37 @@
272
378
  }
273
379
  }
274
380
  ]
381
+ },
382
+ "__schema1": {
383
+ "anyOf": [
384
+ {
385
+ "type": "string"
386
+ },
387
+ {
388
+ "type": "number"
389
+ },
390
+ {
391
+ "type": "boolean"
392
+ },
393
+ {
394
+ "type": "null"
395
+ },
396
+ {
397
+ "type": "array",
398
+ "items": {
399
+ "$ref": "#/$defs/__schema1"
400
+ }
401
+ },
402
+ {
403
+ "type": "object",
404
+ "propertyNames": {
405
+ "type": "string"
406
+ },
407
+ "additionalProperties": {
408
+ "$ref": "#/$defs/__schema1"
409
+ }
410
+ }
411
+ ]
275
412
  }
276
413
  }
277
414
  }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X POST \"$GREATWAIT_API_URL/v1/billing/funding/$GREATWAIT_PAYMENTOPERATION/confirm\" \\\n --variable %GREATWAIT_API_KEY \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_API_KEY}}\"",
3
+ "environments": ["live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_API_KEY,\n fetch,\n});\n\nconst paymentOperation = process.env.GREATWAIT_PAYMENTOPERATION;\n\nconst result = await greatwait.request(\"billing_fundingconfirm\", paymentOperation);",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {\n \"paymentOperation\": \"$PAYMENTOPERATION\"\n },\n \"name\": \"billing_fundingconfirm\"\n}"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X GET \"$GREATWAIT_API_URL/v1/billing/invoice-history\" \\\n --variable %GREATWAIT_API_KEY \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_API_KEY}}\"",
3
+ "environments": ["test", "live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_API_KEY,\n fetch,\n});\n\nconst result = await greatwait.request(\"billing_invoicehistory\");",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {},\n \"name\": \"billing_invoicehistory\"\n}"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X GET \"$GREATWAIT_API_URL/v1/billing/invoices\" \\\n --variable %GREATWAIT_API_KEY \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_API_KEY}}\"",
3
+ "environments": ["test", "live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_API_KEY,\n fetch,\n});\n\nconst result = await greatwait.request(\"billing_invoices\");",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {},\n \"name\": \"billing_invoices\"\n}"
6
+ }
@@ -2,5 +2,5 @@
2
2
  "curl": "curl -sS -X PATCH \"$GREATWAIT_API_URL/v1/billing/notification-settings\" \\\n --variable %GREATWAIT_API_KEY \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_API_KEY}}\" \\\n -H 'Content-Type: application/json' \\\n -H 'Idempotency-Key: $GREATWAIT_IDEMPOTENCY_KEY' \\\n --data-binary '{\"expectedRevision\":1,\"lowCreditThreshold\":{\"currency\":\"USD\",\"microdollars\":\"2000000\",\"scale\":6},\"noncriticalEmail\":false}'",
3
3
  "environments": ["live"],
4
4
  "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_API_KEY,\n fetch,\n});\n\nconst body = {\n \"expectedRevision\": 1,\n \"lowCreditThreshold\": {\n \"currency\": \"USD\",\n \"microdollars\": \"2000000\",\n \"scale\": 6\n },\n \"noncriticalEmail\": false\n};\n\nconst result = await greatwait.request(\"billing_notificationsettingsupdate\", body, { \"Idempotency-Key\": process.env.GREATWAIT_IDEMPOTENCY_KEY });",
5
- "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {\n \"Idempotency-Key\": \"$IDEMPOTENCY_KEY\",\n \"expectedRevision\": 1,\n \"lowCreditThreshold\": {\n \"currency\": \"USD\",\n \"microdollars\": \"2000000\",\n \"scale\": 6\n },\n \"noncriticalEmail\": false\n },\n \"name\": \"billing_notificationsettingsupdate\"\n}"
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {\n \"Idempotency-Key\": \"$IDEMPOTENCY_KEY\",\n \"expectedRevision\": 1,\n \"noncriticalEmail\": false,\n \"lowCreditThreshold\": {\n \"currency\": \"USD\",\n \"microdollars\": \"2000000\",\n \"scale\": 6\n }\n },\n \"name\": \"billing_notificationsettingsupdate\"\n}"
6
6
  }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X GET \"$GREATWAIT_API_URL/v1/billing/payment-history\" \\\n --variable %GREATWAIT_API_KEY \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_API_KEY}}\"",
3
+ "environments": ["test", "live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_API_KEY,\n fetch,\n});\n\nconst result = await greatwait.request(\"billing_paymenthistory\");",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {},\n \"name\": \"billing_paymenthistory\"\n}"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X GET \"$GREATWAIT_API_URL/v1/billing/payment-method\" \\\n --variable %GREATWAIT_API_KEY \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_API_KEY}}\"",
3
+ "environments": ["test", "live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_API_KEY,\n fetch,\n});\n\nconst result = await greatwait.request(\"billing_paymentmethod\");",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {},\n \"name\": \"billing_paymentmethod\"\n}"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X POST \"$GREATWAIT_API_URL/v1/billing/payment-method/confirm\" \\\n --variable %GREATWAIT_API_KEY \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_API_KEY}}\" \\\n -H 'Content-Type: application/json' \\\n --data-binary '{\"checkoutSession\":\"cs_example_card_setup\"}'",
3
+ "environments": ["live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_API_KEY,\n fetch,\n});\n\nconst body = {\n \"checkoutSession\": \"cs_example_card_setup\"\n};\n\nconst result = await greatwait.request(\"billing_paymentmethodconfirm\", body);",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {\n \"checkoutSession\": \"cs_example_card_setup\"\n },\n \"name\": \"billing_paymentmethodconfirm\"\n}"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X POST \"$GREATWAIT_API_URL/v1/billing/payment-method/remove\" \\\n --variable %GREATWAIT_API_KEY \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_API_KEY}}\" \\\n -H 'Content-Type: application/json' \\\n --data-binary '{\"confirmed\":true}'",
3
+ "environments": ["live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_API_KEY,\n fetch,\n});\n\nconst body = {\n \"confirmed\": true\n};\n\nconst result = await greatwait.request(\"billing_paymentmethodremove\", body);",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {\n \"confirmed\": true\n },\n \"name\": \"billing_paymentmethodremove\"\n}"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X POST \"$GREATWAIT_API_URL/v1/billing/payment-method/setup\" \\\n --variable %GREATWAIT_API_KEY \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_API_KEY}}\" \\\n -H 'Content-Type: application/json' \\\n --data-binary '{}'",
3
+ "environments": ["live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_API_KEY,\n fetch,\n});\n\nconst body = {};\n\nconst result = await greatwait.request(\"billing_paymentmethodsetup\", body);",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {},\n \"name\": \"billing_paymentmethodsetup\"\n}"
6
+ }
@@ -2,5 +2,5 @@
2
2
  "curl": "curl -sS -X POST \"$GREATWAIT_API_URL/v1/endpoints\" \\\n --variable %GREATWAIT_API_KEY \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_API_KEY}}\" \\\n -H 'Content-Type: application/json' \\\n --data-binary '{\"url\":\"https://hooks.example.com/greatwait\"}'",
3
3
  "environments": ["test", "live"],
4
4
  "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_API_KEY,\n fetch,\n});\n\nconst body = {\n \"url\": \"https://hooks.example.com/greatwait\"\n};\n\nconst result = await greatwait.request(\"endpoints_create\", body);",
5
- "mcp": "// endpoints.create is not on the MCP surface.\n// Creation returns a one-time endpoint signing secret, and MCP has no negotiated secure-result channel that can keep it out of ordinary tool history."
5
+ "mcp": "// endpoints.create is not on the MCP surface.\n// Creation returns a one-time endpoint signing secret, and MCP has no negotiated secure-result channel that can keep it out of ordinary tool history. Agents use endpoints_ensure, or schedules_create with a `url`, which create an endpoint without returning its secret."
6
6
  }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X POST \"$GREATWAIT_API_URL/v1/endpoints/ensure\" \\\n --variable %GREATWAIT_API_KEY \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_API_KEY}}\" \\\n -H 'Content-Type: application/json' \\\n --data-binary '{\"url\":\"https://hooks.example.com/greatwait\"}'",
3
+ "environments": ["test", "live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_API_KEY,\n fetch,\n});\n\nconst body = {\n \"url\": \"https://hooks.example.com/greatwait\"\n};\n\nconst result = await greatwait.request(\"endpoints_ensure\", body);",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {\n \"url\": \"https://hooks.example.com/greatwait\"\n },\n \"name\": \"endpoints_ensure\"\n}"
6
+ }
@@ -2,5 +2,5 @@
2
2
  "curl": "curl -sS -X GET \"$GREATWAIT_API_URL/v1/forecast/windows\" \\\n --variable %GREATWAIT_API_KEY \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_API_KEY}}\"",
3
3
  "environments": ["test", "live"],
4
4
  "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_API_KEY,\n fetch,\n});\n\nconst result = await greatwait.request(\"forecast_windows\");",
5
- "mcp": "// forecast.windows is not on the MCP surface.\n// A transitional shape for the autoscaler migration, scheduled for withdrawal once W6-02 has cut over. forecast.read is the same data in the shape this product publishes, and it is the tool an agent should reach for."
5
+ "mcp": "// forecast.windows is not on the MCP surface.\n// A transitional shape for the autoscaler migration, withdrawn after its cutover. forecast.read is the same data in the shape this product publishes, and it is the tool an agent should reach for."
6
6
  }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X POST \"$GREATWAIT_API_URL/v1/organization/invitations\" \\\n --variable %GREATWAIT_SESSION_TOKEN \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_SESSION_TOKEN}}\" \\\n -H 'Content-Type: application/json' \\\n -H 'Idempotency-Key: $GREATWAIT_IDEMPOTENCY_KEY' \\\n --data-binary '{\"email\":\"teammate@example.com\",\"role\":\"member\",\"projects\":[\"proj_01h8xyz9k2m4n6p8r0t2v4w6y8\"]}'",
3
+ "environments": ["test", "live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_SESSION_TOKEN,\n fetch,\n});\n\nconst body = {\n \"email\": \"teammate@example.com\",\n \"role\": \"member\",\n \"projects\": [\n \"proj_01h8xyz9k2m4n6p8r0t2v4w6y8\"\n ]\n};\n\nconst result = await greatwait.request(\"invitations_create\", body, { \"Idempotency-Key\": process.env.GREATWAIT_IDEMPOTENCY_KEY });",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {\n \"Idempotency-Key\": \"$IDEMPOTENCY_KEY\",\n \"email\": \"teammate@example.com\",\n \"projects\": [\n \"proj_01h8xyz9k2m4n6p8r0t2v4w6y8\"\n ],\n \"role\": \"member\"\n },\n \"name\": \"invitations_create\"\n}"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X GET \"$GREATWAIT_API_URL/v1/organization/invitations\" \\\n --variable %GREATWAIT_SESSION_TOKEN \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_SESSION_TOKEN}}\"",
3
+ "environments": ["test", "live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_SESSION_TOKEN,\n fetch,\n});\n\nconst result = await greatwait.request(\"invitations_list\");",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {},\n \"name\": \"invitations_list\"\n}"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X POST \"$GREATWAIT_API_URL/v1/organization/invitations/$GREATWAIT_INVITATIONID/resend\" \\\n --variable %GREATWAIT_SESSION_TOKEN \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_SESSION_TOKEN}}\" \\\n -H 'Content-Type: application/json' \\\n -H 'Idempotency-Key: $GREATWAIT_IDEMPOTENCY_KEY' \\\n --data-binary '{}'",
3
+ "environments": ["test", "live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_SESSION_TOKEN,\n fetch,\n});\n\nconst invitationId = process.env.GREATWAIT_INVITATIONID;\n\nconst body = {};\n\nconst result = await greatwait.request(\"invitations_resend\", invitationId, body, { \"Idempotency-Key\": process.env.GREATWAIT_IDEMPOTENCY_KEY });",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {\n \"Idempotency-Key\": \"$IDEMPOTENCY_KEY\",\n \"invitationId\": \"$INVITATIONID\"\n },\n \"name\": \"invitations_resend\"\n}"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X POST \"$GREATWAIT_API_URL/v1/organization/invitations/$GREATWAIT_INVITATIONID/revoke\" \\\n --variable %GREATWAIT_SESSION_TOKEN \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_SESSION_TOKEN}}\" \\\n -H 'Content-Type: application/json' \\\n -H 'Idempotency-Key: $GREATWAIT_IDEMPOTENCY_KEY' \\\n --data-binary '{\"confirmed\":true}'",
3
+ "environments": ["test", "live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_SESSION_TOKEN,\n fetch,\n});\n\nconst invitationId = process.env.GREATWAIT_INVITATIONID;\n\nconst body = {\n \"confirmed\": true\n};\n\nconst result = await greatwait.request(\"invitations_revoke\", invitationId, body, { \"Idempotency-Key\": process.env.GREATWAIT_IDEMPOTENCY_KEY });",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {\n \"Idempotency-Key\": \"$IDEMPOTENCY_KEY\",\n \"confirmed\": true,\n \"invitationId\": \"$INVITATIONID\"\n },\n \"name\": \"invitations_revoke\"\n}"
6
+ }
@@ -2,5 +2,5 @@
2
2
  "curl": "curl -sS -X POST \"$GREATWAIT_API_URL/v1/endpoints\" \\\n --variable %GREATWAIT_API_KEY \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_API_KEY}}\" \\\n -H 'Content-Type: application/json' \\\n --data-binary '{\"url\":\"$GREATWAIT_RECEIVER_URL\"}'",
3
3
  "environments": ["test", "live"],
4
4
  "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_API_KEY,\n fetch,\n});\n\nconst body = {\n \"url\": process.env.GREATWAIT_RECEIVER_URL\n};\n\nconst result = await greatwait.request(\"endpoints_create\", body);",
5
- "mcp": "// endpoints.create is not on the MCP surface.\n// Creation returns a one-time endpoint signing secret, and MCP has no negotiated secure-result channel that can keep it out of ordinary tool history."
5
+ "mcp": "// endpoints.create is not on the MCP surface.\n// Creation returns a one-time endpoint signing secret, and MCP has no negotiated secure-result channel that can keep it out of ordinary tool history. Agents use endpoints_ensure, or schedules_create with a `url`, which create an endpoint without returning its secret."
6
6
  }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X GET \"$GREATWAIT_API_URL/v1/limits\" \\\n --variable %GREATWAIT_API_KEY \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_API_KEY}}\"",
3
+ "environments": ["test", "live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_API_KEY,\n fetch,\n});\n\nconst result = await greatwait.request(\"limits_read\");",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {},\n \"name\": \"limits_read\"\n}"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X GET \"$GREATWAIT_API_URL/v1/organization/members\" \\\n --variable %GREATWAIT_SESSION_TOKEN \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_SESSION_TOKEN}}\"",
3
+ "environments": ["test", "live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_SESSION_TOKEN,\n fetch,\n});\n\nconst result = await greatwait.request(\"members_list\");",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {},\n \"name\": \"members_list\"\n}"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X POST \"$GREATWAIT_API_URL/v1/organization/members/$GREATWAIT_MEMBERID/remove\" \\\n --variable %GREATWAIT_SESSION_TOKEN \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_SESSION_TOKEN}}\" \\\n -H 'Content-Type: application/json' \\\n -H 'Idempotency-Key: $GREATWAIT_IDEMPOTENCY_KEY' \\\n --data-binary '{\"confirmed\":true}'",
3
+ "environments": ["test", "live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_SESSION_TOKEN,\n fetch,\n});\n\nconst memberId = process.env.GREATWAIT_MEMBERID;\n\nconst body = {\n \"confirmed\": true\n};\n\nconst result = await greatwait.request(\"members_remove\", memberId, body, { \"Idempotency-Key\": process.env.GREATWAIT_IDEMPOTENCY_KEY });",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {\n \"Idempotency-Key\": \"$IDEMPOTENCY_KEY\",\n \"confirmed\": true,\n \"memberId\": \"$MEMBERID\"\n },\n \"name\": \"members_remove\"\n}"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X PATCH \"$GREATWAIT_API_URL/v1/organization/members/$GREATWAIT_MEMBERID\" \\\n --variable %GREATWAIT_SESSION_TOKEN \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_SESSION_TOKEN}}\" \\\n -H 'Content-Type: application/json' \\\n -H 'Idempotency-Key: $GREATWAIT_IDEMPOTENCY_KEY' \\\n --data-binary '{\"role\":\"member\"}'",
3
+ "environments": ["test", "live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_SESSION_TOKEN,\n fetch,\n});\n\nconst memberId = process.env.GREATWAIT_MEMBERID;\n\nconst body = {\n \"role\": \"member\"\n};\n\nconst result = await greatwait.request(\"members_role\", memberId, body, { \"Idempotency-Key\": process.env.GREATWAIT_IDEMPOTENCY_KEY });",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {\n \"Idempotency-Key\": \"$IDEMPOTENCY_KEY\",\n \"memberId\": \"$MEMBERID\",\n \"role\": \"member\"\n },\n \"name\": \"members_role\"\n}"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X PUT \"$GREATWAIT_API_URL/v1/projects/$GREATWAIT_PROJECTID/members/$GREATWAIT_MEMBERID\" \\\n --variable %GREATWAIT_SESSION_TOKEN \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_SESSION_TOKEN}}\" \\\n -H 'Greatwait-Project: $GREATWAIT_PROJECT' \\\n -H 'Greatwait-Environment: $GREATWAIT_ENVIRONMENT' \\\n -H 'Content-Type: application/json' \\\n -H 'Idempotency-Key: $GREATWAIT_IDEMPOTENCY_KEY' \\\n --data-binary '{}'",
3
+ "environments": ["test", "live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst named = (input, init = {}) =>\n fetch(input, {\n ...init,\n headers: {\n ...init.headers,\n \"Greatwait-Project\": process.env.GREATWAIT_PROJECT,\n \"Greatwait-Environment\": process.env.GREATWAIT_ENVIRONMENT,\n },\n });\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_SESSION_TOKEN,\n fetch: named,\n});\n\nconst projectId = process.env.GREATWAIT_PROJECTID;\nconst memberId = process.env.GREATWAIT_MEMBERID;\n\nconst body = {};\n\nconst result = await greatwait.request(\"projectmembers_add\", projectId, memberId, body, { \"Idempotency-Key\": process.env.GREATWAIT_IDEMPOTENCY_KEY });",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {\n \"Idempotency-Key\": \"$IDEMPOTENCY_KEY\",\n \"memberId\": \"$MEMBERID\",\n \"projectId\": \"$PROJECTID\"\n },\n \"name\": \"projectmembers_add\"\n}"
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "curl": "curl -sS -X POST \"$GREATWAIT_API_URL/v1/projects/$GREATWAIT_PROJECTID/members/$GREATWAIT_MEMBERID/remove\" \\\n --variable %GREATWAIT_SESSION_TOKEN \\\n --expand-header \"Authorization: Bearer {{GREATWAIT_SESSION_TOKEN}}\" \\\n -H 'Greatwait-Project: $GREATWAIT_PROJECT' \\\n -H 'Greatwait-Environment: $GREATWAIT_ENVIRONMENT' \\\n -H 'Content-Type: application/json' \\\n -H 'Idempotency-Key: $GREATWAIT_IDEMPOTENCY_KEY' \\\n --data-binary '{\"confirmed\":true}'",
3
+ "environments": ["test", "live"],
4
+ "javascript": "import { createGreatwaitClient } from \"@greatwait/api-client\";\n\nconst named = (input, init = {}) =>\n fetch(input, {\n ...init,\n headers: {\n ...init.headers,\n \"Greatwait-Project\": process.env.GREATWAIT_PROJECT,\n \"Greatwait-Environment\": process.env.GREATWAIT_ENVIRONMENT,\n },\n });\n\nconst greatwait = createGreatwaitClient({\n baseUrl: process.env.GREATWAIT_API_URL,\n credential: process.env.GREATWAIT_SESSION_TOKEN,\n fetch: named,\n});\n\nconst projectId = process.env.GREATWAIT_PROJECTID;\nconst memberId = process.env.GREATWAIT_MEMBERID;\n\nconst body = {\n \"confirmed\": true\n};\n\nconst result = await greatwait.request(\"projectmembers_remove\", projectId, memberId, body, { \"Idempotency-Key\": process.env.GREATWAIT_IDEMPOTENCY_KEY });",
5
+ "mcp": "// Any MCP client, against $GREATWAIT_API_URL/mcp.\n{\n \"arguments\": {\n \"Idempotency-Key\": \"$IDEMPOTENCY_KEY\",\n \"confirmed\": true,\n \"memberId\": \"$MEMBERID\",\n \"projectId\": \"$PROJECTID\"\n },\n \"name\": \"projectmembers_remove\"\n}"
6
+ }
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "dependencies": {
6
6
  "zod": "4.4.3"
7
7
  },
8
- "description": "Public contracts for the Greatwait scheduling API: schemas, problem codes, the operation registry, and the generated OpenAPI documents.",
8
+ "description": "Public contracts for the GreatWait scheduling API: schemas, problem codes, the operation registry, and the generated OpenAPI documents.",
9
9
  "engines": {
10
10
  "node": ">=22.13.0"
11
11
  },
@@ -100,6 +100,11 @@
100
100
  "import": "./dist/time.js",
101
101
  "default": "./dist/time.js"
102
102
  },
103
+ "./operational-config": {
104
+ "types": "./dist/operational-config.d.ts",
105
+ "import": "./dist/operational-config.js",
106
+ "default": "./dist/operational-config.js"
107
+ },
103
108
  "./workspace": {
104
109
  "types": "./dist/workspace.d.ts",
105
110
  "import": "./dist/workspace.js",
@@ -149,5 +154,5 @@
149
154
  },
150
155
  "sideEffects": false,
151
156
  "type": "module",
152
- "version": "0.1.0-alpha.4"
157
+ "version": "0.1.0-alpha.6"
153
158
  }