@keystrokehq/scrape_do 0.1.2 → 0.1.4
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/dist/actions/cancel-async-job.cjs +1 -1
- package/dist/actions/cancel-async-job.cjs.map +1 -1
- package/dist/actions/cancel-async-job.d.cts +14 -2
- package/dist/actions/cancel-async-job.d.mts +14 -2
- package/dist/actions/cancel-async-job.mjs +1 -1
- package/dist/actions/cancel-async-job.mjs.map +1 -1
- package/dist/actions/create-async-job.cjs +3 -3
- package/dist/actions/create-async-job.cjs.map +1 -1
- package/dist/actions/create-async-job.d.cts +18 -6
- package/dist/actions/create-async-job.d.cts.map +1 -1
- package/dist/actions/create-async-job.d.mts +18 -6
- package/dist/actions/create-async-job.d.mts.map +1 -1
- package/dist/actions/create-async-job.mjs +3 -3
- package/dist/actions/create-async-job.mjs.map +1 -1
- package/dist/actions/get-account-info.cjs +1 -1
- package/dist/actions/get-account-info.cjs.map +1 -1
- package/dist/actions/get-account-info.d.cts +14 -2
- package/dist/actions/get-account-info.d.mts +14 -2
- package/dist/actions/get-account-info.mjs +1 -1
- package/dist/actions/get-account-info.mjs.map +1 -1
- package/dist/actions/get-amazon-offers.cjs +7 -7
- package/dist/actions/get-amazon-offers.cjs.map +1 -1
- package/dist/actions/get-amazon-offers.d.cts +21 -9
- package/dist/actions/get-amazon-offers.d.mts +21 -9
- package/dist/actions/get-amazon-offers.mjs +7 -7
- package/dist/actions/get-amazon-offers.mjs.map +1 -1
- package/dist/actions/get-amazon-product.cjs +7 -7
- package/dist/actions/get-amazon-product.cjs.map +1 -1
- package/dist/actions/get-amazon-product.d.cts +20 -8
- package/dist/actions/get-amazon-product.d.mts +20 -8
- package/dist/actions/get-amazon-product.mjs +7 -7
- package/dist/actions/get-amazon-product.mjs.map +1 -1
- package/dist/actions/get-amazon-raw-html.cjs +1 -1
- package/dist/actions/get-amazon-raw-html.cjs.map +1 -1
- package/dist/actions/get-amazon-raw-html.d.cts +14 -2
- package/dist/actions/get-amazon-raw-html.d.mts +14 -2
- package/dist/actions/get-amazon-raw-html.mjs +1 -1
- package/dist/actions/get-amazon-raw-html.mjs.map +1 -1
- package/dist/actions/get-async-account-info.cjs +1 -1
- package/dist/actions/get-async-account-info.cjs.map +1 -1
- package/dist/actions/get-async-account-info.d.cts +14 -2
- package/dist/actions/get-async-account-info.d.cts.map +1 -1
- package/dist/actions/get-async-account-info.d.mts +14 -2
- package/dist/actions/get-async-account-info.d.mts.map +1 -1
- package/dist/actions/get-async-account-info.mjs +1 -1
- package/dist/actions/get-async-account-info.mjs.map +1 -1
- package/dist/actions/get-async-job.cjs +2 -2
- package/dist/actions/get-async-job.cjs.map +1 -1
- package/dist/actions/get-async-job.d.cts +15 -3
- package/dist/actions/get-async-job.d.mts +15 -3
- package/dist/actions/get-async-job.mjs +2 -2
- package/dist/actions/get-async-job.mjs.map +1 -1
- package/dist/actions/get-async-task.cjs +2 -2
- package/dist/actions/get-async-task.cjs.map +1 -1
- package/dist/actions/get-async-task.d.cts +15 -3
- package/dist/actions/get-async-task.d.mts +15 -3
- package/dist/actions/get-async-task.mjs +2 -2
- package/dist/actions/get-async-task.mjs.map +1 -1
- package/dist/actions/get-page.cjs +1 -1
- package/dist/actions/get-page.cjs.map +1 -1
- package/dist/actions/get-page.d.cts +14 -2
- package/dist/actions/get-page.d.mts +14 -2
- package/dist/actions/get-page.mjs +1 -1
- package/dist/actions/get-page.mjs.map +1 -1
- package/dist/actions/list-async-jobs.cjs +2 -2
- package/dist/actions/list-async-jobs.cjs.map +1 -1
- package/dist/actions/list-async-jobs.d.cts +15 -3
- package/dist/actions/list-async-jobs.d.mts +15 -3
- package/dist/actions/list-async-jobs.mjs +2 -2
- package/dist/actions/list-async-jobs.mjs.map +1 -1
- package/dist/actions/proxy-mode.cjs +1 -1
- package/dist/actions/proxy-mode.cjs.map +1 -1
- package/dist/actions/proxy-mode.d.cts +14 -2
- package/dist/actions/proxy-mode.d.mts +14 -2
- package/dist/actions/proxy-mode.mjs +1 -1
- package/dist/actions/proxy-mode.mjs.map +1 -1
- package/dist/actions/scrape-url-post.cjs +2 -2
- package/dist/actions/scrape-url-post.cjs.map +1 -1
- package/dist/actions/scrape-url-post.d.cts +15 -3
- package/dist/actions/scrape-url-post.d.mts +15 -3
- package/dist/actions/scrape-url-post.mjs +2 -2
- package/dist/actions/scrape-url-post.mjs.map +1 -1
- package/dist/actions/search-amazon.cjs +4 -4
- package/dist/actions/search-amazon.cjs.map +1 -1
- package/dist/actions/search-amazon.d.cts +17 -5
- package/dist/actions/search-amazon.d.mts +17 -5
- package/dist/actions/search-amazon.mjs +4 -4
- package/dist/actions/search-amazon.mjs.map +1 -1
- package/dist/actions/set-block-urls.cjs +1 -1
- package/dist/actions/set-block-urls.cjs.map +1 -1
- package/dist/actions/set-block-urls.d.cts +14 -2
- package/dist/actions/set-block-urls.d.mts +14 -2
- package/dist/actions/set-block-urls.mjs +1 -1
- package/dist/actions/set-block-urls.mjs.map +1 -1
- package/dist/actions/set-regional-geo-code.cjs +1 -1
- package/dist/actions/set-regional-geo-code.cjs.map +1 -1
- package/dist/actions/set-regional-geo-code.d.cts +14 -2
- package/dist/actions/set-regional-geo-code.d.mts +14 -2
- package/dist/actions/set-regional-geo-code.mjs +1 -1
- package/dist/actions/set-regional-geo-code.mjs.map +1 -1
- package/dist/app.cjs +5 -2
- package/dist/app.cjs.map +1 -1
- package/dist/app.d.cts +9 -1
- package/dist/app.d.cts.map +1 -1
- package/dist/app.d.mts +9 -1
- package/dist/app.d.mts.map +1 -1
- package/dist/app.mjs +3 -1
- package/dist/app.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -12,16 +12,28 @@ declare const ScrapeDoListAsyncJobsOutput: z.ZodObject<{
|
|
|
12
12
|
EndTime: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
13
13
|
TaskIDs: z.ZodArray<z.ZodString>;
|
|
14
14
|
StartTime: z.ZodNullable<z.ZodString>;
|
|
15
|
-
}, z.core.$
|
|
15
|
+
}, z.core.$loose>>;
|
|
16
16
|
PageSize: z.ZodNullable<z.ZodNumber>;
|
|
17
17
|
PageNumber: z.ZodNullable<z.ZodNumber>;
|
|
18
18
|
TotalCount: z.ZodNullable<z.ZodNumber>;
|
|
19
19
|
TotalPages: z.ZodNullable<z.ZodNumber>;
|
|
20
|
-
}, z.core.$
|
|
20
|
+
}, z.core.$loose>;
|
|
21
21
|
declare const scrapeDoListAsyncJobs: import("@keystrokehq/action").WorkflowActionDefinition<{
|
|
22
22
|
page?: number | undefined;
|
|
23
23
|
page_size?: number | undefined;
|
|
24
|
-
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential
|
|
24
|
+
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential<"scrape_do", z.ZodObject<{
|
|
25
|
+
connectionId: z.ZodString;
|
|
26
|
+
entityId: z.ZodString;
|
|
27
|
+
instanceId: z.ZodString;
|
|
28
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
29
|
+
generic_token: z.ZodString;
|
|
30
|
+
}, z.core.$strip>>]>, readonly [import("@keystrokehq/shared").Credential<"scrape_do", z.ZodObject<{
|
|
31
|
+
connectionId: z.ZodString;
|
|
32
|
+
entityId: z.ZodString;
|
|
33
|
+
instanceId: z.ZodString;
|
|
34
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
35
|
+
generic_token: z.ZodString;
|
|
36
|
+
}, z.core.$strip>>]>;
|
|
25
37
|
//#endregion
|
|
26
38
|
export { scrapeDoListAsyncJobs };
|
|
27
39
|
//# sourceMappingURL=list-async-jobs.d.cts.map
|
|
@@ -12,16 +12,28 @@ declare const ScrapeDoListAsyncJobsOutput: z.ZodObject<{
|
|
|
12
12
|
EndTime: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
13
13
|
TaskIDs: z.ZodArray<z.ZodString>;
|
|
14
14
|
StartTime: z.ZodNullable<z.ZodString>;
|
|
15
|
-
}, z.core.$
|
|
15
|
+
}, z.core.$loose>>;
|
|
16
16
|
PageSize: z.ZodNullable<z.ZodNumber>;
|
|
17
17
|
PageNumber: z.ZodNullable<z.ZodNumber>;
|
|
18
18
|
TotalCount: z.ZodNullable<z.ZodNumber>;
|
|
19
19
|
TotalPages: z.ZodNullable<z.ZodNumber>;
|
|
20
|
-
}, z.core.$
|
|
20
|
+
}, z.core.$loose>;
|
|
21
21
|
declare const scrapeDoListAsyncJobs: import("@keystrokehq/action").WorkflowActionDefinition<{
|
|
22
22
|
page?: number | undefined;
|
|
23
23
|
page_size?: number | undefined;
|
|
24
|
-
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential
|
|
24
|
+
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential<"scrape_do", z.ZodObject<{
|
|
25
|
+
connectionId: z.ZodString;
|
|
26
|
+
entityId: z.ZodString;
|
|
27
|
+
instanceId: z.ZodString;
|
|
28
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
29
|
+
generic_token: z.ZodString;
|
|
30
|
+
}, z.core.$strip>>]>, readonly [import("@keystrokehq/shared").Credential<"scrape_do", z.ZodObject<{
|
|
31
|
+
connectionId: z.ZodString;
|
|
32
|
+
entityId: z.ZodString;
|
|
33
|
+
instanceId: z.ZodString;
|
|
34
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
35
|
+
generic_token: z.ZodString;
|
|
36
|
+
}, z.core.$strip>>]>;
|
|
25
37
|
//#endregion
|
|
26
38
|
export { scrapeDoListAsyncJobs };
|
|
27
39
|
//# sourceMappingURL=list-async-jobs.d.mts.map
|
|
@@ -11,7 +11,7 @@ const ScrapeDoListAsyncJobs_JobDetailsSchema = z.object({
|
|
|
11
11
|
EndTime: z.string().describe("ISO 8601 timestamp when the job ended (null if not completed)").nullable().optional(),
|
|
12
12
|
TaskIDs: z.array(z.string()).describe("Array of task UUID strings associated with this job"),
|
|
13
13
|
StartTime: z.string().describe("ISO 8601 timestamp when the job started").nullable()
|
|
14
|
-
}).describe("Details of an individual scraping job.");
|
|
14
|
+
}).passthrough().describe("Details of an individual scraping job.");
|
|
15
15
|
const scrapeDoListAsyncJobs = action("SCRAPE_DO_LIST_ASYNC_JOBS", {
|
|
16
16
|
slug: "scrape_do-list-async-jobs",
|
|
17
17
|
name: "List Asynchronous Scraping Jobs",
|
|
@@ -23,7 +23,7 @@ const scrapeDoListAsyncJobs = action("SCRAPE_DO_LIST_ASYNC_JOBS", {
|
|
|
23
23
|
PageNumber: z.number().int().describe("Current page number").nullable(),
|
|
24
24
|
TotalCount: z.number().int().describe("Total number of jobs available").nullable(),
|
|
25
25
|
TotalPages: z.number().int().describe("Total number of pages available").nullable()
|
|
26
|
-
}).describe("Response model for listing asynchronous scraping jobs.")
|
|
26
|
+
}).passthrough().describe("Response model for listing asynchronous scraping jobs.")
|
|
27
27
|
});
|
|
28
28
|
//#endregion
|
|
29
29
|
export { scrapeDoListAsyncJobs };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-async-jobs.mjs","names":[],"sources":["../../src/actions/list-async-jobs.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapeDoListAsyncJobsInput = z.object({\n page: z.number().int().default(1).describe(\"Page number for pagination (default: 1, minimum: 1)\").optional(),\n page_size: z.number().int().default(10).describe(\"Number of jobs per page (default: 10, maximum: 100)\").optional(),\n}).describe(\"Request model for listing asynchronous scraping jobs.\");\nconst ScrapeDoListAsyncJobs_JobDetailsSchema = z.object({\n JobID: z.string().describe(\"Unique identifier for the job\").nullable(),\n Status: z.string().describe(\"Current status of the job (queuing, queued, pending, rotating, success, error, canceled)\").nullable(),\n EndTime: z.string().describe(\"ISO 8601 timestamp when the job ended (null if not completed)\").nullable().optional(),\n TaskIDs: z.array(z.string()).describe(\"Array of task UUID strings associated with this job\"),\n StartTime: z.string().describe(\"ISO 8601 timestamp when the job started\").nullable(),\n}).describe(\"Details of an individual scraping job.\");\nexport const ScrapeDoListAsyncJobsOutput = z.object({\n Jobs: z.array(ScrapeDoListAsyncJobs_JobDetailsSchema).describe(\"List of jobs with their status and metadata\"),\n PageSize: z.number().int().describe(\"Number of jobs per page\").nullable(),\n PageNumber: z.number().int().describe(\"Current page number\").nullable(),\n TotalCount: z.number().int().describe(\"Total number of jobs available\").nullable(),\n TotalPages: z.number().int().describe(\"Total number of pages available\").nullable(),\n}).describe(\"Response model for listing asynchronous scraping jobs.\");\n\nexport const scrapeDoListAsyncJobs = action(\"SCRAPE_DO_LIST_ASYNC_JOBS\", {\n slug: \"scrape_do-list-async-jobs\",\n name: \"List Asynchronous Scraping Jobs\",\n description: \"Tool to list all asynchronous scraping jobs. Returns paginated list of jobs with their status and metadata. Use when you need to retrieve job history or monitor job statuses. Supports pagination with up to 100 jobs per page.\",\n input: ScrapeDoListAsyncJobsInput,\n output: ScrapeDoListAsyncJobsOutput,\n});\n"],"mappings":";;;AAIA,MAAa,6BAA6B,EAAE,OAAO;CACjD,MAAM,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,qDAAqD,CAAC,CAAC,SAAS;CAC3G,WAAW,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,qDAAqD,CAAC,CAAC,SAAS;AACnH,CAAC,CAAC,CAAC,SAAS,uDAAuD;AACnE,MAAM,yCAAyC,EAAE,OAAO;CACtD,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS;CACrE,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,0FAA0F,CAAC,CAAC,SAAS;CACjI,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,+DAA+D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAClH,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,qDAAqD;CAC3F,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS;AACrF,CAAC,CAAC,CAAC,SAAS,wCAAwC;
|
|
1
|
+
{"version":3,"file":"list-async-jobs.mjs","names":[],"sources":["../../src/actions/list-async-jobs.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapeDoListAsyncJobsInput = z.object({\n page: z.number().int().default(1).describe(\"Page number for pagination (default: 1, minimum: 1)\").optional(),\n page_size: z.number().int().default(10).describe(\"Number of jobs per page (default: 10, maximum: 100)\").optional(),\n}).describe(\"Request model for listing asynchronous scraping jobs.\");\nconst ScrapeDoListAsyncJobs_JobDetailsSchema = z.object({\n JobID: z.string().describe(\"Unique identifier for the job\").nullable(),\n Status: z.string().describe(\"Current status of the job (queuing, queued, pending, rotating, success, error, canceled)\").nullable(),\n EndTime: z.string().describe(\"ISO 8601 timestamp when the job ended (null if not completed)\").nullable().optional(),\n TaskIDs: z.array(z.string()).describe(\"Array of task UUID strings associated with this job\"),\n StartTime: z.string().describe(\"ISO 8601 timestamp when the job started\").nullable(),\n}).passthrough().describe(\"Details of an individual scraping job.\");\nexport const ScrapeDoListAsyncJobsOutput = z.object({\n Jobs: z.array(ScrapeDoListAsyncJobs_JobDetailsSchema).describe(\"List of jobs with their status and metadata\"),\n PageSize: z.number().int().describe(\"Number of jobs per page\").nullable(),\n PageNumber: z.number().int().describe(\"Current page number\").nullable(),\n TotalCount: z.number().int().describe(\"Total number of jobs available\").nullable(),\n TotalPages: z.number().int().describe(\"Total number of pages available\").nullable(),\n}).passthrough().describe(\"Response model for listing asynchronous scraping jobs.\");\n\nexport const scrapeDoListAsyncJobs = action(\"SCRAPE_DO_LIST_ASYNC_JOBS\", {\n slug: \"scrape_do-list-async-jobs\",\n name: \"List Asynchronous Scraping Jobs\",\n description: \"Tool to list all asynchronous scraping jobs. Returns paginated list of jobs with their status and metadata. Use when you need to retrieve job history or monitor job statuses. Supports pagination with up to 100 jobs per page.\",\n input: ScrapeDoListAsyncJobsInput,\n output: ScrapeDoListAsyncJobsOutput,\n});\n"],"mappings":";;;AAIA,MAAa,6BAA6B,EAAE,OAAO;CACjD,MAAM,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,qDAAqD,CAAC,CAAC,SAAS;CAC3G,WAAW,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,qDAAqD,CAAC,CAAC,SAAS;AACnH,CAAC,CAAC,CAAC,SAAS,uDAAuD;AACnE,MAAM,yCAAyC,EAAE,OAAO;CACtD,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B,CAAC,CAAC,SAAS;CACrE,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,0FAA0F,CAAC,CAAC,SAAS;CACjI,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,+DAA+D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAClH,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,qDAAqD;CAC3F,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS;AACrF,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,wCAAwC;AASlE,MAAa,wBAAwB,OAAO,6BAA6B;CACvE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAbyC,EAAE,OAAO;EAClD,MAAM,EAAE,MAAM,sCAAsC,CAAC,CAAC,SAAS,6CAA6C;EAC5G,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yBAAyB,CAAC,CAAC,SAAS;EACxE,YAAY,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,qBAAqB,CAAC,CAAC,SAAS;EACtE,YAAY,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,gCAAgC,CAAC,CAAC,SAAS;EACjF,YAAY,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,iCAAiC,CAAC,CAAC,SAAS;CACpF,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,wDAOhB;AACV,CAAC"}
|
|
@@ -12,7 +12,7 @@ const ScrapeDoProxyModeOutput = zod.z.object({
|
|
|
12
12
|
content: zod.z.string().describe("The scraped content from the target webpage").nullable(),
|
|
13
13
|
headers: zod.z.record(zod.z.string(), zod.z.unknown()).describe("Response headers including Scrape.do specific headers"),
|
|
14
14
|
status_code: zod.z.number().int().describe("HTTP status code of the response").nullable()
|
|
15
|
-
}).describe("Response model for SCRAPE_DO_PROXY_MODE action.");
|
|
15
|
+
}).passthrough().describe("Response model for SCRAPE_DO_PROXY_MODE action.");
|
|
16
16
|
const scrapeDoProxyMode = require_action.action("SCRAPE_DO_PROXY_MODE", {
|
|
17
17
|
slug: "scrape_do-proxy-mode",
|
|
18
18
|
name: "Use Scrape.do Proxy Mode",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy-mode.cjs","names":["z","action"],"sources":["../../src/actions/proxy-mode.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapeDoProxyModeInput = z.object({\n url: z.string().describe(\"The target URL to scrape\"),\n device: z.string().default(\"desktop\").describe(\"Device type to simulate (desktop, mobile, tablet)\").optional(),\n render: z.boolean().default(false).describe(\"Enable/disable JavaScript rendering\").optional(),\n geo_code: z.string().describe(\"Geographic location for the request (e.g., 'us', 'uk')\").optional(),\n custom_headers: z.boolean().default(true).describe(\"Whether to forward custom headers to the target website\").optional(),\n}).describe(\"Request model for SCRAPE_DO_PROXY_MODE action.\");\nexport const ScrapeDoProxyModeOutput = z.object({\n content: z.string().describe(\"The scraped content from the target webpage\").nullable(),\n headers: z.record(z.string(), z.unknown()).describe(\"Response headers including Scrape.do specific headers\"),\n status_code: z.number().int().describe(\"HTTP status code of the response\").nullable(),\n}).describe(\"Response model for SCRAPE_DO_PROXY_MODE action.\");\n\nexport const scrapeDoProxyMode = action(\"SCRAPE_DO_PROXY_MODE\", {\n slug: \"scrape_do-proxy-mode\",\n name: \"Use Scrape.do Proxy Mode\",\n description: \"This tool implements the Proxy Mode functionality of scrape.do, which allows routing requests through their proxy server. It provides an alternative way to access web scraping capabilities by handling complex JavaScript-rendered pages, geolocation-based routing, device simulation, and built-in anti-bot and retry mechanisms.\",\n input: ScrapeDoProxyModeInput,\n output: ScrapeDoProxyModeOutput,\n});\n"],"mappings":";;;AAIA,MAAa,yBAAyBA,IAAAA,EAAE,OAAO;CAC7C,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0BAA0B;CACnD,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,QAAQ,SAAS,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;CAC7G,QAAQA,IAAAA,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;CAC5F,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,wDAAwD,CAAC,CAAC,SAAS;CACjG,gBAAgBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,yDAAyD,CAAC,CAAC,SAAS;AACzH,CAAC,CAAC,CAAC,SAAS,gDAAgD;AAC5D,MAAa,0BAA0BA,IAAAA,EAAE,OAAO;CAC9C,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,6CAA6C,CAAC,CAAC,SAAS;CACrF,SAASA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,uDAAuD;CAC3G,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kCAAkC,CAAC,CAAC,SAAS;AACtF,CAAC,CAAC,CAAC,SAAS,iDAAiD;
|
|
1
|
+
{"version":3,"file":"proxy-mode.cjs","names":["z","action"],"sources":["../../src/actions/proxy-mode.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapeDoProxyModeInput = z.object({\n url: z.string().describe(\"The target URL to scrape\"),\n device: z.string().default(\"desktop\").describe(\"Device type to simulate (desktop, mobile, tablet)\").optional(),\n render: z.boolean().default(false).describe(\"Enable/disable JavaScript rendering\").optional(),\n geo_code: z.string().describe(\"Geographic location for the request (e.g., 'us', 'uk')\").optional(),\n custom_headers: z.boolean().default(true).describe(\"Whether to forward custom headers to the target website\").optional(),\n}).describe(\"Request model for SCRAPE_DO_PROXY_MODE action.\");\nexport const ScrapeDoProxyModeOutput = z.object({\n content: z.string().describe(\"The scraped content from the target webpage\").nullable(),\n headers: z.record(z.string(), z.unknown()).describe(\"Response headers including Scrape.do specific headers\"),\n status_code: z.number().int().describe(\"HTTP status code of the response\").nullable(),\n}).passthrough().describe(\"Response model for SCRAPE_DO_PROXY_MODE action.\");\n\nexport const scrapeDoProxyMode = action(\"SCRAPE_DO_PROXY_MODE\", {\n slug: \"scrape_do-proxy-mode\",\n name: \"Use Scrape.do Proxy Mode\",\n description: \"This tool implements the Proxy Mode functionality of scrape.do, which allows routing requests through their proxy server. It provides an alternative way to access web scraping capabilities by handling complex JavaScript-rendered pages, geolocation-based routing, device simulation, and built-in anti-bot and retry mechanisms.\",\n input: ScrapeDoProxyModeInput,\n output: ScrapeDoProxyModeOutput,\n});\n"],"mappings":";;;AAIA,MAAa,yBAAyBA,IAAAA,EAAE,OAAO;CAC7C,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0BAA0B;CACnD,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,QAAQ,SAAS,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;CAC7G,QAAQA,IAAAA,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;CAC5F,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,wDAAwD,CAAC,CAAC,SAAS;CACjG,gBAAgBA,IAAAA,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,yDAAyD,CAAC,CAAC,SAAS;AACzH,CAAC,CAAC,CAAC,SAAS,gDAAgD;AAC5D,MAAa,0BAA0BA,IAAAA,EAAE,OAAO;CAC9C,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,6CAA6C,CAAC,CAAC,SAAS;CACrF,SAASA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,uDAAuD;CAC3G,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kCAAkC,CAAC,CAAC,SAAS;AACtF,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,iDAAiD;AAE3E,MAAa,oBAAoBC,eAAAA,OAAO,wBAAwB;CAC9D,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
|
|
@@ -12,14 +12,26 @@ declare const ScrapeDoProxyModeOutput: z.ZodObject<{
|
|
|
12
12
|
content: z.ZodNullable<z.ZodString>;
|
|
13
13
|
headers: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
14
14
|
status_code: z.ZodNullable<z.ZodNumber>;
|
|
15
|
-
}, z.core.$
|
|
15
|
+
}, z.core.$loose>;
|
|
16
16
|
declare const scrapeDoProxyMode: import("@keystrokehq/action").WorkflowActionDefinition<{
|
|
17
17
|
url: string;
|
|
18
18
|
device?: string | undefined;
|
|
19
19
|
render?: boolean | undefined;
|
|
20
20
|
geo_code?: string | undefined;
|
|
21
21
|
custom_headers?: boolean | undefined;
|
|
22
|
-
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential
|
|
22
|
+
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential<"scrape_do", z.ZodObject<{
|
|
23
|
+
connectionId: z.ZodString;
|
|
24
|
+
entityId: z.ZodString;
|
|
25
|
+
instanceId: z.ZodString;
|
|
26
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
27
|
+
generic_token: z.ZodString;
|
|
28
|
+
}, z.core.$strip>>]>, readonly [import("@keystrokehq/shared").Credential<"scrape_do", z.ZodObject<{
|
|
29
|
+
connectionId: z.ZodString;
|
|
30
|
+
entityId: z.ZodString;
|
|
31
|
+
instanceId: z.ZodString;
|
|
32
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
33
|
+
generic_token: z.ZodString;
|
|
34
|
+
}, z.core.$strip>>]>;
|
|
23
35
|
//#endregion
|
|
24
36
|
export { scrapeDoProxyMode };
|
|
25
37
|
//# sourceMappingURL=proxy-mode.d.cts.map
|
|
@@ -12,14 +12,26 @@ declare const ScrapeDoProxyModeOutput: z.ZodObject<{
|
|
|
12
12
|
content: z.ZodNullable<z.ZodString>;
|
|
13
13
|
headers: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
14
14
|
status_code: z.ZodNullable<z.ZodNumber>;
|
|
15
|
-
}, z.core.$
|
|
15
|
+
}, z.core.$loose>;
|
|
16
16
|
declare const scrapeDoProxyMode: import("@keystrokehq/action").WorkflowActionDefinition<{
|
|
17
17
|
url: string;
|
|
18
18
|
device?: string | undefined;
|
|
19
19
|
render?: boolean | undefined;
|
|
20
20
|
geo_code?: string | undefined;
|
|
21
21
|
custom_headers?: boolean | undefined;
|
|
22
|
-
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential
|
|
22
|
+
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential<"scrape_do", z.ZodObject<{
|
|
23
|
+
connectionId: z.ZodString;
|
|
24
|
+
entityId: z.ZodString;
|
|
25
|
+
instanceId: z.ZodString;
|
|
26
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
27
|
+
generic_token: z.ZodString;
|
|
28
|
+
}, z.core.$strip>>]>, readonly [import("@keystrokehq/shared").Credential<"scrape_do", z.ZodObject<{
|
|
29
|
+
connectionId: z.ZodString;
|
|
30
|
+
entityId: z.ZodString;
|
|
31
|
+
instanceId: z.ZodString;
|
|
32
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
33
|
+
generic_token: z.ZodString;
|
|
34
|
+
}, z.core.$strip>>]>;
|
|
23
35
|
//#endregion
|
|
24
36
|
export { scrapeDoProxyMode };
|
|
25
37
|
//# sourceMappingURL=proxy-mode.d.mts.map
|
|
@@ -15,7 +15,7 @@ const scrapeDoProxyMode = action("SCRAPE_DO_PROXY_MODE", {
|
|
|
15
15
|
content: z.string().describe("The scraped content from the target webpage").nullable(),
|
|
16
16
|
headers: z.record(z.string(), z.unknown()).describe("Response headers including Scrape.do specific headers"),
|
|
17
17
|
status_code: z.number().int().describe("HTTP status code of the response").nullable()
|
|
18
|
-
}).describe("Response model for SCRAPE_DO_PROXY_MODE action.")
|
|
18
|
+
}).passthrough().describe("Response model for SCRAPE_DO_PROXY_MODE action.")
|
|
19
19
|
});
|
|
20
20
|
//#endregion
|
|
21
21
|
export { scrapeDoProxyMode };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proxy-mode.mjs","names":[],"sources":["../../src/actions/proxy-mode.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapeDoProxyModeInput = z.object({\n url: z.string().describe(\"The target URL to scrape\"),\n device: z.string().default(\"desktop\").describe(\"Device type to simulate (desktop, mobile, tablet)\").optional(),\n render: z.boolean().default(false).describe(\"Enable/disable JavaScript rendering\").optional(),\n geo_code: z.string().describe(\"Geographic location for the request (e.g., 'us', 'uk')\").optional(),\n custom_headers: z.boolean().default(true).describe(\"Whether to forward custom headers to the target website\").optional(),\n}).describe(\"Request model for SCRAPE_DO_PROXY_MODE action.\");\nexport const ScrapeDoProxyModeOutput = z.object({\n content: z.string().describe(\"The scraped content from the target webpage\").nullable(),\n headers: z.record(z.string(), z.unknown()).describe(\"Response headers including Scrape.do specific headers\"),\n status_code: z.number().int().describe(\"HTTP status code of the response\").nullable(),\n}).describe(\"Response model for SCRAPE_DO_PROXY_MODE action.\");\n\nexport const scrapeDoProxyMode = action(\"SCRAPE_DO_PROXY_MODE\", {\n slug: \"scrape_do-proxy-mode\",\n name: \"Use Scrape.do Proxy Mode\",\n description: \"This tool implements the Proxy Mode functionality of scrape.do, which allows routing requests through their proxy server. It provides an alternative way to access web scraping capabilities by handling complex JavaScript-rendered pages, geolocation-based routing, device simulation, and built-in anti-bot and retry mechanisms.\",\n input: ScrapeDoProxyModeInput,\n output: ScrapeDoProxyModeOutput,\n});\n"],"mappings":";;AAiBA,MAAa,oBAAoB,OAAO,wBAAwB;CAC9D,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAjBoC,EAAE,OAAO;EAC7C,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,0BAA0B;EACnD,QAAQ,EAAE,OAAO,CAAC,CAAC,QAAQ,SAAS,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;EAC7G,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;EAC5F,UAAU,EAAE,OAAO,CAAC,CAAC,SAAS,wDAAwD,CAAC,CAAC,SAAS;EACjG,gBAAgB,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,yDAAyD,CAAC,CAAC,SAAS;CACzH,CAAC,CAAC,CAAC,SAAS,gDAWH;CACP,QAXqC,EAAE,OAAO;EAC9C,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,6CAA6C,CAAC,CAAC,SAAS;EACrF,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,uDAAuD;EAC3G,aAAa,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kCAAkC,CAAC,CAAC,SAAS;CACtF,CAAC,CAAC,CAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"proxy-mode.mjs","names":[],"sources":["../../src/actions/proxy-mode.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapeDoProxyModeInput = z.object({\n url: z.string().describe(\"The target URL to scrape\"),\n device: z.string().default(\"desktop\").describe(\"Device type to simulate (desktop, mobile, tablet)\").optional(),\n render: z.boolean().default(false).describe(\"Enable/disable JavaScript rendering\").optional(),\n geo_code: z.string().describe(\"Geographic location for the request (e.g., 'us', 'uk')\").optional(),\n custom_headers: z.boolean().default(true).describe(\"Whether to forward custom headers to the target website\").optional(),\n}).describe(\"Request model for SCRAPE_DO_PROXY_MODE action.\");\nexport const ScrapeDoProxyModeOutput = z.object({\n content: z.string().describe(\"The scraped content from the target webpage\").nullable(),\n headers: z.record(z.string(), z.unknown()).describe(\"Response headers including Scrape.do specific headers\"),\n status_code: z.number().int().describe(\"HTTP status code of the response\").nullable(),\n}).passthrough().describe(\"Response model for SCRAPE_DO_PROXY_MODE action.\");\n\nexport const scrapeDoProxyMode = action(\"SCRAPE_DO_PROXY_MODE\", {\n slug: \"scrape_do-proxy-mode\",\n name: \"Use Scrape.do Proxy Mode\",\n description: \"This tool implements the Proxy Mode functionality of scrape.do, which allows routing requests through their proxy server. It provides an alternative way to access web scraping capabilities by handling complex JavaScript-rendered pages, geolocation-based routing, device simulation, and built-in anti-bot and retry mechanisms.\",\n input: ScrapeDoProxyModeInput,\n output: ScrapeDoProxyModeOutput,\n});\n"],"mappings":";;AAiBA,MAAa,oBAAoB,OAAO,wBAAwB;CAC9D,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAjBoC,EAAE,OAAO;EAC7C,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,0BAA0B;EACnD,QAAQ,EAAE,OAAO,CAAC,CAAC,QAAQ,SAAS,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;EAC7G,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,qCAAqC,CAAC,CAAC,SAAS;EAC5F,UAAU,EAAE,OAAO,CAAC,CAAC,SAAS,wDAAwD,CAAC,CAAC,SAAS;EACjG,gBAAgB,EAAE,QAAQ,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,yDAAyD,CAAC,CAAC,SAAS;CACzH,CAAC,CAAC,CAAC,SAAS,gDAWH;CACP,QAXqC,EAAE,OAAO;EAC9C,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,6CAA6C,CAAC,CAAC,SAAS;EACrF,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,uDAAuD;EAC3G,aAAa,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kCAAkC,CAAC,CAAC,SAAS;CACtF,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,iDAOhB;AACV,CAAC"}
|
|
@@ -19,9 +19,9 @@ const ScrapeDoScrapeUrlPostInput = zod.z.object({
|
|
|
19
19
|
}).describe("Request model for SCRAPE_DO_SCRAPE_URL_POST action.");
|
|
20
20
|
const ScrapeDoScrapeUrlPostOutput = zod.z.object({
|
|
21
21
|
content: zod.z.string().describe("The scraped content from the target webpage response").nullable(),
|
|
22
|
-
headers: zod.z.
|
|
22
|
+
headers: zod.z.record(zod.z.string(), zod.z.unknown()).describe("Response headers including Scrape.do specific headers"),
|
|
23
23
|
status_code: zod.z.number().int().describe("HTTP status code of the response").nullable()
|
|
24
|
-
}).describe("Response model for SCRAPE_DO_SCRAPE_URL_POST action.");
|
|
24
|
+
}).passthrough().describe("Response model for SCRAPE_DO_SCRAPE_URL_POST action.");
|
|
25
25
|
const scrapeDoScrapeUrlPost = require_action.action("SCRAPE_DO_SCRAPE_URL_POST", {
|
|
26
26
|
slug: "scrape_do-scrape-url-post",
|
|
27
27
|
name: "Scrape URL using POST method",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scrape-url-post.cjs","names":["z","action"],"sources":["../../src/actions/scrape-url-post.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapeDoScrapeUrlPostInput = z.object({\n url: z.string().describe(\"Target web page URL to scrape with POST request\"),\n body: z.string().describe(\"HTTP request body for POST request. Can be JSON string, form data, or plain text\").optional(),\n \"super\": z.boolean().describe(\"Enable residential/mobile proxies. Costs 10x credits\").optional(),\n device: z.enum([\"desktop\", \"mobile\", \"tablet\"]).describe(\"Device types for scraping emulation.\").optional(),\n render: z.boolean().describe(\"Enable JavaScript rendering with headless browser\").optional(),\n geoCode: z.string().describe(\"Country code for geo-targeting (e.g. 'us', 'gb', 'de')\").optional(),\n timeout: z.number().int().describe(\"Total request timeout in milliseconds (5000-120000)\").optional(),\n sessionId: z.string().describe(\"Sticky session ID to reuse same IP address across multiple requests\").optional(),\n setCookies: z.string().describe(\"Cookies to include with the request (format: key1=value1; key2=value2)\").optional(),\n customHeaders: z.boolean().describe(\"Enable sending custom headers with the request\").optional(),\n}).describe(\"Request model for SCRAPE_DO_SCRAPE_URL_POST action.\");\nexport const ScrapeDoScrapeUrlPostOutput = z.object({\n content: z.string().describe(\"The scraped content from the target webpage response\").nullable(),\n headers: z.
|
|
1
|
+
{"version":3,"file":"scrape-url-post.cjs","names":["z","action"],"sources":["../../src/actions/scrape-url-post.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapeDoScrapeUrlPostInput = z.object({\n url: z.string().describe(\"Target web page URL to scrape with POST request\"),\n body: z.string().describe(\"HTTP request body for POST request. Can be JSON string, form data, or plain text\").optional(),\n \"super\": z.boolean().describe(\"Enable residential/mobile proxies. Costs 10x credits\").optional(),\n device: z.enum([\"desktop\", \"mobile\", \"tablet\"]).describe(\"Device types for scraping emulation.\").optional(),\n render: z.boolean().describe(\"Enable JavaScript rendering with headless browser\").optional(),\n geoCode: z.string().describe(\"Country code for geo-targeting (e.g. 'us', 'gb', 'de')\").optional(),\n timeout: z.number().int().describe(\"Total request timeout in milliseconds (5000-120000)\").optional(),\n sessionId: z.string().describe(\"Sticky session ID to reuse same IP address across multiple requests\").optional(),\n setCookies: z.string().describe(\"Cookies to include with the request (format: key1=value1; key2=value2)\").optional(),\n customHeaders: z.boolean().describe(\"Enable sending custom headers with the request\").optional(),\n}).describe(\"Request model for SCRAPE_DO_SCRAPE_URL_POST action.\");\nexport const ScrapeDoScrapeUrlPostOutput = z.object({\n content: z.string().describe(\"The scraped content from the target webpage response\").nullable(),\n headers: z.record(z.string(), z.unknown()).describe(\"Response headers including Scrape.do specific headers\"),\n status_code: z.number().int().describe(\"HTTP status code of the response\").nullable(),\n}).passthrough().describe(\"Response model for SCRAPE_DO_SCRAPE_URL_POST action.\");\n\nexport const scrapeDoScrapeUrlPost = action(\"SCRAPE_DO_SCRAPE_URL_POST\", {\n slug: \"scrape_do-scrape-url-post\",\n name: \"Scrape URL using POST method\",\n description: \"Tool to scrape web pages using POST method via scrape.do API. Use when you need to send POST requests to target websites with custom request body data. Supports all parameters from GET endpoint plus request body customization for POST/PUT/PATCH methods.\",\n input: ScrapeDoScrapeUrlPostInput,\n output: ScrapeDoScrapeUrlPostOutput,\n});\n"],"mappings":";;;AAIA,MAAa,6BAA6BA,IAAAA,EAAE,OAAO;CACjD,KAAKA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,iDAAiD;CAC1E,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kFAAkF,CAAC,CAAC,SAAS;CACvH,SAASA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,sDAAsD,CAAC,CAAC,SAAS;CAC/F,QAAQA,IAAAA,EAAE,KAAK;EAAC;EAAW;EAAU;CAAQ,CAAC,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;CAC1G,QAAQA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;CAC3F,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,wDAAwD,CAAC,CAAC,SAAS;CAChG,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,qDAAqD,CAAC,CAAC,SAAS;CACnG,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qEAAqE,CAAC,CAAC,SAAS;CAC/G,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,wEAAwE,CAAC,CAAC,SAAS;CACnH,eAAeA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,gDAAgD,CAAC,CAAC,SAAS;AACjG,CAAC,CAAC,CAAC,SAAS,qDAAqD;AACjE,MAAa,8BAA8BA,IAAAA,EAAE,OAAO;CAClD,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,sDAAsD,CAAC,CAAC,SAAS;CAC9F,SAASA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,uDAAuD;CAC3G,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kCAAkC,CAAC,CAAC,SAAS;AACtF,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,sDAAsD;AAEhF,MAAa,wBAAwBC,eAAAA,OAAO,6BAA6B;CACvE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
|
|
@@ -19,9 +19,9 @@ declare const ScrapeDoScrapeUrlPostInput: z.ZodObject<{
|
|
|
19
19
|
}, z.core.$strip>;
|
|
20
20
|
declare const ScrapeDoScrapeUrlPostOutput: z.ZodObject<{
|
|
21
21
|
content: z.ZodNullable<z.ZodString>;
|
|
22
|
-
headers: z.
|
|
22
|
+
headers: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
23
23
|
status_code: z.ZodNullable<z.ZodNumber>;
|
|
24
|
-
}, z.core.$
|
|
24
|
+
}, z.core.$loose>;
|
|
25
25
|
declare const scrapeDoScrapeUrlPost: import("@keystrokehq/action").WorkflowActionDefinition<{
|
|
26
26
|
url: string;
|
|
27
27
|
body?: string | undefined;
|
|
@@ -33,7 +33,19 @@ declare const scrapeDoScrapeUrlPost: import("@keystrokehq/action").WorkflowActio
|
|
|
33
33
|
sessionId?: string | undefined;
|
|
34
34
|
setCookies?: string | undefined;
|
|
35
35
|
customHeaders?: boolean | undefined;
|
|
36
|
-
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential
|
|
36
|
+
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential<"scrape_do", z.ZodObject<{
|
|
37
|
+
connectionId: z.ZodString;
|
|
38
|
+
entityId: z.ZodString;
|
|
39
|
+
instanceId: z.ZodString;
|
|
40
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
41
|
+
generic_token: z.ZodString;
|
|
42
|
+
}, z.core.$strip>>]>, readonly [import("@keystrokehq/shared").Credential<"scrape_do", z.ZodObject<{
|
|
43
|
+
connectionId: z.ZodString;
|
|
44
|
+
entityId: z.ZodString;
|
|
45
|
+
instanceId: z.ZodString;
|
|
46
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
47
|
+
generic_token: z.ZodString;
|
|
48
|
+
}, z.core.$strip>>]>;
|
|
37
49
|
//#endregion
|
|
38
50
|
export { scrapeDoScrapeUrlPost };
|
|
39
51
|
//# sourceMappingURL=scrape-url-post.d.cts.map
|
|
@@ -19,9 +19,9 @@ declare const ScrapeDoScrapeUrlPostInput: z.ZodObject<{
|
|
|
19
19
|
}, z.core.$strip>;
|
|
20
20
|
declare const ScrapeDoScrapeUrlPostOutput: z.ZodObject<{
|
|
21
21
|
content: z.ZodNullable<z.ZodString>;
|
|
22
|
-
headers: z.
|
|
22
|
+
headers: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
23
23
|
status_code: z.ZodNullable<z.ZodNumber>;
|
|
24
|
-
}, z.core.$
|
|
24
|
+
}, z.core.$loose>;
|
|
25
25
|
declare const scrapeDoScrapeUrlPost: import("@keystrokehq/action").WorkflowActionDefinition<{
|
|
26
26
|
url: string;
|
|
27
27
|
body?: string | undefined;
|
|
@@ -33,7 +33,19 @@ declare const scrapeDoScrapeUrlPost: import("@keystrokehq/action").WorkflowActio
|
|
|
33
33
|
sessionId?: string | undefined;
|
|
34
34
|
setCookies?: string | undefined;
|
|
35
35
|
customHeaders?: boolean | undefined;
|
|
36
|
-
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential
|
|
36
|
+
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential<"scrape_do", z.ZodObject<{
|
|
37
|
+
connectionId: z.ZodString;
|
|
38
|
+
entityId: z.ZodString;
|
|
39
|
+
instanceId: z.ZodString;
|
|
40
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
41
|
+
generic_token: z.ZodString;
|
|
42
|
+
}, z.core.$strip>>]>, readonly [import("@keystrokehq/shared").Credential<"scrape_do", z.ZodObject<{
|
|
43
|
+
connectionId: z.ZodString;
|
|
44
|
+
entityId: z.ZodString;
|
|
45
|
+
instanceId: z.ZodString;
|
|
46
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
47
|
+
generic_token: z.ZodString;
|
|
48
|
+
}, z.core.$strip>>]>;
|
|
37
49
|
//#endregion
|
|
38
50
|
export { scrapeDoScrapeUrlPost };
|
|
39
51
|
//# sourceMappingURL=scrape-url-post.d.mts.map
|
|
@@ -22,9 +22,9 @@ const scrapeDoScrapeUrlPost = action("SCRAPE_DO_SCRAPE_URL_POST", {
|
|
|
22
22
|
}).describe("Request model for SCRAPE_DO_SCRAPE_URL_POST action."),
|
|
23
23
|
output: z.object({
|
|
24
24
|
content: z.string().describe("The scraped content from the target webpage response").nullable(),
|
|
25
|
-
headers: z.
|
|
25
|
+
headers: z.record(z.string(), z.unknown()).describe("Response headers including Scrape.do specific headers"),
|
|
26
26
|
status_code: z.number().int().describe("HTTP status code of the response").nullable()
|
|
27
|
-
}).describe("Response model for SCRAPE_DO_SCRAPE_URL_POST action.")
|
|
27
|
+
}).passthrough().describe("Response model for SCRAPE_DO_SCRAPE_URL_POST action.")
|
|
28
28
|
});
|
|
29
29
|
//#endregion
|
|
30
30
|
export { scrapeDoScrapeUrlPost };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scrape-url-post.mjs","names":[],"sources":["../../src/actions/scrape-url-post.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapeDoScrapeUrlPostInput = z.object({\n url: z.string().describe(\"Target web page URL to scrape with POST request\"),\n body: z.string().describe(\"HTTP request body for POST request. Can be JSON string, form data, or plain text\").optional(),\n \"super\": z.boolean().describe(\"Enable residential/mobile proxies. Costs 10x credits\").optional(),\n device: z.enum([\"desktop\", \"mobile\", \"tablet\"]).describe(\"Device types for scraping emulation.\").optional(),\n render: z.boolean().describe(\"Enable JavaScript rendering with headless browser\").optional(),\n geoCode: z.string().describe(\"Country code for geo-targeting (e.g. 'us', 'gb', 'de')\").optional(),\n timeout: z.number().int().describe(\"Total request timeout in milliseconds (5000-120000)\").optional(),\n sessionId: z.string().describe(\"Sticky session ID to reuse same IP address across multiple requests\").optional(),\n setCookies: z.string().describe(\"Cookies to include with the request (format: key1=value1; key2=value2)\").optional(),\n customHeaders: z.boolean().describe(\"Enable sending custom headers with the request\").optional(),\n}).describe(\"Request model for SCRAPE_DO_SCRAPE_URL_POST action.\");\nexport const ScrapeDoScrapeUrlPostOutput = z.object({\n content: z.string().describe(\"The scraped content from the target webpage response\").nullable(),\n headers: z.
|
|
1
|
+
{"version":3,"file":"scrape-url-post.mjs","names":[],"sources":["../../src/actions/scrape-url-post.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapeDoScrapeUrlPostInput = z.object({\n url: z.string().describe(\"Target web page URL to scrape with POST request\"),\n body: z.string().describe(\"HTTP request body for POST request. Can be JSON string, form data, or plain text\").optional(),\n \"super\": z.boolean().describe(\"Enable residential/mobile proxies. Costs 10x credits\").optional(),\n device: z.enum([\"desktop\", \"mobile\", \"tablet\"]).describe(\"Device types for scraping emulation.\").optional(),\n render: z.boolean().describe(\"Enable JavaScript rendering with headless browser\").optional(),\n geoCode: z.string().describe(\"Country code for geo-targeting (e.g. 'us', 'gb', 'de')\").optional(),\n timeout: z.number().int().describe(\"Total request timeout in milliseconds (5000-120000)\").optional(),\n sessionId: z.string().describe(\"Sticky session ID to reuse same IP address across multiple requests\").optional(),\n setCookies: z.string().describe(\"Cookies to include with the request (format: key1=value1; key2=value2)\").optional(),\n customHeaders: z.boolean().describe(\"Enable sending custom headers with the request\").optional(),\n}).describe(\"Request model for SCRAPE_DO_SCRAPE_URL_POST action.\");\nexport const ScrapeDoScrapeUrlPostOutput = z.object({\n content: z.string().describe(\"The scraped content from the target webpage response\").nullable(),\n headers: z.record(z.string(), z.unknown()).describe(\"Response headers including Scrape.do specific headers\"),\n status_code: z.number().int().describe(\"HTTP status code of the response\").nullable(),\n}).passthrough().describe(\"Response model for SCRAPE_DO_SCRAPE_URL_POST action.\");\n\nexport const scrapeDoScrapeUrlPost = action(\"SCRAPE_DO_SCRAPE_URL_POST\", {\n slug: \"scrape_do-scrape-url-post\",\n name: \"Scrape URL using POST method\",\n description: \"Tool to scrape web pages using POST method via scrape.do API. Use when you need to send POST requests to target websites with custom request body data. Supports all parameters from GET endpoint plus request body customization for POST/PUT/PATCH methods.\",\n input: ScrapeDoScrapeUrlPostInput,\n output: ScrapeDoScrapeUrlPostOutput,\n});\n"],"mappings":";;AAsBA,MAAa,wBAAwB,OAAO,6BAA6B;CACvE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAtBwC,EAAE,OAAO;EACjD,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,iDAAiD;EAC1E,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,kFAAkF,CAAC,CAAC,SAAS;EACvH,SAAS,EAAE,QAAQ,CAAC,CAAC,SAAS,sDAAsD,CAAC,CAAC,SAAS;EAC/F,QAAQ,EAAE,KAAK;GAAC;GAAW;GAAU;EAAQ,CAAC,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;EAC1G,QAAQ,EAAE,QAAQ,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS;EAC3F,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,wDAAwD,CAAC,CAAC,SAAS;EAChG,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,qDAAqD,CAAC,CAAC,SAAS;EACnG,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,qEAAqE,CAAC,CAAC,SAAS;EAC/G,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,wEAAwE,CAAC,CAAC,SAAS;EACnH,eAAe,EAAE,QAAQ,CAAC,CAAC,SAAS,gDAAgD,CAAC,CAAC,SAAS;CACjG,CAAC,CAAC,CAAC,SAAS,qDAWH;CACP,QAXyC,EAAE,OAAO;EAClD,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,sDAAsD,CAAC,CAAC,SAAS;EAC9F,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,uDAAuD;EAC3G,aAAa,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,kCAAkC,CAAC,CAAC,SAAS;CACtF,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,sDAOhB;AACV,CAAC"}
|
|
@@ -13,12 +13,12 @@ const ScrapeDoSearchAmazonInput = zod.z.object({
|
|
|
13
13
|
const ScrapeDoSearchAmazon_ProductPriceSchema = zod.z.object({
|
|
14
14
|
amount: zod.z.number().describe("Price amount").nullable().optional(),
|
|
15
15
|
currencyCode: zod.z.string().describe("Currency code (e.g., USD, EUR)").nullable().optional()
|
|
16
|
-
}).describe("Price information for a product.");
|
|
16
|
+
}).passthrough().describe("Price information for a product.");
|
|
17
17
|
const ScrapeDoSearchAmazon_ProductRatingSchema = zod.z.object({
|
|
18
18
|
count: zod.z.number().int().describe("Number of ratings").nullable().optional(),
|
|
19
19
|
stars: zod.z.union([zod.z.string(), zod.z.number().int()]).nullable().optional(),
|
|
20
20
|
value: zod.z.number().describe("Rating value (e.g., 4.5)").nullable().optional()
|
|
21
|
-
}).describe("Rating information for a product.");
|
|
21
|
+
}).passthrough().describe("Rating information for a product.");
|
|
22
22
|
const ScrapeDoSearchAmazon_ProductSchema = zod.z.object({
|
|
23
23
|
url: zod.z.string().describe("Product detail page URL").nullable().optional(),
|
|
24
24
|
asin: zod.z.string().describe("Amazon Standard Identification Number").nullable().optional(),
|
|
@@ -31,7 +31,7 @@ const ScrapeDoSearchAmazon_ProductSchema = zod.z.object({
|
|
|
31
31
|
position: zod.z.number().int().describe("Position on the search results page").nullable().optional(),
|
|
32
32
|
isSponsored: zod.z.boolean().describe("Whether this is a sponsored product placement").nullable().optional(),
|
|
33
33
|
reviewCount: zod.z.string().describe("Number of product reviews").nullable().optional()
|
|
34
|
-
}).describe("Individual product information from search results.");
|
|
34
|
+
}).passthrough().describe("Individual product information from search results.");
|
|
35
35
|
const ScrapeDoSearchAmazonOutput = zod.z.object({
|
|
36
36
|
html: zod.z.string().describe("Full raw HTML when include_html=true").nullable().optional(),
|
|
37
37
|
page: zod.z.number().int().describe("Current page number").nullable().optional(),
|
|
@@ -40,7 +40,7 @@ const ScrapeDoSearchAmazonOutput = zod.z.object({
|
|
|
40
40
|
products: zod.z.array(ScrapeDoSearchAmazon_ProductSchema).describe("List of product results from the search").nullable().optional(),
|
|
41
41
|
errorMessage: zod.z.string().describe("Error message if request failed").nullable().optional(),
|
|
42
42
|
totalResults: zod.z.string().describe("Total results count as displayed by Amazon").nullable().optional()
|
|
43
|
-
}).describe("Response model for Amazon search results.");
|
|
43
|
+
}).passthrough().describe("Response model for Amazon search results.");
|
|
44
44
|
const scrapeDoSearchAmazon = require_action.action("SCRAPE_DO_SEARCH_AMAZON", {
|
|
45
45
|
slug: "scrape_do-search-amazon",
|
|
46
46
|
name: "Search Amazon products",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-amazon.cjs","names":["z","action"],"sources":["../../src/actions/search-amazon.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapeDoSearchAmazonInput = z.object({\n page: z.number().int().describe(\"Page number for pagination (default: 1)\").optional(),\n \"super\": z.boolean().describe(\"Enable residential/mobile proxies for higher success rates. Costs 10x credits (default: false)\").optional(),\n geocode: z.string().describe(\"Country code for Amazon marketplace (e.g., us, gb, de, jp, ca, fr, it, es, in)\"),\n keyword: z.string().describe(\"Search query term (will be URL-encoded automatically)\"),\n zipcode: z.string().describe(\"Postal/ZIP code formatted according to country requirements (e.g., 10001 for US, SW1A 1AA for UK)\"),\n language: z.string().describe(\"Language code in ISO 639-1 format (e.g., EN, DE, FR, ES)\").optional(),\n include_html: z.boolean().describe(\"When true, includes the full raw HTML alongside structured JSON (default: false)\").optional(),\n}).describe(\"Request model for searching Amazon.\");\nconst ScrapeDoSearchAmazon_ProductPriceSchema = z.object({\n amount: z.number().describe(\"Price amount\").nullable().optional(),\n currencyCode: z.string().describe(\"Currency code (e.g., USD, EUR)\").nullable().optional(),\n}).describe(\"Price information for a product.\");\nconst ScrapeDoSearchAmazon_ProductRatingSchema = z.object({\n count: z.number().int().describe(\"Number of ratings\").nullable().optional(),\n stars: z.union([z.string(), z.number().int()]).nullable().optional(),\n value: z.number().describe(\"Rating value (e.g., 4.5)\").nullable().optional(),\n}).describe(\"Rating information for a product.\");\nconst ScrapeDoSearchAmazon_ProductSchema = z.object({\n url: z.string().describe(\"Product detail page URL\").nullable().optional(),\n asin: z.string().describe(\"Amazon Standard Identification Number\").nullable().optional(),\n badge: z.string().describe(\"Special badge if present (e.g., Best Seller, Overall Pick)\").nullable().optional(),\n price: ScrapeDoSearchAmazon_ProductPriceSchema.nullable().optional(),\n title: z.string().describe(\"Product title\").nullable().optional(),\n rating: ScrapeDoSearchAmazon_ProductRatingSchema.nullable().optional(),\n isPrime: z.boolean().describe(\"Whether Amazon Prime shipping is available\").nullable().optional(),\n imageUrl: z.string().describe(\"Product thumbnail image URL\").nullable().optional(),\n position: z.number().int().describe(\"Position on the search results page\").nullable().optional(),\n isSponsored: z.boolean().describe(\"Whether this is a sponsored product placement\").nullable().optional(),\n reviewCount: z.string().describe(\"Number of product reviews\").nullable().optional(),\n}).describe(\"Individual product information from search results.\");\nexport const ScrapeDoSearchAmazonOutput = z.object({\n html: z.string().describe(\"Full raw HTML when include_html=true\").nullable().optional(),\n page: z.number().int().describe(\"Current page number\").nullable().optional(),\n status: z.string().describe(\"Request status (success or error)\").nullable().optional(),\n keyword: z.string().describe(\"The search query that was executed\").nullable().optional(),\n products: z.array(ScrapeDoSearchAmazon_ProductSchema).describe(\"List of product results from the search\").nullable().optional(),\n errorMessage: z.string().describe(\"Error message if request failed\").nullable().optional(),\n totalResults: z.string().describe(\"Total results count as displayed by Amazon\").nullable().optional(),\n}).describe(\"Response model for Amazon search results.\");\n\nexport const scrapeDoSearchAmazon = action(\"SCRAPE_DO_SEARCH_AMAZON\", {\n slug: \"scrape_do-search-amazon\",\n name: \"Search Amazon products\",\n description: \"Tool to search Amazon and scrape product listings with structured results. Performs keyword searches and returns structured product data including titles, prices, ratings, Prime status, sponsored flags, and position rankings in JSON format. Use when you need to search for products on Amazon marketplace or gather product information from search results.\",\n input: ScrapeDoSearchAmazonInput,\n output: ScrapeDoSearchAmazonOutput,\n});\n"],"mappings":";;;AAIA,MAAa,4BAA4BA,IAAAA,EAAE,OAAO;CAChD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS;CACpF,SAASA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,gGAAgG,CAAC,CAAC,SAAS;CACzI,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gFAAgF;CAC7G,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uDAAuD;CACpF,SAASA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,mGAAmG;CAChI,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0DAA0D,CAAC,CAAC,SAAS;CACnG,cAAcA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,kFAAkF,CAAC,CAAC,SAAS;AAClI,CAAC,CAAC,CAAC,SAAS,qCAAqC;AACjD,MAAM,0CAA0CA,IAAAA,EAAE,OAAO;CACvD,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,cAAc,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChE,cAAcA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gCAAgC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC1F,CAAC,CAAC,CAAC,SAAS,kCAAkC;
|
|
1
|
+
{"version":3,"file":"search-amazon.cjs","names":["z","action"],"sources":["../../src/actions/search-amazon.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapeDoSearchAmazonInput = z.object({\n page: z.number().int().describe(\"Page number for pagination (default: 1)\").optional(),\n \"super\": z.boolean().describe(\"Enable residential/mobile proxies for higher success rates. Costs 10x credits (default: false)\").optional(),\n geocode: z.string().describe(\"Country code for Amazon marketplace (e.g., us, gb, de, jp, ca, fr, it, es, in)\"),\n keyword: z.string().describe(\"Search query term (will be URL-encoded automatically)\"),\n zipcode: z.string().describe(\"Postal/ZIP code formatted according to country requirements (e.g., 10001 for US, SW1A 1AA for UK)\"),\n language: z.string().describe(\"Language code in ISO 639-1 format (e.g., EN, DE, FR, ES)\").optional(),\n include_html: z.boolean().describe(\"When true, includes the full raw HTML alongside structured JSON (default: false)\").optional(),\n}).describe(\"Request model for searching Amazon.\");\nconst ScrapeDoSearchAmazon_ProductPriceSchema = z.object({\n amount: z.number().describe(\"Price amount\").nullable().optional(),\n currencyCode: z.string().describe(\"Currency code (e.g., USD, EUR)\").nullable().optional(),\n}).passthrough().describe(\"Price information for a product.\");\nconst ScrapeDoSearchAmazon_ProductRatingSchema = z.object({\n count: z.number().int().describe(\"Number of ratings\").nullable().optional(),\n stars: z.union([z.string(), z.number().int()]).nullable().optional(),\n value: z.number().describe(\"Rating value (e.g., 4.5)\").nullable().optional(),\n}).passthrough().describe(\"Rating information for a product.\");\nconst ScrapeDoSearchAmazon_ProductSchema = z.object({\n url: z.string().describe(\"Product detail page URL\").nullable().optional(),\n asin: z.string().describe(\"Amazon Standard Identification Number\").nullable().optional(),\n badge: z.string().describe(\"Special badge if present (e.g., Best Seller, Overall Pick)\").nullable().optional(),\n price: ScrapeDoSearchAmazon_ProductPriceSchema.nullable().optional(),\n title: z.string().describe(\"Product title\").nullable().optional(),\n rating: ScrapeDoSearchAmazon_ProductRatingSchema.nullable().optional(),\n isPrime: z.boolean().describe(\"Whether Amazon Prime shipping is available\").nullable().optional(),\n imageUrl: z.string().describe(\"Product thumbnail image URL\").nullable().optional(),\n position: z.number().int().describe(\"Position on the search results page\").nullable().optional(),\n isSponsored: z.boolean().describe(\"Whether this is a sponsored product placement\").nullable().optional(),\n reviewCount: z.string().describe(\"Number of product reviews\").nullable().optional(),\n}).passthrough().describe(\"Individual product information from search results.\");\nexport const ScrapeDoSearchAmazonOutput = z.object({\n html: z.string().describe(\"Full raw HTML when include_html=true\").nullable().optional(),\n page: z.number().int().describe(\"Current page number\").nullable().optional(),\n status: z.string().describe(\"Request status (success or error)\").nullable().optional(),\n keyword: z.string().describe(\"The search query that was executed\").nullable().optional(),\n products: z.array(ScrapeDoSearchAmazon_ProductSchema).describe(\"List of product results from the search\").nullable().optional(),\n errorMessage: z.string().describe(\"Error message if request failed\").nullable().optional(),\n totalResults: z.string().describe(\"Total results count as displayed by Amazon\").nullable().optional(),\n}).passthrough().describe(\"Response model for Amazon search results.\");\n\nexport const scrapeDoSearchAmazon = action(\"SCRAPE_DO_SEARCH_AMAZON\", {\n slug: \"scrape_do-search-amazon\",\n name: \"Search Amazon products\",\n description: \"Tool to search Amazon and scrape product listings with structured results. Performs keyword searches and returns structured product data including titles, prices, ratings, Prime status, sponsored flags, and position rankings in JSON format. Use when you need to search for products on Amazon marketplace or gather product information from search results.\",\n input: ScrapeDoSearchAmazonInput,\n output: ScrapeDoSearchAmazonOutput,\n});\n"],"mappings":"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"}
|
|
@@ -22,22 +22,22 @@ declare const ScrapeDoSearchAmazonOutput: z.ZodObject<{
|
|
|
22
22
|
price: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
23
23
|
amount: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
24
24
|
currencyCode: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
25
|
-
}, z.core.$
|
|
25
|
+
}, z.core.$loose>>>;
|
|
26
26
|
title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
27
27
|
rating: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
28
28
|
count: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
29
29
|
stars: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
|
|
30
30
|
value: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
31
|
-
}, z.core.$
|
|
31
|
+
}, z.core.$loose>>>;
|
|
32
32
|
isPrime: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
33
33
|
imageUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
34
34
|
position: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
35
35
|
isSponsored: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
36
36
|
reviewCount: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
37
|
-
}, z.core.$
|
|
37
|
+
}, z.core.$loose>>>>;
|
|
38
38
|
errorMessage: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
39
39
|
totalResults: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
40
|
-
}, z.core.$
|
|
40
|
+
}, z.core.$loose>;
|
|
41
41
|
declare const scrapeDoSearchAmazon: import("@keystrokehq/action").WorkflowActionDefinition<{
|
|
42
42
|
geocode: string;
|
|
43
43
|
keyword: string;
|
|
@@ -46,7 +46,19 @@ declare const scrapeDoSearchAmazon: import("@keystrokehq/action").WorkflowAction
|
|
|
46
46
|
super?: boolean | undefined;
|
|
47
47
|
language?: string | undefined;
|
|
48
48
|
include_html?: boolean | undefined;
|
|
49
|
-
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential
|
|
49
|
+
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential<"scrape_do", z.ZodObject<{
|
|
50
|
+
connectionId: z.ZodString;
|
|
51
|
+
entityId: z.ZodString;
|
|
52
|
+
instanceId: z.ZodString;
|
|
53
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
54
|
+
generic_token: z.ZodString;
|
|
55
|
+
}, z.core.$strip>>]>, readonly [import("@keystrokehq/shared").Credential<"scrape_do", z.ZodObject<{
|
|
56
|
+
connectionId: z.ZodString;
|
|
57
|
+
entityId: z.ZodString;
|
|
58
|
+
instanceId: z.ZodString;
|
|
59
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
60
|
+
generic_token: z.ZodString;
|
|
61
|
+
}, z.core.$strip>>]>;
|
|
50
62
|
//#endregion
|
|
51
63
|
export { scrapeDoSearchAmazon };
|
|
52
64
|
//# sourceMappingURL=search-amazon.d.cts.map
|
|
@@ -22,22 +22,22 @@ declare const ScrapeDoSearchAmazonOutput: z.ZodObject<{
|
|
|
22
22
|
price: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
23
23
|
amount: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
24
24
|
currencyCode: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
25
|
-
}, z.core.$
|
|
25
|
+
}, z.core.$loose>>>;
|
|
26
26
|
title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
27
27
|
rating: z.ZodOptional<z.ZodNullable<z.ZodObject<{
|
|
28
28
|
count: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
29
29
|
stars: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>>;
|
|
30
30
|
value: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
31
|
-
}, z.core.$
|
|
31
|
+
}, z.core.$loose>>>;
|
|
32
32
|
isPrime: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
33
33
|
imageUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
34
34
|
position: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
35
35
|
isSponsored: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
|
|
36
36
|
reviewCount: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
37
|
-
}, z.core.$
|
|
37
|
+
}, z.core.$loose>>>>;
|
|
38
38
|
errorMessage: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
39
39
|
totalResults: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
40
|
-
}, z.core.$
|
|
40
|
+
}, z.core.$loose>;
|
|
41
41
|
declare const scrapeDoSearchAmazon: import("@keystrokehq/action").WorkflowActionDefinition<{
|
|
42
42
|
geocode: string;
|
|
43
43
|
keyword: string;
|
|
@@ -46,7 +46,19 @@ declare const scrapeDoSearchAmazon: import("@keystrokehq/action").WorkflowAction
|
|
|
46
46
|
super?: boolean | undefined;
|
|
47
47
|
language?: string | undefined;
|
|
48
48
|
include_html?: boolean | undefined;
|
|
49
|
-
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential
|
|
49
|
+
}, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential<"scrape_do", z.ZodObject<{
|
|
50
|
+
connectionId: z.ZodString;
|
|
51
|
+
entityId: z.ZodString;
|
|
52
|
+
instanceId: z.ZodString;
|
|
53
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
54
|
+
generic_token: z.ZodString;
|
|
55
|
+
}, z.core.$strip>>]>, readonly [import("@keystrokehq/shared").Credential<"scrape_do", z.ZodObject<{
|
|
56
|
+
connectionId: z.ZodString;
|
|
57
|
+
entityId: z.ZodString;
|
|
58
|
+
instanceId: z.ZodString;
|
|
59
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
60
|
+
generic_token: z.ZodString;
|
|
61
|
+
}, z.core.$strip>>]>;
|
|
50
62
|
//#endregion
|
|
51
63
|
export { scrapeDoSearchAmazon };
|
|
52
64
|
//# sourceMappingURL=search-amazon.d.mts.map
|
|
@@ -13,12 +13,12 @@ const ScrapeDoSearchAmazonInput = z.object({
|
|
|
13
13
|
const ScrapeDoSearchAmazon_ProductPriceSchema = z.object({
|
|
14
14
|
amount: z.number().describe("Price amount").nullable().optional(),
|
|
15
15
|
currencyCode: z.string().describe("Currency code (e.g., USD, EUR)").nullable().optional()
|
|
16
|
-
}).describe("Price information for a product.");
|
|
16
|
+
}).passthrough().describe("Price information for a product.");
|
|
17
17
|
const ScrapeDoSearchAmazon_ProductRatingSchema = z.object({
|
|
18
18
|
count: z.number().int().describe("Number of ratings").nullable().optional(),
|
|
19
19
|
stars: z.union([z.string(), z.number().int()]).nullable().optional(),
|
|
20
20
|
value: z.number().describe("Rating value (e.g., 4.5)").nullable().optional()
|
|
21
|
-
}).describe("Rating information for a product.");
|
|
21
|
+
}).passthrough().describe("Rating information for a product.");
|
|
22
22
|
const ScrapeDoSearchAmazon_ProductSchema = z.object({
|
|
23
23
|
url: z.string().describe("Product detail page URL").nullable().optional(),
|
|
24
24
|
asin: z.string().describe("Amazon Standard Identification Number").nullable().optional(),
|
|
@@ -31,7 +31,7 @@ const ScrapeDoSearchAmazon_ProductSchema = z.object({
|
|
|
31
31
|
position: z.number().int().describe("Position on the search results page").nullable().optional(),
|
|
32
32
|
isSponsored: z.boolean().describe("Whether this is a sponsored product placement").nullable().optional(),
|
|
33
33
|
reviewCount: z.string().describe("Number of product reviews").nullable().optional()
|
|
34
|
-
}).describe("Individual product information from search results.");
|
|
34
|
+
}).passthrough().describe("Individual product information from search results.");
|
|
35
35
|
const scrapeDoSearchAmazon = action("SCRAPE_DO_SEARCH_AMAZON", {
|
|
36
36
|
slug: "scrape_do-search-amazon",
|
|
37
37
|
name: "Search Amazon products",
|
|
@@ -45,7 +45,7 @@ const scrapeDoSearchAmazon = action("SCRAPE_DO_SEARCH_AMAZON", {
|
|
|
45
45
|
products: z.array(ScrapeDoSearchAmazon_ProductSchema).describe("List of product results from the search").nullable().optional(),
|
|
46
46
|
errorMessage: z.string().describe("Error message if request failed").nullable().optional(),
|
|
47
47
|
totalResults: z.string().describe("Total results count as displayed by Amazon").nullable().optional()
|
|
48
|
-
}).describe("Response model for Amazon search results.")
|
|
48
|
+
}).passthrough().describe("Response model for Amazon search results.")
|
|
49
49
|
});
|
|
50
50
|
//#endregion
|
|
51
51
|
export { scrapeDoSearchAmazon };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-amazon.mjs","names":[],"sources":["../../src/actions/search-amazon.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapeDoSearchAmazonInput = z.object({\n page: z.number().int().describe(\"Page number for pagination (default: 1)\").optional(),\n \"super\": z.boolean().describe(\"Enable residential/mobile proxies for higher success rates. Costs 10x credits (default: false)\").optional(),\n geocode: z.string().describe(\"Country code for Amazon marketplace (e.g., us, gb, de, jp, ca, fr, it, es, in)\"),\n keyword: z.string().describe(\"Search query term (will be URL-encoded automatically)\"),\n zipcode: z.string().describe(\"Postal/ZIP code formatted according to country requirements (e.g., 10001 for US, SW1A 1AA for UK)\"),\n language: z.string().describe(\"Language code in ISO 639-1 format (e.g., EN, DE, FR, ES)\").optional(),\n include_html: z.boolean().describe(\"When true, includes the full raw HTML alongside structured JSON (default: false)\").optional(),\n}).describe(\"Request model for searching Amazon.\");\nconst ScrapeDoSearchAmazon_ProductPriceSchema = z.object({\n amount: z.number().describe(\"Price amount\").nullable().optional(),\n currencyCode: z.string().describe(\"Currency code (e.g., USD, EUR)\").nullable().optional(),\n}).describe(\"Price information for a product.\");\nconst ScrapeDoSearchAmazon_ProductRatingSchema = z.object({\n count: z.number().int().describe(\"Number of ratings\").nullable().optional(),\n stars: z.union([z.string(), z.number().int()]).nullable().optional(),\n value: z.number().describe(\"Rating value (e.g., 4.5)\").nullable().optional(),\n}).describe(\"Rating information for a product.\");\nconst ScrapeDoSearchAmazon_ProductSchema = z.object({\n url: z.string().describe(\"Product detail page URL\").nullable().optional(),\n asin: z.string().describe(\"Amazon Standard Identification Number\").nullable().optional(),\n badge: z.string().describe(\"Special badge if present (e.g., Best Seller, Overall Pick)\").nullable().optional(),\n price: ScrapeDoSearchAmazon_ProductPriceSchema.nullable().optional(),\n title: z.string().describe(\"Product title\").nullable().optional(),\n rating: ScrapeDoSearchAmazon_ProductRatingSchema.nullable().optional(),\n isPrime: z.boolean().describe(\"Whether Amazon Prime shipping is available\").nullable().optional(),\n imageUrl: z.string().describe(\"Product thumbnail image URL\").nullable().optional(),\n position: z.number().int().describe(\"Position on the search results page\").nullable().optional(),\n isSponsored: z.boolean().describe(\"Whether this is a sponsored product placement\").nullable().optional(),\n reviewCount: z.string().describe(\"Number of product reviews\").nullable().optional(),\n}).describe(\"Individual product information from search results.\");\nexport const ScrapeDoSearchAmazonOutput = z.object({\n html: z.string().describe(\"Full raw HTML when include_html=true\").nullable().optional(),\n page: z.number().int().describe(\"Current page number\").nullable().optional(),\n status: z.string().describe(\"Request status (success or error)\").nullable().optional(),\n keyword: z.string().describe(\"The search query that was executed\").nullable().optional(),\n products: z.array(ScrapeDoSearchAmazon_ProductSchema).describe(\"List of product results from the search\").nullable().optional(),\n errorMessage: z.string().describe(\"Error message if request failed\").nullable().optional(),\n totalResults: z.string().describe(\"Total results count as displayed by Amazon\").nullable().optional(),\n}).describe(\"Response model for Amazon search results.\");\n\nexport const scrapeDoSearchAmazon = action(\"SCRAPE_DO_SEARCH_AMAZON\", {\n slug: \"scrape_do-search-amazon\",\n name: \"Search Amazon products\",\n description: \"Tool to search Amazon and scrape product listings with structured results. Performs keyword searches and returns structured product data including titles, prices, ratings, Prime status, sponsored flags, and position rankings in JSON format. Use when you need to search for products on Amazon marketplace or gather product information from search results.\",\n input: ScrapeDoSearchAmazonInput,\n output: ScrapeDoSearchAmazonOutput,\n});\n"],"mappings":";;;AAIA,MAAa,4BAA4B,EAAE,OAAO;CAChD,MAAM,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS;CACpF,SAAS,EAAE,QAAQ,CAAC,CAAC,SAAS,gGAAgG,CAAC,CAAC,SAAS;CACzI,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,gFAAgF;CAC7G,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,uDAAuD;CACpF,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,mGAAmG;CAChI,UAAU,EAAE,OAAO,CAAC,CAAC,SAAS,0DAA0D,CAAC,CAAC,SAAS;CACnG,cAAc,EAAE,QAAQ,CAAC,CAAC,SAAS,kFAAkF,CAAC,CAAC,SAAS;AAClI,CAAC,CAAC,CAAC,SAAS,qCAAqC;AACjD,MAAM,0CAA0C,EAAE,OAAO;CACvD,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,cAAc,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAChE,cAAc,EAAE,OAAO,CAAC,CAAC,SAAS,gCAAgC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC1F,CAAC,CAAC,CAAC,SAAS,kCAAkC;
|
|
1
|
+
{"version":3,"file":"search-amazon.mjs","names":[],"sources":["../../src/actions/search-amazon.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapeDoSearchAmazonInput = z.object({\n page: z.number().int().describe(\"Page number for pagination (default: 1)\").optional(),\n \"super\": z.boolean().describe(\"Enable residential/mobile proxies for higher success rates. Costs 10x credits (default: false)\").optional(),\n geocode: z.string().describe(\"Country code for Amazon marketplace (e.g., us, gb, de, jp, ca, fr, it, es, in)\"),\n keyword: z.string().describe(\"Search query term (will be URL-encoded automatically)\"),\n zipcode: z.string().describe(\"Postal/ZIP code formatted according to country requirements (e.g., 10001 for US, SW1A 1AA for UK)\"),\n language: z.string().describe(\"Language code in ISO 639-1 format (e.g., EN, DE, FR, ES)\").optional(),\n include_html: z.boolean().describe(\"When true, includes the full raw HTML alongside structured JSON (default: false)\").optional(),\n}).describe(\"Request model for searching Amazon.\");\nconst ScrapeDoSearchAmazon_ProductPriceSchema = z.object({\n amount: z.number().describe(\"Price amount\").nullable().optional(),\n currencyCode: z.string().describe(\"Currency code (e.g., USD, EUR)\").nullable().optional(),\n}).passthrough().describe(\"Price information for a product.\");\nconst ScrapeDoSearchAmazon_ProductRatingSchema = z.object({\n count: z.number().int().describe(\"Number of ratings\").nullable().optional(),\n stars: z.union([z.string(), z.number().int()]).nullable().optional(),\n value: z.number().describe(\"Rating value (e.g., 4.5)\").nullable().optional(),\n}).passthrough().describe(\"Rating information for a product.\");\nconst ScrapeDoSearchAmazon_ProductSchema = z.object({\n url: z.string().describe(\"Product detail page URL\").nullable().optional(),\n asin: z.string().describe(\"Amazon Standard Identification Number\").nullable().optional(),\n badge: z.string().describe(\"Special badge if present (e.g., Best Seller, Overall Pick)\").nullable().optional(),\n price: ScrapeDoSearchAmazon_ProductPriceSchema.nullable().optional(),\n title: z.string().describe(\"Product title\").nullable().optional(),\n rating: ScrapeDoSearchAmazon_ProductRatingSchema.nullable().optional(),\n isPrime: z.boolean().describe(\"Whether Amazon Prime shipping is available\").nullable().optional(),\n imageUrl: z.string().describe(\"Product thumbnail image URL\").nullable().optional(),\n position: z.number().int().describe(\"Position on the search results page\").nullable().optional(),\n isSponsored: z.boolean().describe(\"Whether this is a sponsored product placement\").nullable().optional(),\n reviewCount: z.string().describe(\"Number of product reviews\").nullable().optional(),\n}).passthrough().describe(\"Individual product information from search results.\");\nexport const ScrapeDoSearchAmazonOutput = z.object({\n html: z.string().describe(\"Full raw HTML when include_html=true\").nullable().optional(),\n page: z.number().int().describe(\"Current page number\").nullable().optional(),\n status: z.string().describe(\"Request status (success or error)\").nullable().optional(),\n keyword: z.string().describe(\"The search query that was executed\").nullable().optional(),\n products: z.array(ScrapeDoSearchAmazon_ProductSchema).describe(\"List of product results from the search\").nullable().optional(),\n errorMessage: z.string().describe(\"Error message if request failed\").nullable().optional(),\n totalResults: z.string().describe(\"Total results count as displayed by Amazon\").nullable().optional(),\n}).passthrough().describe(\"Response model for Amazon search results.\");\n\nexport const scrapeDoSearchAmazon = action(\"SCRAPE_DO_SEARCH_AMAZON\", {\n slug: \"scrape_do-search-amazon\",\n name: \"Search Amazon products\",\n description: \"Tool to search Amazon and scrape product listings with structured results. Performs keyword searches and returns structured product data including titles, prices, ratings, Prime status, sponsored flags, and position rankings in JSON format. Use when you need to search for products on Amazon marketplace or gather product information from search results.\",\n input: ScrapeDoSearchAmazonInput,\n output: ScrapeDoSearchAmazonOutput,\n});\n"],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ const ScrapeDoSetBlockUrlsInput = zod.z.object({ urls: zod.z.array(zod.z.string(
|
|
|
5
5
|
const ScrapeDoSetBlockUrlsOutput = zod.z.object({
|
|
6
6
|
message: zod.z.string().default("").describe("Success message confirming URLs have been blocked.").nullable().optional(),
|
|
7
7
|
blocked_urls: zod.z.array(zod.z.string()).default([]).describe("List of URLs that were successfully blocked.").nullable().optional()
|
|
8
|
-
}).describe("Response model for SetBlockUrls action.");
|
|
8
|
+
}).passthrough().describe("Response model for SetBlockUrls action.");
|
|
9
9
|
const scrapeDoSetBlockUrls = require_action.action("SCRAPE_DO_SET_BLOCK_URLS", {
|
|
10
10
|
slug: "scrape_do-set-block-urls",
|
|
11
11
|
name: "Block specific URLs during scraping",
|