@zapier/zapier-sdk 0.41.0 → 0.41.2
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.
- package/CHANGELOG.md +12 -0
- package/README.md +12 -12
- package/dist/index.cjs +31 -1
- package/dist/index.mjs +31 -1
- package/dist/resolvers/connectionId.js +1 -1
- package/dist/types/errors.d.ts.map +1 -1
- package/dist/types/errors.js +30 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @zapier/zapier-sdk
|
|
2
2
|
|
|
3
|
+
## 0.41.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 3cf1a98: Fix connection resolution for no-auth apps
|
|
8
|
+
|
|
9
|
+
## 0.41.1
|
|
10
|
+
|
|
11
|
+
### Patch Changes
|
|
12
|
+
|
|
13
|
+
- 53c165a: `formatErrorMessage` now renders `ZapierRateLimitError` details (limit used, time until retry, retry count) instead of just the bare "Rate limited" message. CLI, MCP, and any consumer using `formatErrorMessage` now surface which rate-limit window tripped and how long until it resets.
|
|
14
|
+
|
|
3
15
|
## 0.41.0
|
|
4
16
|
|
|
5
17
|
### Minor Changes
|
package/README.md
CHANGED
|
@@ -1208,18 +1208,18 @@ List records in a table with optional filtering and sorting
|
|
|
1208
1208
|
|
|
1209
1209
|
**Parameters:**
|
|
1210
1210
|
|
|
1211
|
-
| Name
|
|
1212
|
-
|
|
|
1213
|
-
| `options`
|
|
1214
|
-
| ↳ `table`
|
|
1215
|
-
| ↳ `filters`
|
|
1216
|
-
| ↳ `sort`
|
|
1217
|
-
|
|
|
1218
|
-
|
|
|
1219
|
-
| ↳ `pageSize`
|
|
1220
|
-
| ↳ `maxItems`
|
|
1221
|
-
| ↳ `cursor`
|
|
1222
|
-
| ↳ `keyMode`
|
|
1211
|
+
| Name | Type | Required | Default | Possible Values | Description |
|
|
1212
|
+
| ---------------- | -------- | -------- | --------- | --------------- | --------------------------------------------------------------------------------------------------------------------------------- |
|
|
1213
|
+
| `options` | `object` | ✅ | — | — | |
|
|
1214
|
+
| ↳ `table` | `string` | ✅ | — | — | The unique identifier of the table |
|
|
1215
|
+
| ↳ `filters` | `array` | ❌ | — | — | Filter conditions for the query |
|
|
1216
|
+
| ↳ `sort` | `object` | ❌ | — | — | Sort records by a field |
|
|
1217
|
+
| ↳ `fieldKey` | `string` | ✅ | — | — | The field key to sort by |
|
|
1218
|
+
| ↳ `direction` | `string` | ❌ | `"asc"` | — | Sort direction |
|
|
1219
|
+
| ↳ `pageSize` | `number` | ❌ | — | — | Number of records per page (max 1000) |
|
|
1220
|
+
| ↳ `maxItems` | `number` | ❌ | — | — | Maximum total items to return across all pages |
|
|
1221
|
+
| ↳ `cursor` | `string` | ❌ | — | — | Cursor to start from |
|
|
1222
|
+
| ↳ `keyMode` | `string` | ❌ | `"names"` | — | How to interpret field keys in record data. "names" (default) uses human-readable field names, "ids" uses raw field IDs (f1, f2). |
|
|
1223
1223
|
|
|
1224
1224
|
**Returns:** `Promise<PaginatedResult<RecordItem>>`
|
|
1225
1225
|
|
package/dist/index.cjs
CHANGED
|
@@ -270,12 +270,42 @@ ${context.join(", ")}`;
|
|
|
270
270
|
if (error instanceof ZapierBundleError && error.buildErrors && error.buildErrors.length > 0) {
|
|
271
271
|
message += "\n\nBuild errors:\n" + error.buildErrors.map((err) => ` \u2022 ${err}`).join("\n");
|
|
272
272
|
}
|
|
273
|
+
if (error instanceof ZapierRateLimitError) {
|
|
274
|
+
const { limit, remaining, retryAfterMs } = error.rateLimit;
|
|
275
|
+
const parts = [];
|
|
276
|
+
if (limit !== void 0) {
|
|
277
|
+
const used = remaining !== void 0 ? limit - remaining : limit;
|
|
278
|
+
parts.push(`${used}/${limit} used`);
|
|
279
|
+
}
|
|
280
|
+
if (retryAfterMs !== void 0 && retryAfterMs > 0) {
|
|
281
|
+
parts.push(`retry in ${formatDuration(retryAfterMs)}`);
|
|
282
|
+
}
|
|
283
|
+
if (error.retries > 0) {
|
|
284
|
+
parts.push(
|
|
285
|
+
`after ${error.retries} retr${error.retries === 1 ? "y" : "ies"}`
|
|
286
|
+
);
|
|
287
|
+
}
|
|
288
|
+
if (parts.length > 0) {
|
|
289
|
+
message += `
|
|
290
|
+
${parts.join(", ")}`;
|
|
291
|
+
}
|
|
292
|
+
}
|
|
273
293
|
if (error.statusCode && !message.includes(`${error.statusCode}`)) {
|
|
274
294
|
message += `
|
|
275
295
|
HTTP Status: ${error.statusCode}`;
|
|
276
296
|
}
|
|
277
297
|
return message;
|
|
278
298
|
}
|
|
299
|
+
function formatDuration(ms) {
|
|
300
|
+
const seconds = Math.round(ms / 1e3);
|
|
301
|
+
if (seconds < 60) return `${seconds}s`;
|
|
302
|
+
const minutes = Math.round(seconds / 60);
|
|
303
|
+
if (minutes < 60) return `${minutes}m`;
|
|
304
|
+
const hours = Math.round(minutes / 60);
|
|
305
|
+
if (hours < 24) return `${hours}h`;
|
|
306
|
+
const days = Math.round(hours / 24);
|
|
307
|
+
return `${days}d`;
|
|
308
|
+
}
|
|
279
309
|
var ActionExecutionInputSchema = zod.z.object({
|
|
280
310
|
inputs: zod.z.record(zod.z.string(), zod.z.unknown()).optional(),
|
|
281
311
|
/** @deprecated Use `connection` instead. */
|
|
@@ -1940,7 +1970,7 @@ var connectionIdResolver = {
|
|
|
1940
1970
|
try {
|
|
1941
1971
|
const app = await sdk.getApp({ app: params.app });
|
|
1942
1972
|
if (!app.data.auth_type) {
|
|
1943
|
-
return { resolvedValue:
|
|
1973
|
+
return { resolvedValue: void 0 };
|
|
1944
1974
|
}
|
|
1945
1975
|
} catch {
|
|
1946
1976
|
}
|
package/dist/index.mjs
CHANGED
|
@@ -268,12 +268,42 @@ ${context.join(", ")}`;
|
|
|
268
268
|
if (error instanceof ZapierBundleError && error.buildErrors && error.buildErrors.length > 0) {
|
|
269
269
|
message += "\n\nBuild errors:\n" + error.buildErrors.map((err) => ` \u2022 ${err}`).join("\n");
|
|
270
270
|
}
|
|
271
|
+
if (error instanceof ZapierRateLimitError) {
|
|
272
|
+
const { limit, remaining, retryAfterMs } = error.rateLimit;
|
|
273
|
+
const parts = [];
|
|
274
|
+
if (limit !== void 0) {
|
|
275
|
+
const used = remaining !== void 0 ? limit - remaining : limit;
|
|
276
|
+
parts.push(`${used}/${limit} used`);
|
|
277
|
+
}
|
|
278
|
+
if (retryAfterMs !== void 0 && retryAfterMs > 0) {
|
|
279
|
+
parts.push(`retry in ${formatDuration(retryAfterMs)}`);
|
|
280
|
+
}
|
|
281
|
+
if (error.retries > 0) {
|
|
282
|
+
parts.push(
|
|
283
|
+
`after ${error.retries} retr${error.retries === 1 ? "y" : "ies"}`
|
|
284
|
+
);
|
|
285
|
+
}
|
|
286
|
+
if (parts.length > 0) {
|
|
287
|
+
message += `
|
|
288
|
+
${parts.join(", ")}`;
|
|
289
|
+
}
|
|
290
|
+
}
|
|
271
291
|
if (error.statusCode && !message.includes(`${error.statusCode}`)) {
|
|
272
292
|
message += `
|
|
273
293
|
HTTP Status: ${error.statusCode}`;
|
|
274
294
|
}
|
|
275
295
|
return message;
|
|
276
296
|
}
|
|
297
|
+
function formatDuration(ms) {
|
|
298
|
+
const seconds = Math.round(ms / 1e3);
|
|
299
|
+
if (seconds < 60) return `${seconds}s`;
|
|
300
|
+
const minutes = Math.round(seconds / 60);
|
|
301
|
+
if (minutes < 60) return `${minutes}m`;
|
|
302
|
+
const hours = Math.round(minutes / 60);
|
|
303
|
+
if (hours < 24) return `${hours}h`;
|
|
304
|
+
const days = Math.round(hours / 24);
|
|
305
|
+
return `${days}d`;
|
|
306
|
+
}
|
|
277
307
|
var ActionExecutionInputSchema = z.object({
|
|
278
308
|
inputs: z.record(z.string(), z.unknown()).optional(),
|
|
279
309
|
/** @deprecated Use `connection` instead. */
|
|
@@ -1938,7 +1968,7 @@ var connectionIdResolver = {
|
|
|
1938
1968
|
try {
|
|
1939
1969
|
const app = await sdk.getApp({ app: params.app });
|
|
1940
1970
|
if (!app.data.auth_type) {
|
|
1941
|
-
return { resolvedValue:
|
|
1971
|
+
return { resolvedValue: void 0 };
|
|
1942
1972
|
}
|
|
1943
1973
|
} catch {
|
|
1944
1974
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"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"}
|
package/dist/types/errors.js
CHANGED
|
@@ -213,9 +213,39 @@ export function formatErrorMessage(error) {
|
|
|
213
213
|
"\n\nBuild errors:\n" +
|
|
214
214
|
error.buildErrors.map((err) => ` • ${err}`).join("\n");
|
|
215
215
|
}
|
|
216
|
+
if (error instanceof ZapierRateLimitError) {
|
|
217
|
+
const { limit, remaining, retryAfterMs } = error.rateLimit;
|
|
218
|
+
const parts = [];
|
|
219
|
+
if (limit !== undefined) {
|
|
220
|
+
const used = remaining !== undefined ? limit - remaining : limit;
|
|
221
|
+
parts.push(`${used}/${limit} used`);
|
|
222
|
+
}
|
|
223
|
+
if (retryAfterMs !== undefined && retryAfterMs > 0) {
|
|
224
|
+
parts.push(`retry in ${formatDuration(retryAfterMs)}`);
|
|
225
|
+
}
|
|
226
|
+
if (error.retries > 0) {
|
|
227
|
+
parts.push(`after ${error.retries} retr${error.retries === 1 ? "y" : "ies"}`);
|
|
228
|
+
}
|
|
229
|
+
if (parts.length > 0) {
|
|
230
|
+
message += `\n${parts.join(", ")}`;
|
|
231
|
+
}
|
|
232
|
+
}
|
|
216
233
|
// Add status code if available and not already obvious from the message
|
|
217
234
|
if (error.statusCode && !message.includes(`${error.statusCode}`)) {
|
|
218
235
|
message += `\nHTTP Status: ${error.statusCode}`;
|
|
219
236
|
}
|
|
220
237
|
return message;
|
|
221
238
|
}
|
|
239
|
+
function formatDuration(ms) {
|
|
240
|
+
const seconds = Math.round(ms / 1000);
|
|
241
|
+
if (seconds < 60)
|
|
242
|
+
return `${seconds}s`;
|
|
243
|
+
const minutes = Math.round(seconds / 60);
|
|
244
|
+
if (minutes < 60)
|
|
245
|
+
return `${minutes}m`;
|
|
246
|
+
const hours = Math.round(minutes / 60);
|
|
247
|
+
if (hours < 24)
|
|
248
|
+
return `${hours}h`;
|
|
249
|
+
const days = Math.round(hours / 24);
|
|
250
|
+
return `${days}d`;
|
|
251
|
+
}
|