@zapier/zapier-sdk-core 0.7.0 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # @zapier/zapier-sdk-core
2
2
 
3
+ ## 0.7.1
4
+
5
+ ### Patch Changes
6
+
7
+ - c740422: Add dedupe method to zapier-sdk-core
8
+
3
9
  ## 0.7.0
4
10
 
5
11
  ### Minor Changes
@@ -53,6 +53,10 @@ var tags = [
53
53
  name: "Client Credentials",
54
54
  description: "Client credentials management routes"
55
55
  },
56
+ {
57
+ name: "Deduplication",
58
+ description: "Deduplication-related routes"
59
+ },
56
60
  {
57
61
  name: "Documentation",
58
62
  description: "Documentation-related routes"
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/v0/config/metadata.ts"],"sourcesContent":["/**\n * OpenAPI specification metadata\n *\n * This file contains all the base metadata for the OpenAPI specification\n * that was previously stored in openapi-base.yaml.\n *\n * Note on 'as const' usage:\n * - We use 'as const' on literal values that should be treated as enums\n * (e.g., \"apiKey\", \"header\", \"3.1.0\") to get precise literal types\n * - We avoid 'as const' on top-level configuration objects to prevent\n * deep readonly types that can cause compatibility issues with libraries\n * expecting mutable types (like zod-to-openapi)\n * - If you encounter readonly type errors, check whether the consuming\n * library expects mutable types and remove 'as const' accordingly\n */\n\nexport const apiInfo = {\n title: \"Zapier SDK API\",\n version: \"1.0.0\",\n contact: {\n email: \"engineering@zapier.com\",\n },\n description: \"The Zapier SDK API serves as a backend for the Zapier SDK.\",\n};\n\nexport const servers: Array<{ url: string; description: string }> = [];\n\nexport const tags = [\n {\n name: \"Actions\",\n description: \"Action-related routes\",\n },\n {\n name: \"Apps\",\n description: \"App-related routes\",\n },\n {\n name: \"Authentications\",\n description: \"Authentication-related routes\",\n },\n {\n name: \"Client Credentials\",\n description: \"Client credentials management routes\",\n },\n {\n name: \"Documentation\",\n description: \"Documentation-related routes\",\n },\n];\n\n/**\n * Security schemes for OpenAPI specification\n *\n * Note: 'as const' is used on enum-like literal values (\"apiKey\", \"header\")\n * to ensure TypeScript treats them as literal types rather than generic strings.\n * This provides better type safety when the OpenAPI generator validates these values.\n */\nexport const securitySchemes = {\n userJwt: {\n type: \"apiKey\" as const,\n in: \"header\" as const,\n name: \"Authorization\",\n description:\n \"Format should be `JWT <your-jwt>` (you must ensure that the JWT prefix \" +\n \"is included in your requests).\\\\n\\\\n\" +\n \"Example: `Authorization: JWT your.jwt.value.here`\",\n },\n} as const;\n\n/**\n * Complete OpenAPI metadata for document generation\n */\nexport const openApiMetadata = {\n openapi: \"3.1.0\" as const,\n info: apiInfo,\n servers,\n tags,\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAgBO,IAAM,UAAU;AAAA,EACrB,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA,aAAa;AACf;AAEO,IAAM,UAAuD,CAAC;AAE9D,IAAM,OAAO;AAAA,EAClB;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AACF;AASO,IAAM,kBAAkB;AAAA,EAC7B,SAAS;AAAA,IACP,MAAM;AAAA,IACN,IAAI;AAAA,IACJ,MAAM;AAAA,IACN,aACE;AAAA,EAGJ;AACF;AAKO,IAAM,kBAAkB;AAAA,EAC7B,SAAS;AAAA,EACT,MAAM;AAAA,EACN;AAAA,EACA;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/v0/config/metadata.ts"],"sourcesContent":["/**\n * OpenAPI specification metadata\n *\n * This file contains all the base metadata for the OpenAPI specification\n * that was previously stored in openapi-base.yaml.\n *\n * Note on 'as const' usage:\n * - We use 'as const' on literal values that should be treated as enums\n * (e.g., \"apiKey\", \"header\", \"3.1.0\") to get precise literal types\n * - We avoid 'as const' on top-level configuration objects to prevent\n * deep readonly types that can cause compatibility issues with libraries\n * expecting mutable types (like zod-to-openapi)\n * - If you encounter readonly type errors, check whether the consuming\n * library expects mutable types and remove 'as const' accordingly\n */\n\nexport const apiInfo = {\n title: \"Zapier SDK API\",\n version: \"1.0.0\",\n contact: {\n email: \"engineering@zapier.com\",\n },\n description: \"The Zapier SDK API serves as a backend for the Zapier SDK.\",\n};\n\nexport const servers: Array<{ url: string; description: string }> = [];\n\nexport const tags = [\n {\n name: \"Actions\",\n description: \"Action-related routes\",\n },\n {\n name: \"Apps\",\n description: \"App-related routes\",\n },\n {\n name: \"Authentications\",\n description: \"Authentication-related routes\",\n },\n {\n name: \"Client Credentials\",\n description: \"Client credentials management routes\",\n },\n {\n name: \"Deduplication\",\n description: \"Deduplication-related routes\",\n },\n {\n name: \"Documentation\",\n description: \"Documentation-related routes\",\n },\n];\n\n/**\n * Security schemes for OpenAPI specification\n *\n * Note: 'as const' is used on enum-like literal values (\"apiKey\", \"header\")\n * to ensure TypeScript treats them as literal types rather than generic strings.\n * This provides better type safety when the OpenAPI generator validates these values.\n */\nexport const securitySchemes = {\n userJwt: {\n type: \"apiKey\" as const,\n in: \"header\" as const,\n name: \"Authorization\",\n description:\n \"Format should be `JWT <your-jwt>` (you must ensure that the JWT prefix \" +\n \"is included in your requests).\\\\n\\\\n\" +\n \"Example: `Authorization: JWT your.jwt.value.here`\",\n },\n} as const;\n\n/**\n * Complete OpenAPI metadata for document generation\n */\nexport const openApiMetadata = {\n openapi: \"3.1.0\" as const,\n info: apiInfo,\n servers,\n tags,\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAgBO,IAAM,UAAU;AAAA,EACrB,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA,aAAa;AACf;AAEO,IAAM,UAAuD,CAAC;AAE9D,IAAM,OAAO;AAAA,EAClB;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AACF;AASO,IAAM,kBAAkB;AAAA,EAC7B,SAAS;AAAA,IACP,MAAM;AAAA,IACN,IAAI;AAAA,IACJ,MAAM;AAAA,IACN,aACE;AAAA,EAGJ;AACF;AAKO,IAAM,kBAAkB;AAAA,EAC7B,SAAS;AAAA,EACT,MAAM;AAAA,EACN;AAAA,EACA;AACF;","names":[]}
@@ -25,6 +25,10 @@ var tags = [
25
25
  name: "Client Credentials",
26
26
  description: "Client credentials management routes"
27
27
  },
28
+ {
29
+ name: "Deduplication",
30
+ description: "Deduplication-related routes"
31
+ },
28
32
  {
29
33
  name: "Documentation",
30
34
  description: "Documentation-related routes"
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/v0/config/metadata.ts"],"sourcesContent":["/**\n * OpenAPI specification metadata\n *\n * This file contains all the base metadata for the OpenAPI specification\n * that was previously stored in openapi-base.yaml.\n *\n * Note on 'as const' usage:\n * - We use 'as const' on literal values that should be treated as enums\n * (e.g., \"apiKey\", \"header\", \"3.1.0\") to get precise literal types\n * - We avoid 'as const' on top-level configuration objects to prevent\n * deep readonly types that can cause compatibility issues with libraries\n * expecting mutable types (like zod-to-openapi)\n * - If you encounter readonly type errors, check whether the consuming\n * library expects mutable types and remove 'as const' accordingly\n */\n\nexport const apiInfo = {\n title: \"Zapier SDK API\",\n version: \"1.0.0\",\n contact: {\n email: \"engineering@zapier.com\",\n },\n description: \"The Zapier SDK API serves as a backend for the Zapier SDK.\",\n};\n\nexport const servers: Array<{ url: string; description: string }> = [];\n\nexport const tags = [\n {\n name: \"Actions\",\n description: \"Action-related routes\",\n },\n {\n name: \"Apps\",\n description: \"App-related routes\",\n },\n {\n name: \"Authentications\",\n description: \"Authentication-related routes\",\n },\n {\n name: \"Client Credentials\",\n description: \"Client credentials management routes\",\n },\n {\n name: \"Documentation\",\n description: \"Documentation-related routes\",\n },\n];\n\n/**\n * Security schemes for OpenAPI specification\n *\n * Note: 'as const' is used on enum-like literal values (\"apiKey\", \"header\")\n * to ensure TypeScript treats them as literal types rather than generic strings.\n * This provides better type safety when the OpenAPI generator validates these values.\n */\nexport const securitySchemes = {\n userJwt: {\n type: \"apiKey\" as const,\n in: \"header\" as const,\n name: \"Authorization\",\n description:\n \"Format should be `JWT <your-jwt>` (you must ensure that the JWT prefix \" +\n \"is included in your requests).\\\\n\\\\n\" +\n \"Example: `Authorization: JWT your.jwt.value.here`\",\n },\n} as const;\n\n/**\n * Complete OpenAPI metadata for document generation\n */\nexport const openApiMetadata = {\n openapi: \"3.1.0\" as const,\n info: apiInfo,\n servers,\n tags,\n};\n"],"mappings":";AAgBO,IAAM,UAAU;AAAA,EACrB,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA,aAAa;AACf;AAEO,IAAM,UAAuD,CAAC;AAE9D,IAAM,OAAO;AAAA,EAClB;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AACF;AASO,IAAM,kBAAkB;AAAA,EAC7B,SAAS;AAAA,IACP,MAAM;AAAA,IACN,IAAI;AAAA,IACJ,MAAM;AAAA,IACN,aACE;AAAA,EAGJ;AACF;AAKO,IAAM,kBAAkB;AAAA,EAC7B,SAAS;AAAA,EACT,MAAM;AAAA,EACN;AAAA,EACA;AACF;","names":[]}
1
+ {"version":3,"sources":["../../../src/v0/config/metadata.ts"],"sourcesContent":["/**\n * OpenAPI specification metadata\n *\n * This file contains all the base metadata for the OpenAPI specification\n * that was previously stored in openapi-base.yaml.\n *\n * Note on 'as const' usage:\n * - We use 'as const' on literal values that should be treated as enums\n * (e.g., \"apiKey\", \"header\", \"3.1.0\") to get precise literal types\n * - We avoid 'as const' on top-level configuration objects to prevent\n * deep readonly types that can cause compatibility issues with libraries\n * expecting mutable types (like zod-to-openapi)\n * - If you encounter readonly type errors, check whether the consuming\n * library expects mutable types and remove 'as const' accordingly\n */\n\nexport const apiInfo = {\n title: \"Zapier SDK API\",\n version: \"1.0.0\",\n contact: {\n email: \"engineering@zapier.com\",\n },\n description: \"The Zapier SDK API serves as a backend for the Zapier SDK.\",\n};\n\nexport const servers: Array<{ url: string; description: string }> = [];\n\nexport const tags = [\n {\n name: \"Actions\",\n description: \"Action-related routes\",\n },\n {\n name: \"Apps\",\n description: \"App-related routes\",\n },\n {\n name: \"Authentications\",\n description: \"Authentication-related routes\",\n },\n {\n name: \"Client Credentials\",\n description: \"Client credentials management routes\",\n },\n {\n name: \"Deduplication\",\n description: \"Deduplication-related routes\",\n },\n {\n name: \"Documentation\",\n description: \"Documentation-related routes\",\n },\n];\n\n/**\n * Security schemes for OpenAPI specification\n *\n * Note: 'as const' is used on enum-like literal values (\"apiKey\", \"header\")\n * to ensure TypeScript treats them as literal types rather than generic strings.\n * This provides better type safety when the OpenAPI generator validates these values.\n */\nexport const securitySchemes = {\n userJwt: {\n type: \"apiKey\" as const,\n in: \"header\" as const,\n name: \"Authorization\",\n description:\n \"Format should be `JWT <your-jwt>` (you must ensure that the JWT prefix \" +\n \"is included in your requests).\\\\n\\\\n\" +\n \"Example: `Authorization: JWT your.jwt.value.here`\",\n },\n} as const;\n\n/**\n * Complete OpenAPI metadata for document generation\n */\nexport const openApiMetadata = {\n openapi: \"3.1.0\" as const,\n info: apiInfo,\n servers,\n tags,\n};\n"],"mappings":";AAgBO,IAAM,UAAU;AAAA,EACrB,OAAO;AAAA,EACP,SAAS;AAAA,EACT,SAAS;AAAA,IACP,OAAO;AAAA,EACT;AAAA,EACA,aAAa;AACf;AAEO,IAAM,UAAuD,CAAC;AAE9D,IAAM,OAAO;AAAA,EAClB;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AAAA,EACA;AAAA,IACE,MAAM;AAAA,IACN,aAAa;AAAA,EACf;AACF;AASO,IAAM,kBAAkB;AAAA,EAC7B,SAAS;AAAA,IACP,MAAM;AAAA,IACN,IAAI;AAAA,IACJ,MAAM;AAAA,IACN,aACE;AAAA,EAGJ;AACF;AAKO,IAAM,kBAAkB;AAAA,EAC7B,SAAS;AAAA,EACT,MAAM;AAAA,EACN;AAAA,EACA;AACF;","names":[]}
@@ -4,14 +4,14 @@ import { z } from 'zod';
4
4
  * Action type enum matching the internal Zapier API
5
5
  */
6
6
  declare const ActionTypeSchema: z.ZodEnum<{
7
- filter: "filter";
8
7
  read: "read";
9
8
  read_bulk: "read_bulk";
10
- run: "run";
9
+ write: "write";
11
10
  search: "search";
12
- search_and_write: "search_and_write";
13
11
  search_or_write: "search_or_write";
14
- write: "write";
12
+ search_and_write: "search_and_write";
13
+ filter: "filter";
14
+ run: "run";
15
15
  }>;
16
16
  type ActionType = z.infer<typeof ActionTypeSchema>;
17
17
  /**
@@ -20,14 +20,14 @@ type ActionType = z.infer<typeof ActionTypeSchema>;
20
20
  declare const ActionSchema: z.ZodObject<{
21
21
  id: z.ZodOptional<z.ZodString>;
22
22
  type: z.ZodEnum<{
23
- filter: "filter";
24
23
  read: "read";
25
24
  read_bulk: "read_bulk";
26
- run: "run";
25
+ write: "write";
27
26
  search: "search";
28
- search_and_write: "search_and_write";
29
27
  search_or_write: "search_or_write";
30
- write: "write";
28
+ search_and_write: "search_and_write";
29
+ filter: "filter";
30
+ run: "run";
31
31
  }>;
32
32
  key: z.ZodString;
33
33
  name: z.ZodString;
@@ -59,14 +59,14 @@ declare const ActionItemSchema: z.ZodObject<{
59
59
  app_key: z.ZodString;
60
60
  app_version: z.ZodOptional<z.ZodString>;
61
61
  action_type: z.ZodEnum<{
62
- filter: "filter";
63
62
  read: "read";
64
63
  read_bulk: "read_bulk";
65
- run: "run";
64
+ write: "write";
66
65
  search: "search";
67
- search_and_write: "search_and_write";
68
66
  search_or_write: "search_or_write";
69
- write: "write";
67
+ search_and_write: "search_and_write";
68
+ filter: "filter";
69
+ run: "run";
70
70
  }>;
71
71
  title: z.ZodString;
72
72
  type: z.ZodLiteral<"action">;
@@ -82,14 +82,14 @@ declare const ImplementationWithActionsSchema: z.ZodObject<{
82
82
  actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
83
83
  id: z.ZodOptional<z.ZodString>;
84
84
  type: z.ZodEnum<{
85
- filter: "filter";
86
85
  read: "read";
87
86
  read_bulk: "read_bulk";
88
- run: "run";
87
+ write: "write";
89
88
  search: "search";
90
- search_and_write: "search_and_write";
91
89
  search_or_write: "search_or_write";
92
- write: "write";
90
+ search_and_write: "search_and_write";
91
+ filter: "filter";
92
+ run: "run";
93
93
  }>;
94
94
  key: z.ZodString;
95
95
  name: z.ZodString;
@@ -121,14 +121,14 @@ declare const ImplementationsWithActionsResponseSchema: z.ZodObject<{
121
121
  actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
122
122
  id: z.ZodOptional<z.ZodString>;
123
123
  type: z.ZodEnum<{
124
- filter: "filter";
125
124
  read: "read";
126
125
  read_bulk: "read_bulk";
127
- run: "run";
126
+ write: "write";
128
127
  search: "search";
129
- search_and_write: "search_and_write";
130
128
  search_or_write: "search_or_write";
131
- write: "write";
129
+ search_and_write: "search_and_write";
130
+ filter: "filter";
131
+ run: "run";
132
132
  }>;
133
133
  key: z.ZodString;
134
134
  name: z.ZodString;
@@ -153,14 +153,14 @@ type ImplementationsWithActionsResponse = z.infer<typeof ImplementationsWithActi
153
153
  declare const ListActionsQuerySchema: z.ZodObject<{
154
154
  appKey: z.ZodString;
155
155
  actionType: z.ZodOptional<z.ZodEnum<{
156
- filter: "filter";
157
156
  read: "read";
158
157
  read_bulk: "read_bulk";
159
- run: "run";
158
+ write: "write";
160
159
  search: "search";
161
- search_and_write: "search_and_write";
162
160
  search_or_write: "search_or_write";
163
- write: "write";
161
+ search_and_write: "search_and_write";
162
+ filter: "filter";
163
+ run: "run";
164
164
  }>>;
165
165
  }, z.core.$strip>;
166
166
  /**
@@ -176,14 +176,14 @@ declare const ListActionsResponseSchema: z.ZodObject<{
176
176
  app_key: z.ZodString;
177
177
  app_version: z.ZodOptional<z.ZodString>;
178
178
  action_type: z.ZodEnum<{
179
- filter: "filter";
180
179
  read: "read";
181
180
  read_bulk: "read_bulk";
182
- run: "run";
181
+ write: "write";
183
182
  search: "search";
184
- search_and_write: "search_and_write";
185
183
  search_or_write: "search_or_write";
186
- write: "write";
184
+ search_and_write: "search_and_write";
185
+ filter: "filter";
186
+ run: "run";
187
187
  }>;
188
188
  title: z.ZodString;
189
189
  type: z.ZodLiteral<"action">;
@@ -4,14 +4,14 @@ import { z } from 'zod';
4
4
  * Action type enum matching the internal Zapier API
5
5
  */
6
6
  declare const ActionTypeSchema: z.ZodEnum<{
7
- filter: "filter";
8
7
  read: "read";
9
8
  read_bulk: "read_bulk";
10
- run: "run";
9
+ write: "write";
11
10
  search: "search";
12
- search_and_write: "search_and_write";
13
11
  search_or_write: "search_or_write";
14
- write: "write";
12
+ search_and_write: "search_and_write";
13
+ filter: "filter";
14
+ run: "run";
15
15
  }>;
16
16
  type ActionType = z.infer<typeof ActionTypeSchema>;
17
17
  /**
@@ -20,14 +20,14 @@ type ActionType = z.infer<typeof ActionTypeSchema>;
20
20
  declare const ActionSchema: z.ZodObject<{
21
21
  id: z.ZodOptional<z.ZodString>;
22
22
  type: z.ZodEnum<{
23
- filter: "filter";
24
23
  read: "read";
25
24
  read_bulk: "read_bulk";
26
- run: "run";
25
+ write: "write";
27
26
  search: "search";
28
- search_and_write: "search_and_write";
29
27
  search_or_write: "search_or_write";
30
- write: "write";
28
+ search_and_write: "search_and_write";
29
+ filter: "filter";
30
+ run: "run";
31
31
  }>;
32
32
  key: z.ZodString;
33
33
  name: z.ZodString;
@@ -59,14 +59,14 @@ declare const ActionItemSchema: z.ZodObject<{
59
59
  app_key: z.ZodString;
60
60
  app_version: z.ZodOptional<z.ZodString>;
61
61
  action_type: z.ZodEnum<{
62
- filter: "filter";
63
62
  read: "read";
64
63
  read_bulk: "read_bulk";
65
- run: "run";
64
+ write: "write";
66
65
  search: "search";
67
- search_and_write: "search_and_write";
68
66
  search_or_write: "search_or_write";
69
- write: "write";
67
+ search_and_write: "search_and_write";
68
+ filter: "filter";
69
+ run: "run";
70
70
  }>;
71
71
  title: z.ZodString;
72
72
  type: z.ZodLiteral<"action">;
@@ -82,14 +82,14 @@ declare const ImplementationWithActionsSchema: z.ZodObject<{
82
82
  actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
83
83
  id: z.ZodOptional<z.ZodString>;
84
84
  type: z.ZodEnum<{
85
- filter: "filter";
86
85
  read: "read";
87
86
  read_bulk: "read_bulk";
88
- run: "run";
87
+ write: "write";
89
88
  search: "search";
90
- search_and_write: "search_and_write";
91
89
  search_or_write: "search_or_write";
92
- write: "write";
90
+ search_and_write: "search_and_write";
91
+ filter: "filter";
92
+ run: "run";
93
93
  }>;
94
94
  key: z.ZodString;
95
95
  name: z.ZodString;
@@ -121,14 +121,14 @@ declare const ImplementationsWithActionsResponseSchema: z.ZodObject<{
121
121
  actions: z.ZodOptional<z.ZodArray<z.ZodObject<{
122
122
  id: z.ZodOptional<z.ZodString>;
123
123
  type: z.ZodEnum<{
124
- filter: "filter";
125
124
  read: "read";
126
125
  read_bulk: "read_bulk";
127
- run: "run";
126
+ write: "write";
128
127
  search: "search";
129
- search_and_write: "search_and_write";
130
128
  search_or_write: "search_or_write";
131
- write: "write";
129
+ search_and_write: "search_and_write";
130
+ filter: "filter";
131
+ run: "run";
132
132
  }>;
133
133
  key: z.ZodString;
134
134
  name: z.ZodString;
@@ -153,14 +153,14 @@ type ImplementationsWithActionsResponse = z.infer<typeof ImplementationsWithActi
153
153
  declare const ListActionsQuerySchema: z.ZodObject<{
154
154
  appKey: z.ZodString;
155
155
  actionType: z.ZodOptional<z.ZodEnum<{
156
- filter: "filter";
157
156
  read: "read";
158
157
  read_bulk: "read_bulk";
159
- run: "run";
158
+ write: "write";
160
159
  search: "search";
161
- search_and_write: "search_and_write";
162
160
  search_or_write: "search_or_write";
163
- write: "write";
161
+ search_and_write: "search_and_write";
162
+ filter: "filter";
163
+ run: "run";
164
164
  }>>;
165
165
  }, z.core.$strip>;
166
166
  /**
@@ -176,14 +176,14 @@ declare const ListActionsResponseSchema: z.ZodObject<{
176
176
  app_key: z.ZodString;
177
177
  app_version: z.ZodOptional<z.ZodString>;
178
178
  action_type: z.ZodEnum<{
179
- filter: "filter";
180
179
  read: "read";
181
180
  read_bulk: "read_bulk";
182
- run: "run";
181
+ write: "write";
183
182
  search: "search";
184
- search_and_write: "search_and_write";
185
183
  search_or_write: "search_or_write";
186
- write: "write";
184
+ search_and_write: "search_and_write";
185
+ filter: "filter";
186
+ run: "run";
187
187
  }>;
188
188
  title: z.ZodString;
189
189
  type: z.ZodLiteral<"action">;
@@ -5,23 +5,9 @@ import { z } from 'zod';
5
5
  * This extends ImplementationMetaSchema with transformed fields (title, key, implementation_id).
6
6
  */
7
7
  declare const AppItemSchema: z.ZodObject<{
8
- description: z.ZodOptional<z.ZodString>;
9
- is_hidden: z.ZodOptional<z.ZodBoolean>;
10
- auth_type: z.ZodOptional<z.ZodString>;
11
- actions: z.ZodOptional<z.ZodObject<{
12
- read: z.ZodOptional<z.ZodNumber>;
13
- read_bulk: z.ZodOptional<z.ZodNumber>;
14
- write: z.ZodOptional<z.ZodNumber>;
15
- search: z.ZodOptional<z.ZodNumber>;
16
- search_or_write: z.ZodOptional<z.ZodNumber>;
17
- search_and_write: z.ZodOptional<z.ZodNumber>;
18
- filter: z.ZodOptional<z.ZodNumber>;
19
- }, z.core.$strip>>;
20
- is_deprecated: z.ZodOptional<z.ZodBoolean>;
21
- is_beta: z.ZodOptional<z.ZodBoolean>;
22
- is_premium: z.ZodOptional<z.ZodBoolean>;
23
8
  slug: z.ZodString;
24
9
  age_in_days: z.ZodOptional<z.ZodNumber>;
10
+ auth_type: z.ZodOptional<z.ZodString>;
25
11
  banner: z.ZodOptional<z.ZodString>;
26
12
  categories: z.ZodOptional<z.ZodArray<z.ZodObject<{
27
13
  id: z.ZodNumber;
@@ -41,12 +27,26 @@ declare const AppItemSchema: z.ZodObject<{
41
27
  has_searches_or_writes: z.ZodOptional<z.ZodBoolean>;
42
28
  has_upfront_fields: z.ZodOptional<z.ZodBoolean>;
43
29
  has_writes: z.ZodOptional<z.ZodBoolean>;
30
+ is_beta: z.ZodOptional<z.ZodBoolean>;
44
31
  is_built_in: z.ZodOptional<z.ZodBoolean>;
32
+ is_deprecated: z.ZodOptional<z.ZodBoolean>;
45
33
  is_featured: z.ZodOptional<z.ZodBoolean>;
34
+ is_hidden: z.ZodOptional<z.ZodBoolean>;
46
35
  is_invite: z.ZodOptional<z.ZodBoolean>;
36
+ is_premium: z.ZodOptional<z.ZodBoolean>;
47
37
  is_public: z.ZodOptional<z.ZodBoolean>;
48
38
  is_upcoming: z.ZodOptional<z.ZodBoolean>;
49
39
  visibility: z.ZodOptional<z.ZodString>;
40
+ actions: z.ZodOptional<z.ZodObject<{
41
+ read: z.ZodOptional<z.ZodNumber>;
42
+ read_bulk: z.ZodOptional<z.ZodNumber>;
43
+ write: z.ZodOptional<z.ZodNumber>;
44
+ search: z.ZodOptional<z.ZodNumber>;
45
+ search_or_write: z.ZodOptional<z.ZodNumber>;
46
+ search_and_write: z.ZodOptional<z.ZodNumber>;
47
+ filter: z.ZodOptional<z.ZodNumber>;
48
+ }, z.core.$strip>>;
49
+ description: z.ZodOptional<z.ZodString>;
50
50
  primary_color: z.ZodOptional<z.ZodString>;
51
51
  secondary_color: z.ZodOptional<z.ZodString>;
52
52
  classification: z.ZodOptional<z.ZodString>;
@@ -72,23 +72,9 @@ declare const ListAppsQuerySchema: z.ZodObject<{
72
72
  */
73
73
  declare const ListAppsResponseSchema: z.ZodObject<{
74
74
  data: z.ZodArray<z.ZodObject<{
75
- description: z.ZodOptional<z.ZodString>;
76
- is_hidden: z.ZodOptional<z.ZodBoolean>;
77
- auth_type: z.ZodOptional<z.ZodString>;
78
- actions: z.ZodOptional<z.ZodObject<{
79
- read: z.ZodOptional<z.ZodNumber>;
80
- read_bulk: z.ZodOptional<z.ZodNumber>;
81
- write: z.ZodOptional<z.ZodNumber>;
82
- search: z.ZodOptional<z.ZodNumber>;
83
- search_or_write: z.ZodOptional<z.ZodNumber>;
84
- search_and_write: z.ZodOptional<z.ZodNumber>;
85
- filter: z.ZodOptional<z.ZodNumber>;
86
- }, z.core.$strip>>;
87
- is_deprecated: z.ZodOptional<z.ZodBoolean>;
88
- is_beta: z.ZodOptional<z.ZodBoolean>;
89
- is_premium: z.ZodOptional<z.ZodBoolean>;
90
75
  slug: z.ZodString;
91
76
  age_in_days: z.ZodOptional<z.ZodNumber>;
77
+ auth_type: z.ZodOptional<z.ZodString>;
92
78
  banner: z.ZodOptional<z.ZodString>;
93
79
  categories: z.ZodOptional<z.ZodArray<z.ZodObject<{
94
80
  id: z.ZodNumber;
@@ -108,12 +94,26 @@ declare const ListAppsResponseSchema: z.ZodObject<{
108
94
  has_searches_or_writes: z.ZodOptional<z.ZodBoolean>;
109
95
  has_upfront_fields: z.ZodOptional<z.ZodBoolean>;
110
96
  has_writes: z.ZodOptional<z.ZodBoolean>;
97
+ is_beta: z.ZodOptional<z.ZodBoolean>;
111
98
  is_built_in: z.ZodOptional<z.ZodBoolean>;
99
+ is_deprecated: z.ZodOptional<z.ZodBoolean>;
112
100
  is_featured: z.ZodOptional<z.ZodBoolean>;
101
+ is_hidden: z.ZodOptional<z.ZodBoolean>;
113
102
  is_invite: z.ZodOptional<z.ZodBoolean>;
103
+ is_premium: z.ZodOptional<z.ZodBoolean>;
114
104
  is_public: z.ZodOptional<z.ZodBoolean>;
115
105
  is_upcoming: z.ZodOptional<z.ZodBoolean>;
116
106
  visibility: z.ZodOptional<z.ZodString>;
107
+ actions: z.ZodOptional<z.ZodObject<{
108
+ read: z.ZodOptional<z.ZodNumber>;
109
+ read_bulk: z.ZodOptional<z.ZodNumber>;
110
+ write: z.ZodOptional<z.ZodNumber>;
111
+ search: z.ZodOptional<z.ZodNumber>;
112
+ search_or_write: z.ZodOptional<z.ZodNumber>;
113
+ search_and_write: z.ZodOptional<z.ZodNumber>;
114
+ filter: z.ZodOptional<z.ZodNumber>;
115
+ }, z.core.$strip>>;
116
+ description: z.ZodOptional<z.ZodString>;
117
117
  primary_color: z.ZodOptional<z.ZodString>;
118
118
  secondary_color: z.ZodOptional<z.ZodString>;
119
119
  classification: z.ZodOptional<z.ZodString>;
@@ -5,23 +5,9 @@ import { z } from 'zod';
5
5
  * This extends ImplementationMetaSchema with transformed fields (title, key, implementation_id).
6
6
  */
7
7
  declare const AppItemSchema: z.ZodObject<{
8
- description: z.ZodOptional<z.ZodString>;
9
- is_hidden: z.ZodOptional<z.ZodBoolean>;
10
- auth_type: z.ZodOptional<z.ZodString>;
11
- actions: z.ZodOptional<z.ZodObject<{
12
- read: z.ZodOptional<z.ZodNumber>;
13
- read_bulk: z.ZodOptional<z.ZodNumber>;
14
- write: z.ZodOptional<z.ZodNumber>;
15
- search: z.ZodOptional<z.ZodNumber>;
16
- search_or_write: z.ZodOptional<z.ZodNumber>;
17
- search_and_write: z.ZodOptional<z.ZodNumber>;
18
- filter: z.ZodOptional<z.ZodNumber>;
19
- }, z.core.$strip>>;
20
- is_deprecated: z.ZodOptional<z.ZodBoolean>;
21
- is_beta: z.ZodOptional<z.ZodBoolean>;
22
- is_premium: z.ZodOptional<z.ZodBoolean>;
23
8
  slug: z.ZodString;
24
9
  age_in_days: z.ZodOptional<z.ZodNumber>;
10
+ auth_type: z.ZodOptional<z.ZodString>;
25
11
  banner: z.ZodOptional<z.ZodString>;
26
12
  categories: z.ZodOptional<z.ZodArray<z.ZodObject<{
27
13
  id: z.ZodNumber;
@@ -41,12 +27,26 @@ declare const AppItemSchema: z.ZodObject<{
41
27
  has_searches_or_writes: z.ZodOptional<z.ZodBoolean>;
42
28
  has_upfront_fields: z.ZodOptional<z.ZodBoolean>;
43
29
  has_writes: z.ZodOptional<z.ZodBoolean>;
30
+ is_beta: z.ZodOptional<z.ZodBoolean>;
44
31
  is_built_in: z.ZodOptional<z.ZodBoolean>;
32
+ is_deprecated: z.ZodOptional<z.ZodBoolean>;
45
33
  is_featured: z.ZodOptional<z.ZodBoolean>;
34
+ is_hidden: z.ZodOptional<z.ZodBoolean>;
46
35
  is_invite: z.ZodOptional<z.ZodBoolean>;
36
+ is_premium: z.ZodOptional<z.ZodBoolean>;
47
37
  is_public: z.ZodOptional<z.ZodBoolean>;
48
38
  is_upcoming: z.ZodOptional<z.ZodBoolean>;
49
39
  visibility: z.ZodOptional<z.ZodString>;
40
+ actions: z.ZodOptional<z.ZodObject<{
41
+ read: z.ZodOptional<z.ZodNumber>;
42
+ read_bulk: z.ZodOptional<z.ZodNumber>;
43
+ write: z.ZodOptional<z.ZodNumber>;
44
+ search: z.ZodOptional<z.ZodNumber>;
45
+ search_or_write: z.ZodOptional<z.ZodNumber>;
46
+ search_and_write: z.ZodOptional<z.ZodNumber>;
47
+ filter: z.ZodOptional<z.ZodNumber>;
48
+ }, z.core.$strip>>;
49
+ description: z.ZodOptional<z.ZodString>;
50
50
  primary_color: z.ZodOptional<z.ZodString>;
51
51
  secondary_color: z.ZodOptional<z.ZodString>;
52
52
  classification: z.ZodOptional<z.ZodString>;
@@ -72,23 +72,9 @@ declare const ListAppsQuerySchema: z.ZodObject<{
72
72
  */
73
73
  declare const ListAppsResponseSchema: z.ZodObject<{
74
74
  data: z.ZodArray<z.ZodObject<{
75
- description: z.ZodOptional<z.ZodString>;
76
- is_hidden: z.ZodOptional<z.ZodBoolean>;
77
- auth_type: z.ZodOptional<z.ZodString>;
78
- actions: z.ZodOptional<z.ZodObject<{
79
- read: z.ZodOptional<z.ZodNumber>;
80
- read_bulk: z.ZodOptional<z.ZodNumber>;
81
- write: z.ZodOptional<z.ZodNumber>;
82
- search: z.ZodOptional<z.ZodNumber>;
83
- search_or_write: z.ZodOptional<z.ZodNumber>;
84
- search_and_write: z.ZodOptional<z.ZodNumber>;
85
- filter: z.ZodOptional<z.ZodNumber>;
86
- }, z.core.$strip>>;
87
- is_deprecated: z.ZodOptional<z.ZodBoolean>;
88
- is_beta: z.ZodOptional<z.ZodBoolean>;
89
- is_premium: z.ZodOptional<z.ZodBoolean>;
90
75
  slug: z.ZodString;
91
76
  age_in_days: z.ZodOptional<z.ZodNumber>;
77
+ auth_type: z.ZodOptional<z.ZodString>;
92
78
  banner: z.ZodOptional<z.ZodString>;
93
79
  categories: z.ZodOptional<z.ZodArray<z.ZodObject<{
94
80
  id: z.ZodNumber;
@@ -108,12 +94,26 @@ declare const ListAppsResponseSchema: z.ZodObject<{
108
94
  has_searches_or_writes: z.ZodOptional<z.ZodBoolean>;
109
95
  has_upfront_fields: z.ZodOptional<z.ZodBoolean>;
110
96
  has_writes: z.ZodOptional<z.ZodBoolean>;
97
+ is_beta: z.ZodOptional<z.ZodBoolean>;
111
98
  is_built_in: z.ZodOptional<z.ZodBoolean>;
99
+ is_deprecated: z.ZodOptional<z.ZodBoolean>;
112
100
  is_featured: z.ZodOptional<z.ZodBoolean>;
101
+ is_hidden: z.ZodOptional<z.ZodBoolean>;
113
102
  is_invite: z.ZodOptional<z.ZodBoolean>;
103
+ is_premium: z.ZodOptional<z.ZodBoolean>;
114
104
  is_public: z.ZodOptional<z.ZodBoolean>;
115
105
  is_upcoming: z.ZodOptional<z.ZodBoolean>;
116
106
  visibility: z.ZodOptional<z.ZodString>;
107
+ actions: z.ZodOptional<z.ZodObject<{
108
+ read: z.ZodOptional<z.ZodNumber>;
109
+ read_bulk: z.ZodOptional<z.ZodNumber>;
110
+ write: z.ZodOptional<z.ZodNumber>;
111
+ search: z.ZodOptional<z.ZodNumber>;
112
+ search_or_write: z.ZodOptional<z.ZodNumber>;
113
+ search_and_write: z.ZodOptional<z.ZodNumber>;
114
+ filter: z.ZodOptional<z.ZodNumber>;
115
+ }, z.core.$strip>>;
116
+ description: z.ZodOptional<z.ZodString>;
117
117
  primary_color: z.ZodOptional<z.ZodString>;
118
118
  secondary_color: z.ZodOptional<z.ZodString>;
119
119
  classification: z.ZodOptional<z.ZodString>;
package/openapi.yaml CHANGED
@@ -19,6 +19,8 @@ tags:
19
19
  description: Authentication-related routes
20
20
  - name: Client Credentials
21
21
  description: Client credentials management routes
22
+ - name: Deduplication
23
+ description: Deduplication-related routes
22
24
  - name: Documentation
23
25
  description: Documentation-related routes
24
26
  components:
@@ -153,6 +155,50 @@ components:
153
155
  required:
154
156
  - errors
155
157
  description: A JSON:API error response document containing an array of error objects.
158
+ CheckDedupeResponse:
159
+ type: object
160
+ properties:
161
+ data:
162
+ type: object
163
+ properties:
164
+ is_duplicate:
165
+ type: boolean
166
+ description: Whether this combination of dedupe_key and parameters has been seen before
167
+ dedupe_id:
168
+ type: string
169
+ format: uuid
170
+ description: Unique identifier for this dedupe record
171
+ created_at:
172
+ type: string
173
+ format: date-time
174
+ description: ISO 8601 timestamp when the record was created
175
+ expires_at:
176
+ type: string
177
+ format: date-time
178
+ description: ISO 8601 timestamp when the record will expire
179
+ required:
180
+ - is_duplicate
181
+ - dedupe_id
182
+ - created_at
183
+ - expires_at
184
+ description: The dedupe check result
185
+ required:
186
+ - data
187
+ CheckDedupeRequest:
188
+ type: object
189
+ properties:
190
+ dedupe_key:
191
+ type: string
192
+ minLength: 1
193
+ maxLength: 255
194
+ description: A key to namespace the deduplication check
195
+ parameters:
196
+ type: object
197
+ additionalProperties: {}
198
+ description: Parameters object to check for duplicates. The hash is computed from this object.
199
+ required:
200
+ - dedupe_key
201
+ - parameters
156
202
  CreateClientCredentialsResponse:
157
203
  type: object
158
204
  properties:
@@ -803,36 +849,35 @@ components:
803
849
  name: Authorization
804
850
  description: "Format should be `JWT <your-jwt>` (you must ensure that the JWT prefix is included in your requests).\\n\\nExample: `Authorization: JWT your.jwt.value.here`"
805
851
  paths:
806
- /api/v0/client-credentials:
852
+ /api/v0/dedupe/check:
807
853
  post:
808
- summary: Create client credentials
809
- description: Creates new client credentials for the authenticated user. The client_secret is only returned once in this response and cannot be retrieved again.
854
+ summary: Check for duplicate
855
+ description: Checks if a combination of dedupe_key and parameters has been seen before. If new, stores the hash and returns is_duplicate=false. If exists, returns is_duplicate=true. Records automatically expire after 7 days.
810
856
  tags:
811
- - Client Credentials
812
- operationId: v0_create_client_credentials
857
+ - Deduplication
858
+ operationId: v0_check_dedupe
813
859
  security:
814
860
  - userJwt: []
815
- x-required-scopes:
816
- - credentials
817
861
  requestBody:
818
862
  content:
819
863
  application/json:
820
864
  schema:
821
- $ref: "#/components/schemas/CreateClientCredentialsRequest"
865
+ $ref: "#/components/schemas/CheckDedupeRequest"
822
866
  examples:
823
867
  default:
824
- summary: Create credentials with external scope
868
+ summary: Check for duplicate email send
825
869
  value:
826
- name: My App Credentials
827
- allowed_scopes:
828
- - external
870
+ dedupe_key: email-campaign-123
871
+ parameters:
872
+ email: user@example.com
873
+ template_id: welcome-email
829
874
  responses:
830
- "201":
831
- description: Client credentials created successfully
875
+ "200":
876
+ description: Dedupe check completed successfully
832
877
  content:
833
878
  application/json:
834
879
  schema:
835
- $ref: "#/components/schemas/CreateClientCredentialsResponse"
880
+ $ref: "#/components/schemas/CheckDedupeResponse"
836
881
  "400":
837
882
  description: Bad Request
838
883
  content:
@@ -885,6 +930,58 @@ paths:
885
930
  application/json: &a7
886
931
  schema:
887
932
  $ref: "#/components/schemas/ErrorsResponse"
933
+ /api/v0/client-credentials:
934
+ post:
935
+ summary: Create client credentials
936
+ description: Creates new client credentials for the authenticated user. The client_secret is only returned once in this response and cannot be retrieved again.
937
+ tags:
938
+ - Client Credentials
939
+ operationId: v0_create_client_credentials
940
+ security:
941
+ - userJwt: []
942
+ x-required-scopes:
943
+ - credentials
944
+ requestBody:
945
+ content:
946
+ application/json:
947
+ schema:
948
+ $ref: "#/components/schemas/CreateClientCredentialsRequest"
949
+ examples:
950
+ default:
951
+ summary: Create credentials with external scope
952
+ value:
953
+ name: My App Credentials
954
+ allowed_scopes:
955
+ - external
956
+ responses:
957
+ "201":
958
+ description: Client credentials created successfully
959
+ content:
960
+ application/json:
961
+ schema:
962
+ $ref: "#/components/schemas/CreateClientCredentialsResponse"
963
+ "400":
964
+ description: Bad Request
965
+ content:
966
+ application/json: *a1
967
+ "401":
968
+ description: Unauthorized
969
+ content:
970
+ application/json: *a2
971
+ "429":
972
+ description: Too Many Requests
973
+ headers: *a3
974
+ content:
975
+ application/json: *a4
976
+ "500":
977
+ description: Server Error
978
+ content:
979
+ application/json: *a5
980
+ "503":
981
+ description: Service Unavailable
982
+ headers: *a6
983
+ content:
984
+ application/json: *a7
888
985
  get:
889
986
  summary: List client credentials
890
987
  description: Returns a paginated list of client credentials for the authenticated user.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zapier/zapier-sdk-core",
3
- "version": "0.7.0",
3
+ "version": "0.7.1",
4
4
  "description": "Core schemas and TypeScript types for the Zapier SDK API",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "author": "Zapier, Inc.",