@zapier/zapier-sdk 0.18.3 → 1.0.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 (112) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/README.md +1 -1
  3. package/dist/api/client.d.ts.map +1 -1
  4. package/dist/api/client.js +11 -24
  5. package/dist/api/client.test.js +82 -27
  6. package/dist/api/index.d.ts +3 -2
  7. package/dist/api/index.d.ts.map +1 -1
  8. package/dist/api/index.js +2 -3
  9. package/dist/api/schemas.d.ts +5 -114
  10. package/dist/api/schemas.d.ts.map +1 -1
  11. package/dist/api/schemas.js +0 -67
  12. package/dist/api/types.d.ts +10 -4
  13. package/dist/api/types.d.ts.map +1 -1
  14. package/dist/auth.d.ts +54 -26
  15. package/dist/auth.d.ts.map +1 -1
  16. package/dist/auth.js +211 -39
  17. package/dist/auth.test.js +338 -64
  18. package/dist/constants.d.ts +14 -0
  19. package/dist/constants.d.ts.map +1 -1
  20. package/dist/constants.js +14 -0
  21. package/dist/credentials.d.ts +57 -0
  22. package/dist/credentials.d.ts.map +1 -0
  23. package/dist/credentials.js +174 -0
  24. package/dist/index.cjs +644 -685
  25. package/dist/index.d.mts +265 -134
  26. package/dist/index.d.ts +3 -0
  27. package/dist/index.d.ts.map +1 -1
  28. package/dist/index.js +5 -0
  29. package/dist/index.mjs +624 -684
  30. package/dist/plugins/api/index.d.ts +2 -0
  31. package/dist/plugins/api/index.d.ts.map +1 -1
  32. package/dist/plugins/api/index.js +8 -4
  33. package/dist/plugins/eventEmission/index.d.ts.map +1 -1
  34. package/dist/plugins/eventEmission/index.js +1 -3
  35. package/dist/plugins/eventEmission/index.test.js +14 -17
  36. package/dist/plugins/getAction/schemas.d.ts +1 -1
  37. package/dist/plugins/getInputFieldsSchema/schemas.d.ts +1 -1
  38. package/dist/plugins/listActions/index.test.js +1 -0
  39. package/dist/plugins/listActions/schemas.d.ts +1 -1
  40. package/dist/plugins/listApps/index.d.ts +2 -8
  41. package/dist/plugins/listApps/index.d.ts.map +1 -1
  42. package/dist/plugins/listApps/index.js +4 -6
  43. package/dist/plugins/listApps/index.test.js +62 -82
  44. package/dist/plugins/listApps/schemas.d.ts +35 -14
  45. package/dist/plugins/listApps/schemas.d.ts.map +1 -1
  46. package/dist/plugins/listApps/schemas.js +44 -14
  47. package/dist/plugins/listAuthentications/index.test.js +16 -0
  48. package/dist/plugins/listInputFieldChoices/schemas.d.ts +1 -1
  49. package/dist/plugins/listInputFields/schemas.d.ts +1 -1
  50. package/dist/plugins/runAction/schemas.d.ts +1 -1
  51. package/dist/schemas/Action.d.ts +1 -1
  52. package/dist/schemas/App.d.ts +28 -28
  53. package/dist/schemas/App.d.ts.map +1 -1
  54. package/dist/schemas/App.js +3 -8
  55. package/dist/sdk.d.ts +2 -1
  56. package/dist/sdk.d.ts.map +1 -1
  57. package/dist/sdk.test.js +17 -13
  58. package/dist/types/credentials.d.ts +65 -0
  59. package/dist/types/credentials.d.ts.map +1 -0
  60. package/dist/types/credentials.js +42 -0
  61. package/dist/types/properties.d.ts +1 -1
  62. package/dist/types/sdk.d.ts +12 -3
  63. package/dist/types/sdk.d.ts.map +1 -1
  64. package/dist/utils/logging.d.ts +13 -0
  65. package/dist/utils/logging.d.ts.map +1 -0
  66. package/dist/utils/logging.js +20 -0
  67. package/package.json +2 -2
  68. package/dist/api/client.integration.test.d.ts +0 -5
  69. package/dist/api/client.integration.test.d.ts.map +0 -1
  70. package/dist/api/client.integration.test.js +0 -318
  71. package/dist/api/client.methods.test.d.ts +0 -2
  72. package/dist/api/client.methods.test.d.ts.map +0 -1
  73. package/dist/api/client.methods.test.js +0 -158
  74. package/dist/api/router.d.ts +0 -16
  75. package/dist/api/router.d.ts.map +0 -1
  76. package/dist/api/router.js +0 -31
  77. package/dist/api/router.test.d.ts +0 -2
  78. package/dist/api/router.test.d.ts.map +0 -1
  79. package/dist/api/router.test.js +0 -103
  80. package/dist/temporary-internal-core/handlers/listApps.d.ts +0 -67
  81. package/dist/temporary-internal-core/handlers/listApps.d.ts.map +0 -1
  82. package/dist/temporary-internal-core/handlers/listApps.js +0 -134
  83. package/dist/temporary-internal-core/handlers/listApps.test.d.ts +0 -2
  84. package/dist/temporary-internal-core/handlers/listApps.test.d.ts.map +0 -1
  85. package/dist/temporary-internal-core/handlers/listApps.test.js +0 -367
  86. package/dist/temporary-internal-core/index.d.ts +0 -18
  87. package/dist/temporary-internal-core/index.d.ts.map +0 -1
  88. package/dist/temporary-internal-core/index.js +0 -18
  89. package/dist/temporary-internal-core/schemas/apps/index.d.ts +0 -175
  90. package/dist/temporary-internal-core/schemas/apps/index.d.ts.map +0 -1
  91. package/dist/temporary-internal-core/schemas/apps/index.js +0 -97
  92. package/dist/temporary-internal-core/schemas/errors/index.d.ts +0 -139
  93. package/dist/temporary-internal-core/schemas/errors/index.d.ts.map +0 -1
  94. package/dist/temporary-internal-core/schemas/errors/index.js +0 -129
  95. package/dist/temporary-internal-core/schemas/implementations/index.d.ts +0 -127
  96. package/dist/temporary-internal-core/schemas/implementations/index.d.ts.map +0 -1
  97. package/dist/temporary-internal-core/schemas/implementations/index.js +0 -79
  98. package/dist/temporary-internal-core/types/handler.d.ts +0 -51
  99. package/dist/temporary-internal-core/types/handler.d.ts.map +0 -1
  100. package/dist/temporary-internal-core/types/handler.js +0 -8
  101. package/dist/temporary-internal-core/types/index.d.ts +0 -5
  102. package/dist/temporary-internal-core/types/index.d.ts.map +0 -1
  103. package/dist/temporary-internal-core/types/index.js +0 -4
  104. package/dist/temporary-internal-core/utils/app-locators.d.ts +0 -34
  105. package/dist/temporary-internal-core/utils/app-locators.d.ts.map +0 -1
  106. package/dist/temporary-internal-core/utils/app-locators.js +0 -39
  107. package/dist/temporary-internal-core/utils/string-utils.d.ts +0 -28
  108. package/dist/temporary-internal-core/utils/string-utils.d.ts.map +0 -1
  109. package/dist/temporary-internal-core/utils/string-utils.js +0 -52
  110. package/dist/temporary-internal-core/utils/transformations.d.ts +0 -18
  111. package/dist/temporary-internal-core/utils/transformations.d.ts.map +0 -1
  112. package/dist/temporary-internal-core/utils/transformations.js +0 -36
@@ -7,8 +7,8 @@ export declare const ListInputFieldsSchema: z.ZodObject<{
7
7
  _def: z.core.$ZodStringDef & import("../..").PositionalMetadata;
8
8
  };
9
9
  actionType: z.ZodEnum<{
10
- search: "search";
11
10
  filter: "filter";
11
+ search: "search";
12
12
  read: "read";
13
13
  read_bulk: "read_bulk";
14
14
  run: "run";
@@ -6,8 +6,8 @@ export declare const RunActionSchema: z.ZodObject<{
6
6
  _def: z.core.$ZodStringDef & import("../..").PositionalMetadata;
7
7
  };
8
8
  actionType: z.ZodEnum<{
9
- search: "search";
10
9
  filter: "filter";
10
+ search: "search";
11
11
  read: "read";
12
12
  read_bulk: "read_bulk";
13
13
  run: "run";
@@ -8,8 +8,8 @@ export declare const ActionItemSchema: z.ZodObject<{
8
8
  app_key: z.ZodString;
9
9
  app_version: z.ZodOptional<z.ZodString>;
10
10
  action_type: z.ZodEnum<{
11
- search: "search";
12
11
  filter: "filter";
12
+ search: "search";
13
13
  read: "read";
14
14
  read_bulk: "read_bulk";
15
15
  run: "run";
@@ -1,57 +1,57 @@
1
- import { z } from "zod";
1
+ import type { z } from "zod";
2
2
  export { FormattedItem, FormatMetadata } from "../utils/schema-utils";
3
3
  export declare const AppItemSchema: z.ZodObject<{
4
+ slug: z.ZodString;
5
+ age_in_days: z.ZodOptional<z.ZodNumber>;
6
+ auth_type: z.ZodOptional<z.ZodString>;
7
+ banner: z.ZodOptional<z.ZodString>;
4
8
  categories: z.ZodOptional<z.ZodArray<z.ZodObject<{
5
9
  id: z.ZodNumber;
6
10
  name: z.ZodString;
7
11
  slug: z.ZodString;
8
12
  }, z.core.$strip>>>;
9
- actions: z.ZodOptional<z.ZodObject<{
10
- read: z.ZodOptional<z.ZodNumber>;
11
- read_bulk: z.ZodOptional<z.ZodNumber>;
12
- write: z.ZodOptional<z.ZodNumber>;
13
- search: z.ZodOptional<z.ZodNumber>;
14
- search_or_write: z.ZodOptional<z.ZodNumber>;
15
- search_and_write: z.ZodOptional<z.ZodNumber>;
16
- filter: z.ZodOptional<z.ZodNumber>;
17
- }, z.core.$strip>>;
18
- description: z.ZodOptional<z.ZodString>;
19
- is_hidden: z.ZodOptional<z.ZodBoolean>;
20
- age_in_days: z.ZodOptional<z.ZodNumber>;
21
- api_docs_url: z.ZodOptional<z.ZodString>;
22
- banner: z.ZodOptional<z.ZodString>;
23
- image: z.ZodOptional<z.ZodString>;
24
13
  images: z.ZodOptional<z.ZodObject<{
25
14
  url_16x16: z.ZodOptional<z.ZodString>;
26
15
  url_32x32: z.ZodOptional<z.ZodString>;
27
16
  url_64x64: z.ZodOptional<z.ZodString>;
28
17
  url_128x128: z.ZodOptional<z.ZodString>;
29
18
  }, z.core.$strip>>;
30
- is_beta: z.ZodOptional<z.ZodBoolean>;
31
- is_built_in: z.ZodOptional<z.ZodBoolean>;
32
- is_featured: z.ZodOptional<z.ZodBoolean>;
33
- is_premium: z.ZodOptional<z.ZodBoolean>;
34
- is_public: z.ZodOptional<z.ZodBoolean>;
35
- is_upcoming: z.ZodOptional<z.ZodBoolean>;
36
19
  popularity: z.ZodOptional<z.ZodNumber>;
37
- primary_color: z.ZodOptional<z.ZodString>;
38
- slug: z.ZodString;
39
- auth_type: z.ZodOptional<z.ZodString>;
40
- is_deprecated: z.ZodOptional<z.ZodBoolean>;
41
- secondary_color: z.ZodOptional<z.ZodString>;
42
20
  has_filters: z.ZodOptional<z.ZodBoolean>;
43
21
  has_reads: z.ZodOptional<z.ZodBoolean>;
44
22
  has_searches: z.ZodOptional<z.ZodBoolean>;
45
23
  has_searches_or_writes: z.ZodOptional<z.ZodBoolean>;
46
24
  has_upfront_fields: z.ZodOptional<z.ZodBoolean>;
47
25
  has_writes: z.ZodOptional<z.ZodBoolean>;
26
+ is_beta: z.ZodOptional<z.ZodBoolean>;
27
+ is_built_in: z.ZodOptional<z.ZodBoolean>;
28
+ is_deprecated: z.ZodOptional<z.ZodBoolean>;
29
+ is_featured: z.ZodOptional<z.ZodBoolean>;
30
+ is_hidden: z.ZodOptional<z.ZodBoolean>;
48
31
  is_invite: z.ZodOptional<z.ZodBoolean>;
49
- version: z.ZodOptional<z.ZodString>;
32
+ is_premium: z.ZodOptional<z.ZodBoolean>;
33
+ is_public: z.ZodOptional<z.ZodBoolean>;
34
+ is_upcoming: z.ZodOptional<z.ZodBoolean>;
50
35
  visibility: z.ZodOptional<z.ZodString>;
36
+ actions: z.ZodOptional<z.ZodObject<{
37
+ read: z.ZodOptional<z.ZodNumber>;
38
+ read_bulk: z.ZodOptional<z.ZodNumber>;
39
+ write: z.ZodOptional<z.ZodNumber>;
40
+ search: z.ZodOptional<z.ZodNumber>;
41
+ search_or_write: z.ZodOptional<z.ZodNumber>;
42
+ search_and_write: z.ZodOptional<z.ZodNumber>;
43
+ filter: z.ZodOptional<z.ZodNumber>;
44
+ }, z.core.$strip>>;
45
+ description: z.ZodOptional<z.ZodString>;
46
+ primary_color: z.ZodOptional<z.ZodString>;
47
+ secondary_color: z.ZodOptional<z.ZodString>;
51
48
  classification: z.ZodOptional<z.ZodString>;
49
+ api_docs_url: z.ZodOptional<z.ZodString>;
50
+ image: z.ZodOptional<z.ZodString>;
52
51
  title: z.ZodString;
53
52
  key: z.ZodString;
54
53
  implementation_id: z.ZodString;
54
+ version: z.ZodOptional<z.ZodString>;
55
55
  }, z.core.$strip>;
56
56
  export type AppItem = z.infer<typeof AppItemSchema>;
57
57
  //# sourceMappingURL=App.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../src/schemas/App.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAMtE,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA2BzB,CAAC;AAMF,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../src/schemas/App.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAK7B,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAMtE,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAoBxB,CAAC;AAMH,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC"}
@@ -1,15 +1,10 @@
1
- import { z } from "zod";
2
1
  import { withFormatter } from "../utils/schema-utils";
3
- import { ImplementationMetaSchema } from "../api/schemas";
2
+ import { AppItemSchema as AppItemSchemaBase } from "@zapier/zapier-sdk-core/v0/schemas/apps";
4
3
  import { toSnakeCase } from "../utils/string-utils";
5
4
  // ============================================================================
6
- // App Item Schema (extends ImplementationMetaSchema with transformed fields)
5
+ // App Item Schema (wraps core schema with SDK-specific formatting)
7
6
  // ============================================================================
8
- export const AppItemSchema = withFormatter(ImplementationMetaSchema.omit({ name: true, id: true }).extend({
9
- title: z.string(), // Mapped from name
10
- key: z.string(), // Extracted from id (base part without version)
11
- implementation_id: z.string(), // Mapped from id (full versioned ID)
12
- }), {
7
+ export const AppItemSchema = withFormatter(AppItemSchemaBase, {
13
8
  format: (item) => {
14
9
  // Create additional keys if slug exists
15
10
  const additionalKeys = [];
package/dist/sdk.d.ts CHANGED
@@ -17,6 +17,7 @@ export declare function createZapierSdkWithoutRegistry(options?: ZapierSdkOption
17
17
  meta: Record<string, PluginMeta>;
18
18
  } & import(".").EventEmissionContext & {
19
19
  api: import("./api").ApiClient;
20
+ resolveCredentials: () => Promise<import("./auth").ResolvedCredentials | undefined>;
20
21
  } & {
21
22
  getVersionedImplementationId: import("./plugins/manifest/schemas").GetVersionedImplementationId;
22
23
  resolveAppKeys: import("./plugins/manifest/schemas").ResolveAppKeys;
@@ -46,7 +47,7 @@ export declare function createZapierSdkWithoutRegistry(options?: ZapierSdkOption
46
47
  } & {
47
48
  meta: {
48
49
  listApps: {
49
- inputSchema: typeof import("./temporary-internal-core").ListAppsOptionsSchema;
50
+ inputSchema: typeof import("./plugins/listApps/schemas").ListAppsSchema;
50
51
  };
51
52
  };
52
53
  } & {
package/dist/sdk.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAMlD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EACV,GAAG,EACH,MAAM,EACN,wBAAwB,EACxB,oBAAoB,EACpB,cAAc,EACd,UAAU,EACX,MAAM,gBAAgB,CAAC;AA2BxB,MAAM,WAAW,gBAAiB,SAAQ,cAAc;CAAG;AAG3D,wBAAgB,SAAS,CACvB,WAAW,GAAG,EAAE,EAChB,eAAe,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;CAAE,GAAG;IAC7D,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CAClC,EAED,OAAO,GAAE,gBAAqB,EAC9B,UAAU,GAAE,WAA+B,EAC3C,cAAc,GAAE,eAAiD;;cAKrD,gBAAgB,EAAE,SAAS,SAAS,cAAc,UAClD,MAAM,CACZ,WAAW,GAAG;QAAE,UAAU,IAAI,eAAe,CAAA;KAAE,EAC/C,gBAAgB,EAChB,SAAS,CACV,qBACiB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACxC,GAAG,CACJ,WAAW,GAAG,oBAAoB,CAAC,SAAS,CAAC,EAC7C,eAAe,GAAG,WAAW,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC,CACnE;EA8DJ;AAED,wBAAgB,8BAA8B,CAAC,OAAO,GAAE,gBAAqB;UApFnE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC;;;;;;;;;;;;+BAD2B,CAAC;kBAC/C,CAAC;;;;kBAKG,CAAC;iBAAyB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuH/C;AAED,wBAAgB,eAAe,CAAC,OAAO,GAAE,gBAAqB,GAAG,SAAS,CAMzE"}
1
+ {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAMlD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EACV,GAAG,EACH,MAAM,EACN,wBAAwB,EACxB,oBAAoB,EACpB,cAAc,EACd,UAAU,EACX,MAAM,gBAAgB,CAAC;AA2BxB,MAAM,WAAW,gBAAiB,SAAQ,cAAc;CAAG;AAG3D,wBAAgB,SAAS,CACvB,WAAW,GAAG,EAAE,EAChB,eAAe,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;CAAE,GAAG;IAC7D,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CAClC,EAED,OAAO,GAAE,gBAAqB,EAC9B,UAAU,GAAE,WAA+B,EAC3C,cAAc,GAAE,eAAiD;;cAKrD,gBAAgB,EAAE,SAAS,SAAS,cAAc,UAClD,MAAM,CACZ,WAAW,GAAG;QAAE,UAAU,IAAI,eAAe,CAAA;KAAE,EAC/C,gBAAgB,EAChB,SAAS,CACV,qBACiB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACxC,GAAG,CACJ,WAAW,GAAG,oBAAoB,CAAC,SAAS,CAAC,EAC7C,eAAe,GAAG,WAAW,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC,CACnE;EA8DJ;AAED,wBAAgB,8BAA8B,CAAC,OAAO,GAAE,gBAAqB;UApFnE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC;;;;;;;;;;;;;+BAD2B,CAAC;kBAC/C,CAAC;;;;kBAKG,CAAC;iBAAyB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuH/C;AAED,wBAAgB,eAAe,CAAC,OAAO,GAAE,gBAAqB,GAAG,SAAS,CAMzE"}
package/dist/sdk.test.js CHANGED
@@ -162,8 +162,9 @@ describe("Environment Variable Support", () => {
162
162
  ok: true,
163
163
  status: 200,
164
164
  json: async () => ({
165
- results: [],
166
- meta: { next_cursor: null },
165
+ data: [],
166
+ links: { next: null },
167
+ meta: { count: 0, limit: 100, offset: 0 },
167
168
  }),
168
169
  headers: new Headers(),
169
170
  });
@@ -178,7 +179,7 @@ describe("Environment Variable Support", () => {
178
179
  expect(mockFetch).toHaveBeenCalledTimes(1);
179
180
  const [actualUrl] = mockFetch.mock.calls[0];
180
181
  expect(actualUrl).toMatch(new RegExp(`^${customBaseUrl}`));
181
- expect(actualUrl).toContain("/api/v4/");
182
+ expect(actualUrl).toContain("/api/v0/");
182
183
  });
183
184
  it("should use default base URL when ZAPIER_BASE_URL is not set", async () => {
184
185
  // Ensure environment variable is not set
@@ -191,8 +192,9 @@ describe("Environment Variable Support", () => {
191
192
  ok: true,
192
193
  status: 200,
193
194
  json: async () => ({
194
- results: [],
195
- meta: { next_cursor: null },
195
+ data: [],
196
+ links: { next: null },
197
+ meta: { count: 0, limit: 100, offset: 0 },
196
198
  }),
197
199
  headers: new Headers(),
198
200
  });
@@ -207,7 +209,7 @@ describe("Environment Variable Support", () => {
207
209
  expect(mockFetch).toHaveBeenCalledTimes(1);
208
210
  const [actualUrl] = mockFetch.mock.calls[0];
209
211
  expect(actualUrl).toMatch(/^https:\/\/sdkapi\.zapier\.com/);
210
- expect(actualUrl).toContain("/api/v4/");
212
+ expect(actualUrl).toContain("/api/v0/");
211
213
  });
212
214
  it("should use explicit baseUrl option for SDK API requests", async () => {
213
215
  // Clear environment variable to ensure we're testing the explicit option
@@ -221,8 +223,9 @@ describe("Environment Variable Support", () => {
221
223
  ok: true,
222
224
  status: 200,
223
225
  json: async () => ({
224
- results: [],
225
- meta: { next_cursor: null },
226
+ data: [],
227
+ links: { next: null },
228
+ meta: { count: 0, limit: 100, offset: 0 },
226
229
  }),
227
230
  headers: new Headers(),
228
231
  });
@@ -238,17 +241,18 @@ describe("Environment Variable Support", () => {
238
241
  expect(mockFetch).toHaveBeenCalledTimes(1);
239
242
  const [actualUrl] = mockFetch.mock.calls[0];
240
243
  expect(actualUrl).toMatch(new RegExp(`^${customBaseUrl}`));
241
- expect(actualUrl).toContain("/api/v4/");
244
+ expect(actualUrl).toContain("/api/v0/");
242
245
  });
243
- it("should accept authClientId in SDK options", async () => {
246
+ it("should accept credentials with clientId in SDK options", async () => {
244
247
  delete process.env.ZAPIER_BASE_URL;
245
248
  vi.resetModules();
246
249
  const { createZapierSdk } = await import("./sdk");
247
250
  const sdk = createZapierSdk({
248
- authClientId: "test-client-id",
249
- token: "test-token",
251
+ credentials: {
252
+ clientId: "test-client-id",
253
+ },
250
254
  });
251
- // Verify SDK was created successfully with authClientId option
255
+ // Verify SDK was created successfully with credentials option
252
256
  expect(sdk).toBeDefined();
253
257
  expect(sdk.listApps).toBeDefined();
254
258
  });
@@ -0,0 +1,65 @@
1
+ /**
2
+ * Credentials type definitions
3
+ *
4
+ * The credentials system provides a unified way to authenticate with Zapier APIs.
5
+ * It supports multiple credential types:
6
+ * - String: A token (JWT or API key) used directly
7
+ * - Client credentials: OAuth client ID + secret exchanged for a token
8
+ * - PKCE: OAuth client ID for interactive login (CLI only)
9
+ * - Function: Lazy/dynamic credential resolution
10
+ */
11
+ /**
12
+ * Client credentials for OAuth client_credentials flow.
13
+ * The SDK will exchange these for an access token.
14
+ */
15
+ export interface ClientCredentialsObject {
16
+ type?: "client_credentials";
17
+ clientId: string;
18
+ clientSecret: string;
19
+ baseUrl?: string;
20
+ scope?: string;
21
+ }
22
+ /**
23
+ * PKCE credentials for interactive OAuth flow.
24
+ * Only works when @zapier/zapier-sdk-cli-login is available.
25
+ */
26
+ export interface PkceCredentialsObject {
27
+ type?: "pkce";
28
+ clientId: string;
29
+ baseUrl?: string;
30
+ scope?: string;
31
+ }
32
+ /**
33
+ * Union of all credential object types.
34
+ */
35
+ export type CredentialsObject = ClientCredentialsObject | PkceCredentialsObject;
36
+ /**
37
+ * Resolved credentials - what a credentials function must return.
38
+ * Either a string (token) or a credentials object.
39
+ * Functions are not allowed to return other functions.
40
+ */
41
+ export type ResolvedCredentials = string | CredentialsObject;
42
+ /**
43
+ * Credentials can be:
44
+ * - A string (token or API key)
45
+ * - A credentials object (client_credentials or pkce)
46
+ * - A function that returns credentials (sync or async)
47
+ */
48
+ export type Credentials = ResolvedCredentials | (() => ResolvedCredentials | Promise<ResolvedCredentials>);
49
+ /**
50
+ * Type guard for client credentials objects.
51
+ */
52
+ export declare function isClientCredentials(credentials: ResolvedCredentials): credentials is ClientCredentialsObject;
53
+ /**
54
+ * Type guard for PKCE credentials objects.
55
+ */
56
+ export declare function isPkceCredentials(credentials: ResolvedCredentials): credentials is PkceCredentialsObject;
57
+ /**
58
+ * Type guard for credentials objects (either type).
59
+ */
60
+ export declare function isCredentialsObject(credentials: ResolvedCredentials): credentials is CredentialsObject;
61
+ /**
62
+ * Type guard for credentials functions.
63
+ */
64
+ export declare function isCredentialsFunction(credentials: Credentials): credentials is () => ResolvedCredentials | Promise<ResolvedCredentials>;
65
+ //# sourceMappingURL=credentials.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/types/credentials.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,EAAE,oBAAoB,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,uBAAuB,GAAG,qBAAqB,CAAC;AAEhF;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,iBAAiB,CAAC;AAE7D;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GACnB,mBAAmB,GACnB,CAAC,MAAM,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAE/D;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,mBAAmB,GAC/B,WAAW,IAAI,uBAAuB,CAOxC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,mBAAmB,GAC/B,WAAW,IAAI,qBAAqB,CAOtC;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,mBAAmB,GAC/B,WAAW,IAAI,iBAAiB,CAMlC;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,WAAW,GACvB,WAAW,IAAI,MAAM,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAEzE"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Credentials type definitions
3
+ *
4
+ * The credentials system provides a unified way to authenticate with Zapier APIs.
5
+ * It supports multiple credential types:
6
+ * - String: A token (JWT or API key) used directly
7
+ * - Client credentials: OAuth client ID + secret exchanged for a token
8
+ * - PKCE: OAuth client ID for interactive login (CLI only)
9
+ * - Function: Lazy/dynamic credential resolution
10
+ */
11
+ /**
12
+ * Type guard for client credentials objects.
13
+ */
14
+ export function isClientCredentials(credentials) {
15
+ return (typeof credentials === "object" &&
16
+ credentials !== null &&
17
+ "clientId" in credentials &&
18
+ "clientSecret" in credentials);
19
+ }
20
+ /**
21
+ * Type guard for PKCE credentials objects.
22
+ */
23
+ export function isPkceCredentials(credentials) {
24
+ return (typeof credentials === "object" &&
25
+ credentials !== null &&
26
+ "clientId" in credentials &&
27
+ !("clientSecret" in credentials));
28
+ }
29
+ /**
30
+ * Type guard for credentials objects (either type).
31
+ */
32
+ export function isCredentialsObject(credentials) {
33
+ return (typeof credentials === "object" &&
34
+ credentials !== null &&
35
+ "clientId" in credentials);
36
+ }
37
+ /**
38
+ * Type guard for credentials functions.
39
+ */
40
+ export function isCredentialsFunction(credentials) {
41
+ return typeof credentials === "function";
42
+ }
@@ -3,8 +3,8 @@ export declare const AppKeyPropertySchema: z.ZodString & {
3
3
  _def: z.core.$ZodStringDef & import("..").PositionalMetadata;
4
4
  };
5
5
  export declare const ActionTypePropertySchema: z.ZodEnum<{
6
- search: "search";
7
6
  filter: "filter";
7
+ search: "search";
8
8
  read: "read";
9
9
  read_bulk: "read_bulk";
10
10
  run: "run";
@@ -4,14 +4,23 @@
4
4
  import type { EventCallback } from "./events";
5
5
  import type { EventEmissionConfig } from "../plugins/eventEmission";
6
6
  import type { Manifest } from "../plugins/manifest";
7
+ import type { Credentials } from "./credentials";
7
8
  export interface BaseSdkOptions {
9
+ /**
10
+ * Authentication credentials. Can be:
11
+ * - A string (token or API key)
12
+ * - An object with clientId/clientSecret for client_credentials flow
13
+ * - An object with clientId (no secret) for PKCE flow
14
+ * - A function returning any of the above
15
+ */
16
+ credentials?: Credentials;
17
+ /**
18
+ * @deprecated Use `credentials` instead.
19
+ */
8
20
  token?: string;
9
- getToken?: () => Promise<string | undefined>;
10
21
  onEvent?: EventCallback;
11
22
  fetch?: typeof fetch;
12
23
  baseUrl?: string;
13
- authBaseUrl?: string;
14
- authClientId?: string;
15
24
  trackingBaseUrl?: string;
16
25
  debug?: boolean;
17
26
  manifestPath?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../src/types/sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../../src/types/sdk.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Logging utilities for the SDK
3
+ */
4
+ /**
5
+ * Log a deprecation warning. Each unique message is only logged once per process.
6
+ */
7
+ export declare function logDeprecation(message: string): void;
8
+ /**
9
+ * Reset the set of logged deprecation warnings.
10
+ * Useful for testing.
11
+ */
12
+ export declare function resetDeprecationWarnings(): void;
13
+ //# sourceMappingURL=logging.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging.d.ts","sourceRoot":"","sources":["../../src/utils/logging.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAIpD;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAE/C"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Logging utilities for the SDK
3
+ */
4
+ const loggedDeprecations = new Set();
5
+ /**
6
+ * Log a deprecation warning. Each unique message is only logged once per process.
7
+ */
8
+ export function logDeprecation(message) {
9
+ if (loggedDeprecations.has(message))
10
+ return;
11
+ loggedDeprecations.add(message);
12
+ console.warn(`[zapier-sdk] Deprecation: ${message}`);
13
+ }
14
+ /**
15
+ * Reset the set of logged deprecation warnings.
16
+ * Useful for testing.
17
+ */
18
+ export function resetDeprecationWarnings() {
19
+ loggedDeprecations.clear();
20
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zapier/zapier-sdk",
3
- "version": "0.18.3",
3
+ "version": "1.0.0",
4
4
  "description": "Complete Zapier SDK - combines all Zapier SDK packages",
5
5
  "main": "dist/index.cjs",
6
6
  "module": "dist/index.mjs",
@@ -52,7 +52,7 @@
52
52
  "tsup": "^8.5.0",
53
53
  "typescript": "^5.8.3",
54
54
  "vitest": "^3.2.3",
55
- "@zapier/zapier-sdk-cli-login": "0.3.7"
55
+ "@zapier/zapier-sdk-cli-login": "0.4.0"
56
56
  },
57
57
  "scripts": {
58
58
  "build": "tsup",
@@ -1,5 +0,0 @@
1
- /**
2
- * Integration tests for API client handler override mechanism
3
- */
4
- export {};
5
- //# sourceMappingURL=client.integration.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"client.integration.test.d.ts","sourceRoot":"","sources":["../../src/api/client.integration.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}