asc-mcp-pro 0.1.0

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 (84) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +241 -0
  3. package/build/auth.d.ts +8 -0
  4. package/build/auth.js +44 -0
  5. package/build/auth.js.map +1 -0
  6. package/build/client.d.ts +21 -0
  7. package/build/client.js +91 -0
  8. package/build/client.js.map +1 -0
  9. package/build/index.d.ts +2 -0
  10. package/build/index.js +47 -0
  11. package/build/index.js.map +1 -0
  12. package/build/lib/jsonapi-write.d.ts +32 -0
  13. package/build/lib/jsonapi-write.js +18 -0
  14. package/build/lib/jsonapi-write.js.map +1 -0
  15. package/build/lib/jsonapi.d.ts +27 -0
  16. package/build/lib/jsonapi.js +27 -0
  17. package/build/lib/jsonapi.js.map +1 -0
  18. package/build/lib/locales.d.ts +24 -0
  19. package/build/lib/locales.js +66 -0
  20. package/build/lib/locales.js.map +1 -0
  21. package/build/lib/pagination.d.ts +11 -0
  22. package/build/lib/pagination.js +23 -0
  23. package/build/lib/pagination.js.map +1 -0
  24. package/build/lib/projections.d.ts +8 -0
  25. package/build/lib/projections.js +51 -0
  26. package/build/lib/projections.js.map +1 -0
  27. package/build/lib/upload.d.ts +38 -0
  28. package/build/lib/upload.js +133 -0
  29. package/build/lib/upload.js.map +1 -0
  30. package/build/tools/apps.d.ts +3 -0
  31. package/build/tools/apps.js +160 -0
  32. package/build/tools/apps.js.map +1 -0
  33. package/build/tools/builds.d.ts +3 -0
  34. package/build/tools/builds.js +158 -0
  35. package/build/tools/builds.js.map +1 -0
  36. package/build/tools/iap.d.ts +3 -0
  37. package/build/tools/iap.js +501 -0
  38. package/build/tools/iap.js.map +1 -0
  39. package/build/tools/ping.d.ts +3 -0
  40. package/build/tools/ping.js +12 -0
  41. package/build/tools/ping.js.map +1 -0
  42. package/build/tools/pricing.d.ts +3 -0
  43. package/build/tools/pricing.js +150 -0
  44. package/build/tools/pricing.js.map +1 -0
  45. package/build/tools/privacy.d.ts +3 -0
  46. package/build/tools/privacy.js +6 -0
  47. package/build/tools/privacy.js.map +1 -0
  48. package/build/tools/provisioning.d.ts +3 -0
  49. package/build/tools/provisioning.js +343 -0
  50. package/build/tools/provisioning.js.map +1 -0
  51. package/build/tools/registry.d.ts +3 -0
  52. package/build/tools/registry.js +35 -0
  53. package/build/tools/registry.js.map +1 -0
  54. package/build/tools/reports.d.ts +3 -0
  55. package/build/tools/reports.js +177 -0
  56. package/build/tools/reports.js.map +1 -0
  57. package/build/tools/reviews.d.ts +3 -0
  58. package/build/tools/reviews.js +51 -0
  59. package/build/tools/reviews.js.map +1 -0
  60. package/build/tools/runner.d.ts +3 -0
  61. package/build/tools/runner.js +174 -0
  62. package/build/tools/runner.js.map +1 -0
  63. package/build/tools/screenshots.d.ts +3 -0
  64. package/build/tools/screenshots.js +228 -0
  65. package/build/tools/screenshots.js.map +1 -0
  66. package/build/tools/testflight.d.ts +3 -0
  67. package/build/tools/testflight.js +360 -0
  68. package/build/tools/testflight.js.map +1 -0
  69. package/build/tools/types.d.ts +7 -0
  70. package/build/tools/types.js +2 -0
  71. package/build/tools/types.js.map +1 -0
  72. package/build/tools/users.d.ts +3 -0
  73. package/build/tools/users.js +65 -0
  74. package/build/tools/users.js.map +1 -0
  75. package/build/tools/versions.d.ts +3 -0
  76. package/build/tools/versions.js +443 -0
  77. package/build/tools/versions.js.map +1 -0
  78. package/build/tools/workflows.d.ts +3 -0
  79. package/build/tools/workflows.js +633 -0
  80. package/build/tools/workflows.js.map +1 -0
  81. package/examples/localize.workflow.json +30 -0
  82. package/examples/release.workflow.json +49 -0
  83. package/examples/testflight.workflow.json +21 -0
  84. package/package.json +59 -0
@@ -0,0 +1,501 @@
1
+ import { z } from "zod";
2
+ import { DEFAULT_FIELDS } from "../lib/projections.js";
3
+ import { patchBody, postBody, singleRel, maybeSend } from "../lib/jsonapi-write.js";
4
+ import { APP_STORE_LOCALES } from "../lib/locales.js";
5
+ const IAP_TYPES = ["CONSUMABLE", "NON_CONSUMABLE", "NON_RENEWING_SUBSCRIPTION"];
6
+ const SUBSCRIPTION_PERIODS = ["ONE_WEEK", "ONE_MONTH", "TWO_MONTHS", "THREE_MONTHS", "SIX_MONTHS", "ONE_YEAR"];
7
+ const FAMILY_SHARABLE = z.boolean();
8
+ export function iapTools(client) {
9
+ return [
10
+ {
11
+ name: "asc_iap_list",
12
+ description: "List In-App Purchases for an app (v2 API — includes consumables, non-consumables, non-renewing subs).",
13
+ inputSchema: z.object({
14
+ appId: z.string(),
15
+ state: z
16
+ .string()
17
+ .optional()
18
+ .describe("e.g. MISSING_METADATA, READY_TO_SUBMIT, IN_REVIEW, APPROVED, DEVELOPER_REMOVED_FROM_SALE"),
19
+ type: z
20
+ .enum(["CONSUMABLE", "NON_CONSUMABLE", "NON_RENEWING_SUBSCRIPTION"])
21
+ .optional(),
22
+ limit: z.number().int().min(1).max(200).optional(),
23
+ }),
24
+ handler: async ({ appId, state, type, limit }) => client.request(`/apps/${appId}/inAppPurchasesV2`, {
25
+ query: {
26
+ "filter[state]": state,
27
+ "filter[inAppPurchaseType]": type,
28
+ limit: limit ?? 50,
29
+ "fields[inAppPurchases]": DEFAULT_FIELDS.inAppPurchases,
30
+ },
31
+ }),
32
+ },
33
+ {
34
+ name: "asc_iap_get",
35
+ description: "Get one IAP by id.",
36
+ inputSchema: z.object({
37
+ iapId: z.string(),
38
+ include: z
39
+ .array(z.string())
40
+ .optional()
41
+ .describe("e.g. inAppPurchaseLocalizations, pricePoints, content, appStoreReviewScreenshot, promotedPurchase"),
42
+ }),
43
+ handler: async ({ iapId, include }) => client.request(`/inAppPurchases/${iapId}`, { query: { include } }),
44
+ },
45
+ {
46
+ name: "asc_iap_list_localizations",
47
+ description: "List per-locale name + description for an IAP.",
48
+ inputSchema: z.object({
49
+ iapId: z.string(),
50
+ limit: z.number().int().min(1).max(200).optional(),
51
+ }),
52
+ handler: async ({ iapId, limit }) => client.request(`/inAppPurchases/${iapId}/inAppPurchaseLocalizations`, {
53
+ query: { limit: limit ?? 50 },
54
+ }),
55
+ },
56
+ {
57
+ name: "asc_iap_get_localization",
58
+ description: "Get one IAP localization by id.",
59
+ inputSchema: z.object({ localizationId: z.string() }),
60
+ handler: async ({ localizationId }) => client.request(`/inAppPurchaseLocalizations/${localizationId}`),
61
+ },
62
+ {
63
+ name: "asc_subscription_groups_list",
64
+ description: "List subscription groups for an app.",
65
+ inputSchema: z.object({
66
+ appId: z.string(),
67
+ limit: z.number().int().min(1).max(200).optional(),
68
+ }),
69
+ handler: async ({ appId, limit }) => client.request(`/apps/${appId}/subscriptionGroups`, {
70
+ query: {
71
+ limit: limit ?? 50,
72
+ "fields[subscriptionGroups]": DEFAULT_FIELDS.subscriptionGroups,
73
+ },
74
+ }),
75
+ },
76
+ {
77
+ name: "asc_subscription_groups_get",
78
+ description: "Get one subscription group by id.",
79
+ inputSchema: z.object({
80
+ groupId: z.string(),
81
+ include: z.array(z.string()).optional().describe("e.g. subscriptions, subscriptionGroupLocalizations"),
82
+ }),
83
+ handler: async ({ groupId, include }) => client.request(`/subscriptionGroups/${groupId}`, { query: { include } }),
84
+ },
85
+ {
86
+ name: "asc_subscriptions_list",
87
+ description: "List subscriptions in a group.",
88
+ inputSchema: z.object({
89
+ groupId: z.string(),
90
+ state: z.string().optional(),
91
+ limit: z.number().int().min(1).max(200).optional(),
92
+ }),
93
+ handler: async ({ groupId, state, limit }) => client.request(`/subscriptionGroups/${groupId}/subscriptions`, {
94
+ query: {
95
+ "filter[state]": state,
96
+ limit: limit ?? 50,
97
+ "fields[subscriptions]": DEFAULT_FIELDS.subscriptions,
98
+ },
99
+ }),
100
+ },
101
+ {
102
+ name: "asc_subscriptions_get",
103
+ description: "Get one subscription by id.",
104
+ inputSchema: z.object({
105
+ subscriptionId: z.string(),
106
+ include: z
107
+ .array(z.string())
108
+ .optional()
109
+ .describe("e.g. prices, subscriptionLocalizations, introductoryOffers, promotionalOffers, promotedPurchase, appStoreReviewScreenshot"),
110
+ }),
111
+ handler: async ({ subscriptionId, include }) => client.request(`/subscriptions/${subscriptionId}`, { query: { include } }),
112
+ },
113
+ {
114
+ name: "asc_subscriptions_list_prices",
115
+ description: "List subscription prices (per territory) for a subscription.",
116
+ inputSchema: z.object({
117
+ subscriptionId: z.string(),
118
+ limit: z.number().int().min(1).max(200).optional(),
119
+ }),
120
+ handler: async ({ subscriptionId, limit }) => client.request(`/subscriptions/${subscriptionId}/prices`, {
121
+ query: { limit: limit ?? 100 },
122
+ }),
123
+ },
124
+ {
125
+ name: "asc_subscriptions_list_promotional_offers",
126
+ description: "List promotional offers for a subscription.",
127
+ inputSchema: z.object({
128
+ subscriptionId: z.string(),
129
+ limit: z.number().int().min(1).max(200).optional(),
130
+ }),
131
+ handler: async ({ subscriptionId, limit }) => client.request(`/subscriptions/${subscriptionId}/promotionalOffers`, {
132
+ query: { limit: limit ?? 50 },
133
+ }),
134
+ },
135
+ {
136
+ name: "asc_subscriptions_list_introductory_offers",
137
+ description: "List introductory offers for a subscription.",
138
+ inputSchema: z.object({
139
+ subscriptionId: z.string(),
140
+ limit: z.number().int().min(1).max(200).optional(),
141
+ }),
142
+ handler: async ({ subscriptionId, limit }) => client.request(`/subscriptions/${subscriptionId}/introductoryOffers`, {
143
+ query: { limit: limit ?? 50 },
144
+ }),
145
+ },
146
+ {
147
+ name: "asc_subscriptions_list_localizations",
148
+ description: "List per-locale name + description for a subscription.",
149
+ inputSchema: z.object({
150
+ subscriptionId: z.string(),
151
+ limit: z.number().int().min(1).max(200).optional(),
152
+ }),
153
+ handler: async ({ subscriptionId, limit }) => client.request(`/subscriptions/${subscriptionId}/subscriptionLocalizations`, {
154
+ query: { limit: limit ?? 50 },
155
+ }),
156
+ },
157
+ // ---- WRITES: Phase 5 (IAP) ----
158
+ {
159
+ name: "asc_iap_create",
160
+ description: "Create a non-subscription IAP (consumable, non-consumable, non-renewing).",
161
+ inputSchema: z.object({
162
+ appId: z.string(),
163
+ name: z.string().describe("Reference name (max 64)"),
164
+ productId: z.string().describe("Product ID (e.g. com.app.unlock)"),
165
+ inAppPurchaseType: z.enum(IAP_TYPES),
166
+ familySharable: FAMILY_SHARABLE.optional(),
167
+ reviewNote: z.string().optional(),
168
+ dryRun: z.boolean().optional(),
169
+ }),
170
+ handler: async ({ appId, dryRun, ...attrs }) => {
171
+ const body = postBody("inAppPurchases", attrs, { app: singleRel("apps", appId) });
172
+ return maybeSend(client, dryRun, "POST", `/inAppPurchases`, body);
173
+ },
174
+ },
175
+ {
176
+ name: "asc_iap_update",
177
+ description: "Update IAP attributes (name, familySharable, reviewNote, etc.).",
178
+ inputSchema: z.object({
179
+ iapId: z.string(),
180
+ attributes: z
181
+ .object({
182
+ name: z.string().optional(),
183
+ familySharable: z.boolean().optional(),
184
+ reviewNote: z.string().nullable().optional(),
185
+ availableInAllTerritories: z.boolean().optional(),
186
+ })
187
+ .refine((a) => Object.keys(a).length > 0),
188
+ dryRun: z.boolean().optional(),
189
+ }),
190
+ handler: async ({ iapId, attributes, dryRun }) => {
191
+ const body = patchBody("inAppPurchases", iapId, attributes);
192
+ return maybeSend(client, dryRun, "PATCH", `/inAppPurchases/${iapId}`, body);
193
+ },
194
+ },
195
+ {
196
+ name: "asc_iap_delete",
197
+ description: "Delete an IAP (only while in editable state).",
198
+ inputSchema: z.object({
199
+ iapId: z.string(),
200
+ dryRun: z.boolean().optional(),
201
+ }),
202
+ handler: async ({ iapId, dryRun }) => maybeSend(client, dryRun, "DELETE", `/inAppPurchases/${iapId}`),
203
+ },
204
+ {
205
+ name: "asc_iap_create_localization",
206
+ description: "Add a locale to an IAP with name + description.",
207
+ inputSchema: z.object({
208
+ iapId: z.string(),
209
+ locale: z.enum(APP_STORE_LOCALES),
210
+ name: z.string(),
211
+ description: z.string().optional(),
212
+ dryRun: z.boolean().optional(),
213
+ }),
214
+ handler: async ({ iapId, locale, name, description, dryRun }) => {
215
+ const body = postBody("inAppPurchaseLocalizations", { locale, name, description }, { inAppPurchaseV2: singleRel("inAppPurchases", iapId) });
216
+ return maybeSend(client, dryRun, "POST", `/inAppPurchaseLocalizations`, body);
217
+ },
218
+ },
219
+ {
220
+ name: "asc_iap_update_localization",
221
+ description: "Update IAP localization name/description.",
222
+ inputSchema: z.object({
223
+ localizationId: z.string(),
224
+ attributes: z
225
+ .object({
226
+ name: z.string().optional(),
227
+ description: z.string().nullable().optional(),
228
+ })
229
+ .refine((a) => Object.keys(a).length > 0),
230
+ dryRun: z.boolean().optional(),
231
+ }),
232
+ handler: async ({ localizationId, attributes, dryRun }) => {
233
+ const body = patchBody("inAppPurchaseLocalizations", localizationId, attributes);
234
+ return maybeSend(client, dryRun, "PATCH", `/inAppPurchaseLocalizations/${localizationId}`, body);
235
+ },
236
+ },
237
+ {
238
+ name: "asc_iap_delete_localization",
239
+ description: "Delete an IAP localization.",
240
+ inputSchema: z.object({
241
+ localizationId: z.string(),
242
+ dryRun: z.boolean().optional(),
243
+ }),
244
+ handler: async ({ localizationId, dryRun }) => maybeSend(client, dryRun, "DELETE", `/inAppPurchaseLocalizations/${localizationId}`),
245
+ },
246
+ {
247
+ name: "asc_iap_submit_for_review",
248
+ description: "Submit an IAP for review (v2 — uses inAppPurchaseSubmissions).",
249
+ inputSchema: z.object({
250
+ iapId: z.string(),
251
+ dryRun: z.boolean().optional(),
252
+ }),
253
+ handler: async ({ iapId, dryRun }) => {
254
+ const body = postBody("inAppPurchaseSubmissions", undefined, { inAppPurchaseV2: singleRel("inAppPurchases", iapId) });
255
+ return maybeSend(client, dryRun, "POST", `/inAppPurchaseSubmissions`, body);
256
+ },
257
+ },
258
+ // ---- WRITES: Phase 5 (Subscription groups) ----
259
+ {
260
+ name: "asc_subscription_groups_create",
261
+ description: "Create a subscription group.",
262
+ inputSchema: z.object({
263
+ appId: z.string(),
264
+ referenceName: z.string(),
265
+ dryRun: z.boolean().optional(),
266
+ }),
267
+ handler: async ({ appId, referenceName, dryRun }) => {
268
+ const body = postBody("subscriptionGroups", { referenceName }, { app: singleRel("apps", appId) });
269
+ return maybeSend(client, dryRun, "POST", `/subscriptionGroups`, body);
270
+ },
271
+ },
272
+ {
273
+ name: "asc_subscription_groups_update",
274
+ description: "Update a subscription group's reference name.",
275
+ inputSchema: z.object({
276
+ groupId: z.string(),
277
+ referenceName: z.string(),
278
+ dryRun: z.boolean().optional(),
279
+ }),
280
+ handler: async ({ groupId, referenceName, dryRun }) => {
281
+ const body = patchBody("subscriptionGroups", groupId, { referenceName });
282
+ return maybeSend(client, dryRun, "PATCH", `/subscriptionGroups/${groupId}`, body);
283
+ },
284
+ },
285
+ {
286
+ name: "asc_subscription_groups_delete",
287
+ description: "Delete a subscription group (must be empty).",
288
+ inputSchema: z.object({
289
+ groupId: z.string(),
290
+ dryRun: z.boolean().optional(),
291
+ }),
292
+ handler: async ({ groupId, dryRun }) => maybeSend(client, dryRun, "DELETE", `/subscriptionGroups/${groupId}`),
293
+ },
294
+ // ---- WRITES: Phase 5 (Subscriptions) ----
295
+ {
296
+ name: "asc_subscriptions_create",
297
+ description: "Create a subscription in a group.",
298
+ inputSchema: z.object({
299
+ groupId: z.string(),
300
+ name: z.string().describe("Reference name"),
301
+ productId: z.string(),
302
+ subscriptionPeriod: z.enum(SUBSCRIPTION_PERIODS),
303
+ familySharable: FAMILY_SHARABLE.optional(),
304
+ groupLevel: z.number().int().min(1).optional(),
305
+ availableInAllTerritories: z.boolean().optional(),
306
+ reviewNote: z.string().optional(),
307
+ dryRun: z.boolean().optional(),
308
+ }),
309
+ handler: async ({ groupId, dryRun, ...attrs }) => {
310
+ const body = postBody("subscriptions", attrs, { group: singleRel("subscriptionGroups", groupId) });
311
+ return maybeSend(client, dryRun, "POST", `/subscriptions`, body);
312
+ },
313
+ },
314
+ {
315
+ name: "asc_subscriptions_update",
316
+ description: "Update subscription attributes.",
317
+ inputSchema: z.object({
318
+ subscriptionId: z.string(),
319
+ attributes: z
320
+ .object({
321
+ name: z.string().optional(),
322
+ familySharable: z.boolean().optional(),
323
+ availableInAllTerritories: z.boolean().optional(),
324
+ groupLevel: z.number().int().min(1).optional(),
325
+ subscriptionPeriod: z.enum(SUBSCRIPTION_PERIODS).optional(),
326
+ reviewNote: z.string().nullable().optional(),
327
+ })
328
+ .refine((a) => Object.keys(a).length > 0),
329
+ dryRun: z.boolean().optional(),
330
+ }),
331
+ handler: async ({ subscriptionId, attributes, dryRun }) => {
332
+ const body = patchBody("subscriptions", subscriptionId, attributes);
333
+ return maybeSend(client, dryRun, "PATCH", `/subscriptions/${subscriptionId}`, body);
334
+ },
335
+ },
336
+ {
337
+ name: "asc_subscriptions_delete",
338
+ description: "Delete a subscription.",
339
+ inputSchema: z.object({
340
+ subscriptionId: z.string(),
341
+ dryRun: z.boolean().optional(),
342
+ }),
343
+ handler: async ({ subscriptionId, dryRun }) => maybeSend(client, dryRun, "DELETE", `/subscriptions/${subscriptionId}`),
344
+ },
345
+ {
346
+ name: "asc_subscriptions_submit_for_review",
347
+ description: "Submit a subscription for review.",
348
+ inputSchema: z.object({
349
+ subscriptionId: z.string(),
350
+ dryRun: z.boolean().optional(),
351
+ }),
352
+ handler: async ({ subscriptionId, dryRun }) => {
353
+ const body = postBody("subscriptionSubmissions", undefined, { subscription: singleRel("subscriptions", subscriptionId) });
354
+ return maybeSend(client, dryRun, "POST", `/subscriptionSubmissions`, body);
355
+ },
356
+ },
357
+ // ---- WRITES: Phase 5 (Subscription localizations, prices, offers) ----
358
+ {
359
+ name: "asc_subscriptions_create_localization",
360
+ description: "Add a locale to a subscription with name + description.",
361
+ inputSchema: z.object({
362
+ subscriptionId: z.string(),
363
+ locale: z.enum(APP_STORE_LOCALES),
364
+ name: z.string(),
365
+ description: z.string().optional(),
366
+ dryRun: z.boolean().optional(),
367
+ }),
368
+ handler: async ({ subscriptionId, locale, name, description, dryRun }) => {
369
+ const body = postBody("subscriptionLocalizations", { locale, name, description }, { subscription: singleRel("subscriptions", subscriptionId) });
370
+ return maybeSend(client, dryRun, "POST", `/subscriptionLocalizations`, body);
371
+ },
372
+ },
373
+ {
374
+ name: "asc_subscriptions_update_localization",
375
+ description: "Update a subscription localization name/description.",
376
+ inputSchema: z.object({
377
+ localizationId: z.string(),
378
+ attributes: z
379
+ .object({
380
+ name: z.string().optional(),
381
+ description: z.string().nullable().optional(),
382
+ })
383
+ .refine((a) => Object.keys(a).length > 0),
384
+ dryRun: z.boolean().optional(),
385
+ }),
386
+ handler: async ({ localizationId, attributes, dryRun }) => {
387
+ const body = patchBody("subscriptionLocalizations", localizationId, attributes);
388
+ return maybeSend(client, dryRun, "PATCH", `/subscriptionLocalizations/${localizationId}`, body);
389
+ },
390
+ },
391
+ {
392
+ name: "asc_subscriptions_delete_localization",
393
+ description: "Delete a subscription localization.",
394
+ inputSchema: z.object({
395
+ localizationId: z.string(),
396
+ dryRun: z.boolean().optional(),
397
+ }),
398
+ handler: async ({ localizationId, dryRun }) => maybeSend(client, dryRun, "DELETE", `/subscriptionLocalizations/${localizationId}`),
399
+ },
400
+ {
401
+ name: "asc_subscriptions_set_price",
402
+ description: "Set a subscription price for a territory (creates a SubscriptionPrice).",
403
+ inputSchema: z.object({
404
+ subscriptionId: z.string(),
405
+ territoryId: z.string().describe("Territory code, e.g. USA"),
406
+ subscriptionPricePointId: z.string().describe("Apple-defined price point id"),
407
+ preserveCurrentPrice: z.boolean().optional(),
408
+ startDate: z.string().optional().describe("ISO date"),
409
+ dryRun: z.boolean().optional(),
410
+ }),
411
+ handler: async ({ subscriptionId, territoryId, subscriptionPricePointId, preserveCurrentPrice, startDate, dryRun }) => {
412
+ const attrs = {};
413
+ if (preserveCurrentPrice !== undefined)
414
+ attrs.preserveCurrentPrice = preserveCurrentPrice;
415
+ if (startDate !== undefined)
416
+ attrs.startDate = startDate;
417
+ const body = postBody("subscriptionPrices", attrs, {
418
+ subscription: singleRel("subscriptions", subscriptionId),
419
+ territory: singleRel("territories", territoryId),
420
+ subscriptionPricePoint: singleRel("subscriptionPricePoints", subscriptionPricePointId),
421
+ });
422
+ return maybeSend(client, dryRun, "POST", `/subscriptionPrices`, body);
423
+ },
424
+ },
425
+ {
426
+ name: "asc_subscriptions_delete_price",
427
+ description: "Delete a subscription price.",
428
+ inputSchema: z.object({
429
+ priceId: z.string(),
430
+ dryRun: z.boolean().optional(),
431
+ }),
432
+ handler: async ({ priceId, dryRun }) => maybeSend(client, dryRun, "DELETE", `/subscriptionPrices/${priceId}`),
433
+ },
434
+ {
435
+ name: "asc_subscriptions_create_introductory_offer",
436
+ description: "Create an introductory offer for a subscription.",
437
+ inputSchema: z.object({
438
+ subscriptionId: z.string(),
439
+ territoryId: z.string(),
440
+ subscriptionPricePointId: z.string(),
441
+ offerMode: z.enum(["PAY_AS_YOU_GO", "PAY_UP_FRONT", "FREE_TRIAL"]),
442
+ duration: z.enum(["ONE_DAY", "THREE_DAYS", "ONE_WEEK", "TWO_WEEKS", "ONE_MONTH", "TWO_MONTHS", "THREE_MONTHS", "SIX_MONTHS", "ONE_YEAR"]),
443
+ numberOfPeriods: z.number().int().min(1).optional(),
444
+ startDate: z.string().optional(),
445
+ endDate: z.string().optional(),
446
+ dryRun: z.boolean().optional(),
447
+ }),
448
+ handler: async ({ subscriptionId, territoryId, subscriptionPricePointId, offerMode, duration, numberOfPeriods, startDate, endDate, dryRun }) => {
449
+ const attrs = { offerMode, duration };
450
+ if (numberOfPeriods !== undefined)
451
+ attrs.numberOfPeriods = numberOfPeriods;
452
+ if (startDate !== undefined)
453
+ attrs.startDate = startDate;
454
+ if (endDate !== undefined)
455
+ attrs.endDate = endDate;
456
+ const body = postBody("subscriptionIntroductoryOffers", attrs, {
457
+ subscription: singleRel("subscriptions", subscriptionId),
458
+ territory: singleRel("territories", territoryId),
459
+ subscriptionPricePoint: singleRel("subscriptionPricePoints", subscriptionPricePointId),
460
+ });
461
+ return maybeSend(client, dryRun, "POST", `/subscriptionIntroductoryOffers`, body);
462
+ },
463
+ },
464
+ {
465
+ name: "asc_subscriptions_delete_introductory_offer",
466
+ description: "Delete an introductory offer.",
467
+ inputSchema: z.object({
468
+ offerId: z.string(),
469
+ dryRun: z.boolean().optional(),
470
+ }),
471
+ handler: async ({ offerId, dryRun }) => maybeSend(client, dryRun, "DELETE", `/subscriptionIntroductoryOffers/${offerId}`),
472
+ },
473
+ {
474
+ name: "asc_subscriptions_create_promotional_offer",
475
+ description: "Create a promotional offer for a subscription.",
476
+ inputSchema: z.object({
477
+ subscriptionId: z.string(),
478
+ name: z.string(),
479
+ offerCode: z.string().describe("Unique code"),
480
+ offerMode: z.enum(["PAY_AS_YOU_GO", "PAY_UP_FRONT", "FREE_TRIAL"]),
481
+ duration: z.string().describe("e.g. ONE_MONTH"),
482
+ numberOfPeriods: z.number().int().min(1).optional(),
483
+ dryRun: z.boolean().optional(),
484
+ }),
485
+ handler: async ({ subscriptionId, dryRun, ...attrs }) => {
486
+ const body = postBody("subscriptionPromotionalOffers", attrs, { subscription: singleRel("subscriptions", subscriptionId) });
487
+ return maybeSend(client, dryRun, "POST", `/subscriptionPromotionalOffers`, body);
488
+ },
489
+ },
490
+ {
491
+ name: "asc_subscriptions_delete_promotional_offer",
492
+ description: "Delete a promotional offer.",
493
+ inputSchema: z.object({
494
+ offerId: z.string(),
495
+ dryRun: z.boolean().optional(),
496
+ }),
497
+ handler: async ({ offerId, dryRun }) => maybeSend(client, dryRun, "DELETE", `/subscriptionPromotionalOffers/${offerId}`),
498
+ },
499
+ ];
500
+ }
501
+ //# sourceMappingURL=iap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iap.js","sourceRoot":"","sources":["../../src/tools/iap.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { AscClient } from "../client.js";
2
+ import type { ToolDef } from "./types.js";
3
+ export declare function pingTools(client: AscClient): ToolDef[];
@@ -0,0 +1,12 @@
1
+ import { z } from "zod";
2
+ export function pingTools(client) {
3
+ return [
4
+ {
5
+ name: "asc_ping",
6
+ description: "Smoke test — returns the first app in your account to confirm credentials work.",
7
+ inputSchema: z.object({}),
8
+ handler: async () => client.request("/apps", { query: { limit: 1 } }),
9
+ },
10
+ ];
11
+ }
12
+ //# sourceMappingURL=ping.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ping.js","sourceRoot":"","sources":["../../src/tools/ping.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,MAAM,UAAU,SAAS,CAAC,MAAiB;IACzC,OAAO;QACL;YACE,IAAI,EAAE,UAAU;YAChB,WAAW,EACT,iFAAiF;YACnF,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;YACzB,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;SACtE;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { AscClient } from "../client.js";
2
+ import type { ToolDef } from "./types.js";
3
+ export declare function pricingTools(client: AscClient): ToolDef[];