@keystrokehq/scrapfly 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/dist/action.cjs.map +1 -1
  2. package/dist/action.mjs.map +1 -1
  3. package/dist/actions/capture-screenshot-head.cjs +2 -2
  4. package/dist/actions/capture-screenshot-head.cjs.map +1 -1
  5. package/dist/actions/capture-screenshot-head.d.cts +50 -3
  6. package/dist/actions/capture-screenshot-head.d.cts.map +1 -1
  7. package/dist/actions/capture-screenshot-head.d.mts +50 -3
  8. package/dist/actions/capture-screenshot-head.d.mts.map +1 -1
  9. package/dist/actions/capture-screenshot-head.mjs +2 -2
  10. package/dist/actions/capture-screenshot-head.mjs.map +1 -1
  11. package/dist/actions/capture-screenshot.cjs +3 -3
  12. package/dist/actions/capture-screenshot.cjs.map +1 -1
  13. package/dist/actions/capture-screenshot.d.cts +44 -3
  14. package/dist/actions/capture-screenshot.d.cts.map +1 -1
  15. package/dist/actions/capture-screenshot.d.mts +44 -3
  16. package/dist/actions/capture-screenshot.d.mts.map +1 -1
  17. package/dist/actions/capture-screenshot.mjs +3 -3
  18. package/dist/actions/capture-screenshot.mjs.map +1 -1
  19. package/dist/actions/create-crawler.cjs +1 -1
  20. package/dist/actions/create-crawler.cjs.map +1 -1
  21. package/dist/actions/create-crawler.d.cts +31 -3
  22. package/dist/actions/create-crawler.d.cts.map +1 -1
  23. package/dist/actions/create-crawler.d.mts +31 -3
  24. package/dist/actions/create-crawler.d.mts.map +1 -1
  25. package/dist/actions/create-crawler.mjs +1 -1
  26. package/dist/actions/create-crawler.mjs.map +1 -1
  27. package/dist/actions/extract-data.cjs.map +1 -1
  28. package/dist/actions/extract-data.d.cts +53 -3
  29. package/dist/actions/extract-data.d.cts.map +1 -1
  30. package/dist/actions/extract-data.d.mts +53 -3
  31. package/dist/actions/extract-data.d.mts.map +1 -1
  32. package/dist/actions/extract-data.mjs.map +1 -1
  33. package/dist/actions/get-account-info.cjs +26 -26
  34. package/dist/actions/get-account-info.cjs.map +1 -1
  35. package/dist/actions/get-account-info.d.cts +73 -3
  36. package/dist/actions/get-account-info.d.cts.map +1 -1
  37. package/dist/actions/get-account-info.d.mts +73 -3
  38. package/dist/actions/get-account-info.d.mts.map +1 -1
  39. package/dist/actions/get-account-info.mjs +26 -26
  40. package/dist/actions/get-account-info.mjs.map +1 -1
  41. package/dist/actions/get-crawler-artifact.cjs +3 -3
  42. package/dist/actions/get-crawler-artifact.cjs.map +1 -1
  43. package/dist/actions/get-crawler-artifact.d.cts +18 -3
  44. package/dist/actions/get-crawler-artifact.d.cts.map +1 -1
  45. package/dist/actions/get-crawler-artifact.d.mts +18 -3
  46. package/dist/actions/get-crawler-artifact.d.mts.map +1 -1
  47. package/dist/actions/get-crawler-artifact.mjs +3 -3
  48. package/dist/actions/get-crawler-artifact.mjs.map +1 -1
  49. package/dist/actions/get-crawler-contents.cjs.map +1 -1
  50. package/dist/actions/get-crawler-contents.d.cts +24 -3
  51. package/dist/actions/get-crawler-contents.d.cts.map +1 -1
  52. package/dist/actions/get-crawler-contents.d.mts +24 -3
  53. package/dist/actions/get-crawler-contents.d.mts.map +1 -1
  54. package/dist/actions/get-crawler-contents.mjs.map +1 -1
  55. package/dist/actions/get-crawler-status.cjs +10 -10
  56. package/dist/actions/get-crawler-status.cjs.map +1 -1
  57. package/dist/actions/get-crawler-status.d.cts +22 -3
  58. package/dist/actions/get-crawler-status.d.cts.map +1 -1
  59. package/dist/actions/get-crawler-status.d.mts +22 -3
  60. package/dist/actions/get-crawler-status.d.mts.map +1 -1
  61. package/dist/actions/get-crawler-status.mjs +10 -10
  62. package/dist/actions/get-crawler-status.mjs.map +1 -1
  63. package/dist/actions/get-crawler-urls.cjs +3 -3
  64. package/dist/actions/get-crawler-urls.cjs.map +1 -1
  65. package/dist/actions/get-crawler-urls.d.cts +18 -3
  66. package/dist/actions/get-crawler-urls.d.cts.map +1 -1
  67. package/dist/actions/get-crawler-urls.d.mts +18 -3
  68. package/dist/actions/get-crawler-urls.d.mts.map +1 -1
  69. package/dist/actions/get-crawler-urls.mjs +3 -3
  70. package/dist/actions/get-crawler-urls.mjs.map +1 -1
  71. package/dist/actions/scrape-post.cjs +3 -3
  72. package/dist/actions/scrape-post.cjs.map +1 -1
  73. package/dist/actions/scrape-post.d.cts +38 -3
  74. package/dist/actions/scrape-post.d.cts.map +1 -1
  75. package/dist/actions/scrape-post.d.mts +38 -3
  76. package/dist/actions/scrape-post.d.mts.map +1 -1
  77. package/dist/actions/scrape-post.mjs +3 -3
  78. package/dist/actions/scrape-post.mjs.map +1 -1
  79. package/dist/actions/scrape-with-put.cjs +3 -3
  80. package/dist/actions/scrape-with-put.cjs.map +1 -1
  81. package/dist/actions/scrape-with-put.d.cts +38 -3
  82. package/dist/actions/scrape-with-put.d.cts.map +1 -1
  83. package/dist/actions/scrape-with-put.d.mts +38 -3
  84. package/dist/actions/scrape-with-put.d.mts.map +1 -1
  85. package/dist/actions/scrape-with-put.mjs +3 -3
  86. package/dist/actions/scrape-with-put.mjs.map +1 -1
  87. package/dist/actions/scrape.cjs +3 -3
  88. package/dist/actions/scrape.cjs.map +1 -1
  89. package/dist/actions/scrape.d.cts +48 -3
  90. package/dist/actions/scrape.d.cts.map +1 -1
  91. package/dist/actions/scrape.d.mts +48 -3
  92. package/dist/actions/scrape.d.mts.map +1 -1
  93. package/dist/actions/scrape.mjs +3 -3
  94. package/dist/actions/scrape.mjs.map +1 -1
  95. package/dist/catalog.cjs +7 -1
  96. package/dist/catalog.cjs.map +1 -1
  97. package/dist/catalog.d.cts +8 -0
  98. package/dist/catalog.d.mts +8 -0
  99. package/dist/catalog.mjs +7 -1
  100. package/dist/catalog.mjs.map +1 -1
  101. package/package.json +2 -2
@@ -1,9 +1,54 @@
1
1
  import { z } from "zod";
2
2
 
3
3
  //#region src/actions/scrape.d.ts
4
- declare const ScrapflyScrapeInput: z.ZodTypeAny;
5
- declare const ScrapflyScrapeOutput: z.ZodTypeAny;
6
- declare const scrapflyScrape: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
4
+ declare const ScrapflyScrapeInput: z.ZodObject<{
5
+ asp: z.ZodOptional<z.ZodBoolean>;
6
+ url: z.ZodString;
7
+ body: z.ZodOptional<z.ZodString>;
8
+ tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
9
+ cache: z.ZodOptional<z.ZodBoolean>;
10
+ retry: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
11
+ method: z.ZodOptional<z.ZodEnum<{
12
+ GET: "GET";
13
+ POST: "POST";
14
+ PUT: "PUT";
15
+ PATCH: "PATCH";
16
+ DELETE: "DELETE";
17
+ HEAD: "HEAD";
18
+ OPTIONS: "OPTIONS";
19
+ }>>;
20
+ country: z.ZodOptional<z.ZodString>;
21
+ headers: z.ZodOptional<z.ZodObject<{}, z.core.$strip>>;
22
+ session: z.ZodOptional<z.ZodString>;
23
+ timeout: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
24
+ render_js: z.ZodOptional<z.ZodBoolean>;
25
+ extract_rules: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
26
+ }, z.core.$strip>;
27
+ declare const ScrapflyScrapeOutput: z.ZodObject<{
28
+ url: z.ZodNullable<z.ZodString>;
29
+ config: z.ZodRecord<z.ZodString, z.ZodUnknown>;
30
+ result: z.ZodRecord<z.ZodString, z.ZodUnknown>;
31
+ content: z.ZodNullable<z.ZodString>;
32
+ context: z.ZodRecord<z.ZodString, z.ZodUnknown>;
33
+ status_code: z.ZodNullable<z.ZodNumber>;
34
+ extracted_data: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
35
+ response_headers: z.ZodRecord<z.ZodString, z.ZodUnknown>;
36
+ }, z.core.$strip>;
37
+ declare const scrapflyScrape: import("@keystrokehq/action").WorkflowActionDefinition<{
38
+ url: string;
39
+ asp?: boolean | undefined;
40
+ body?: string | undefined;
41
+ tags?: string[] | undefined;
42
+ cache?: boolean | undefined;
43
+ retry?: number | undefined;
44
+ method?: "GET" | "POST" | "PUT" | "PATCH" | "DELETE" | "HEAD" | "OPTIONS" | undefined;
45
+ country?: string | undefined;
46
+ headers?: Record<string, never> | undefined;
47
+ session?: string | undefined;
48
+ timeout?: number | undefined;
49
+ render_js?: boolean | undefined;
50
+ extract_rules?: Record<string, unknown> | undefined;
51
+ }, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
52
  //#endregion
8
53
  export { scrapflyScrape };
9
54
  //# sourceMappingURL=scrape.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scrape.d.mts","names":[],"sources":["../../src/actions/scrape.ts"],"mappings":";;;cAIa,mBAAA,EAAqB,CAAA,CAAE,UAc0B;AAAA,cACjD,oBAAA,EAAsB,CAAA,CAAE,UASqB;AAAA,cAE7C,cAAA,gCAAc,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
1
+ {"version":3,"file":"scrape.d.mts","names":[],"sources":["../../src/actions/scrape.ts"],"mappings":";;;cAIa,mBAAA,EAAmB,CAAA,CAAA,SAAA;;;;;;;;;;;;;;;;;;;;;;;cAenB,oBAAA,EAAoB,CAAA,CAAA,SAAA;;;;;;;;;;cAWpB,cAAA,gCAAc,wBAAA;;;;;;;;;YAMzB,MAAA;;;;kBAAA,MAAA;AAAA"}
@@ -28,12 +28,12 @@ const scrapflyScrape = action("SCRAPFLY_SCRAPE", {
28
28
  extract_rules: z.record(z.string(), z.unknown()).describe("Extraction rules (JMESPath, CSS selector, or JSONPath).").optional()
29
29
  }).describe("Request model for initiating a web scrape task."),
30
30
  output: z.object({
31
- url: z.string().describe("Final URL after redirects."),
31
+ url: z.string().describe("Final URL after redirects.").nullable(),
32
32
  config: z.record(z.string(), z.unknown()).describe("Configuration used for the scrape request."),
33
33
  result: z.record(z.string(), z.unknown()).describe("Container for metadata and extraction results."),
34
- content: z.string().describe("Raw response body (HTML, JSON, etc.)."),
34
+ content: z.string().describe("Raw response body (HTML, JSON, etc.).").nullable(),
35
35
  context: z.record(z.string(), z.unknown()).describe("Context information including proxy, cost, etc."),
36
- status_code: z.number().int().describe("HTTP status code returned by the target URL."),
36
+ status_code: z.number().int().describe("HTTP status code returned by the target URL.").nullable(),
37
37
  extracted_data: z.record(z.string(), z.unknown()).describe("User-specified extraction results (if extract_rules were provided).").nullable().optional(),
38
38
  response_headers: z.record(z.string(), z.unknown()).describe("HTTP response headers from the target.")
39
39
  }).describe("Response model for the Scrapfly scrape API.")
@@ -1 +1 @@
1
- {"version":3,"file":"scrape.mjs","names":[],"sources":["../../src/actions/scrape.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapflyScrapeInput: z.ZodTypeAny = z.object({\n asp: z.boolean().describe(\"Enable anti-scraping protection bypass.\").optional(),\n url: z.string().describe(\"The URL to scrape.\"),\n body: z.string().describe(\"Request body payload for POST/PUT requests.\").optional(),\n tags: z.array(z.string()).describe(\"Custom labels for analytics.\").optional(),\n cache: z.boolean().describe(\"Enable result caching.\").optional(),\n retry: z.number().int().default(2).describe(\"Number of retries on failure (default is 2).\").optional(),\n method: z.enum([\"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", \"HEAD\", \"OPTIONS\"]).describe(\"HTTP method to use for request, default is GET.\").optional(),\n country: z.string().describe(\"Target country for the proxy (e.g., 'US', 'FR', 'DE'). Matching the target site's region can improve success rates against geo-restricted or anti-bot measures.\").optional(),\n headers: z.object({}).describe(\"Custom HTTP request headers to send.\").optional(),\n session: z.string().describe(\"Proxy session ID for sticky sessions.\").optional(),\n timeout: z.number().int().default(60).describe(\"Timeout for the scrape request in seconds (default is 60).\").optional(),\n render_js: z.boolean().describe(\"Enable JavaScript rendering for sites requiring it. Default returns static HTML only; dynamic/SPA content requires this set to true.\").optional(),\n extract_rules: z.record(z.string(), z.unknown()).describe(\"Extraction rules (JMESPath, CSS selector, or JSONPath).\").optional(),\n}).describe(\"Request model for initiating a web scrape task.\");\nexport const ScrapflyScrapeOutput: z.ZodTypeAny = z.object({\n url: z.string().describe(\"Final URL after redirects.\"),\n config: z.record(z.string(), z.unknown()).describe(\"Configuration used for the scrape request.\"),\n result: z.record(z.string(), z.unknown()).describe(\"Container for metadata and extraction results.\"),\n content: z.string().describe(\"Raw response body (HTML, JSON, etc.).\"),\n context: z.record(z.string(), z.unknown()).describe(\"Context information including proxy, cost, etc.\"),\n status_code: z.number().int().describe(\"HTTP status code returned by the target URL.\"),\n extracted_data: z.record(z.string(), z.unknown()).describe(\"User-specified extraction results (if extract_rules were provided).\").nullable().optional(),\n response_headers: z.record(z.string(), z.unknown()).describe(\"HTTP response headers from the target.\"),\n}).describe(\"Response model for the Scrapfly scrape API.\");\n\nexport const scrapflyScrape = action(\"SCRAPFLY_SCRAPE\", {\n slug: \"scrapfly-scrape\",\n name: \"Scrapfly Scrape\",\n description: \"Tool to perform a web scraping request. Use when you need to fetch a page with custom configuration like JS rendering, proxies, and extraction.\",\n input: ScrapflyScrapeInput,\n output: ScrapflyScrapeOutput,\n});\n"],"mappings":";;AA8BA,MAAa,iBAAiB,OAAO,mBAAmB;CACtD,MAAM;CACN,MAAM;CACN,aAAa;CACb,OA9B+C,EAAE,OAAO;EACxD,KAAK,EAAE,QAAQ,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS;EAC9E,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,oBAAoB;EAC7C,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,6CAA6C,CAAC,CAAC,SAAS;EAClF,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,8BAA8B,CAAC,CAAC,SAAS;EAC5E,OAAO,EAAE,QAAQ,CAAC,CAAC,SAAS,wBAAwB,CAAC,CAAC,SAAS;EAC/D,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,8CAA8C,CAAC,CAAC,SAAS;EACrG,QAAQ,EAAE,KAAK;GAAC;GAAO;GAAQ;GAAO;GAAS;GAAU;GAAQ;EAAS,CAAC,CAAC,CAAC,SAAS,iDAAiD,CAAC,CAAC,SAAS;EAClJ,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,iKAAiK,CAAC,CAAC,SAAS;EACzM,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;EAChF,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS;EAC/E,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,4DAA4D,CAAC,CAAC,SAAS;EACtH,WAAW,EAAE,QAAQ,CAAC,CAAC,SAAS,sIAAsI,CAAC,CAAC,SAAS;EACjL,eAAe,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,yDAAyD,CAAC,CAAC,SAAS;CAChI,CAAC,CAAC,CAAC,SAAS,iDAgBH;CACP,QAhBgD,EAAE,OAAO;EACzD,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,4BAA4B;EACrD,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,4CAA4C;EAC/F,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,gDAAgD;EACnG,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,uCAAuC;EACpE,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,iDAAiD;EACrG,aAAa,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,8CAA8C;EACrF,gBAAgB,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,qEAAqE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACtJ,kBAAkB,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,wCAAwC;CACvG,CAAC,CAAC,CAAC,SAAS,6CAOF;AACV,CAAC"}
1
+ {"version":3,"file":"scrape.mjs","names":[],"sources":["../../src/actions/scrape.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const ScrapflyScrapeInput = z.object({\n asp: z.boolean().describe(\"Enable anti-scraping protection bypass.\").optional(),\n url: z.string().describe(\"The URL to scrape.\"),\n body: z.string().describe(\"Request body payload for POST/PUT requests.\").optional(),\n tags: z.array(z.string()).describe(\"Custom labels for analytics.\").optional(),\n cache: z.boolean().describe(\"Enable result caching.\").optional(),\n retry: z.number().int().default(2).describe(\"Number of retries on failure (default is 2).\").optional(),\n method: z.enum([\"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\", \"HEAD\", \"OPTIONS\"]).describe(\"HTTP method to use for request, default is GET.\").optional(),\n country: z.string().describe(\"Target country for the proxy (e.g., 'US', 'FR', 'DE'). Matching the target site's region can improve success rates against geo-restricted or anti-bot measures.\").optional(),\n headers: z.object({}).describe(\"Custom HTTP request headers to send.\").optional(),\n session: z.string().describe(\"Proxy session ID for sticky sessions.\").optional(),\n timeout: z.number().int().default(60).describe(\"Timeout for the scrape request in seconds (default is 60).\").optional(),\n render_js: z.boolean().describe(\"Enable JavaScript rendering for sites requiring it. Default returns static HTML only; dynamic/SPA content requires this set to true.\").optional(),\n extract_rules: z.record(z.string(), z.unknown()).describe(\"Extraction rules (JMESPath, CSS selector, or JSONPath).\").optional(),\n}).describe(\"Request model for initiating a web scrape task.\");\nexport const ScrapflyScrapeOutput = z.object({\n url: z.string().describe(\"Final URL after redirects.\").nullable(),\n config: z.record(z.string(), z.unknown()).describe(\"Configuration used for the scrape request.\"),\n result: z.record(z.string(), z.unknown()).describe(\"Container for metadata and extraction results.\"),\n content: z.string().describe(\"Raw response body (HTML, JSON, etc.).\").nullable(),\n context: z.record(z.string(), z.unknown()).describe(\"Context information including proxy, cost, etc.\"),\n status_code: z.number().int().describe(\"HTTP status code returned by the target URL.\").nullable(),\n extracted_data: z.record(z.string(), z.unknown()).describe(\"User-specified extraction results (if extract_rules were provided).\").nullable().optional(),\n response_headers: z.record(z.string(), z.unknown()).describe(\"HTTP response headers from the target.\"),\n}).describe(\"Response model for the Scrapfly scrape API.\");\n\nexport const scrapflyScrape = action(\"SCRAPFLY_SCRAPE\", {\n slug: \"scrapfly-scrape\",\n name: \"Scrapfly Scrape\",\n description: \"Tool to perform a web scraping request. Use when you need to fetch a page with custom configuration like JS rendering, proxies, and extraction.\",\n input: ScrapflyScrapeInput,\n output: ScrapflyScrapeOutput,\n});\n"],"mappings":";;AA8BA,MAAa,iBAAiB,OAAO,mBAAmB;CACtD,MAAM;CACN,MAAM;CACN,aAAa;CACb,OA9BiC,EAAE,OAAO;EAC1C,KAAK,EAAE,QAAQ,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS;EAC9E,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,oBAAoB;EAC7C,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,6CAA6C,CAAC,CAAC,SAAS;EAClF,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,8BAA8B,CAAC,CAAC,SAAS;EAC5E,OAAO,EAAE,QAAQ,CAAC,CAAC,SAAS,wBAAwB,CAAC,CAAC,SAAS;EAC/D,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,8CAA8C,CAAC,CAAC,SAAS;EACrG,QAAQ,EAAE,KAAK;GAAC;GAAO;GAAQ;GAAO;GAAS;GAAU;GAAQ;EAAS,CAAC,CAAC,CAAC,SAAS,iDAAiD,CAAC,CAAC,SAAS;EAClJ,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,iKAAiK,CAAC,CAAC,SAAS;EACzM,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,sCAAsC,CAAC,CAAC,SAAS;EAChF,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS;EAC/E,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,4DAA4D,CAAC,CAAC,SAAS;EACtH,WAAW,EAAE,QAAQ,CAAC,CAAC,SAAS,sIAAsI,CAAC,CAAC,SAAS;EACjL,eAAe,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,yDAAyD,CAAC,CAAC,SAAS;CAChI,CAAC,CAAC,CAAC,SAAS,iDAgBH;CACP,QAhBkC,EAAE,OAAO;EAC3C,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,4BAA4B,CAAC,CAAC,SAAS;EAChE,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,4CAA4C;EAC/F,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,gDAAgD;EACnG,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,uCAAuC,CAAC,CAAC,SAAS;EAC/E,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,iDAAiD;EACrG,aAAa,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,8CAA8C,CAAC,CAAC,SAAS;EAChG,gBAAgB,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,qEAAqE,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACtJ,kBAAkB,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,wCAAwC;CACvG,CAAC,CAAC,CAAC,SAAS,6CAOF;AACV,CAAC"}
package/dist/catalog.cjs CHANGED
@@ -7,7 +7,13 @@ const scrapflyCatalog = {
7
7
  "category": "AI Web Scraping",
8
8
  "logo": "https://logos.composio.dev/api/scrapfly",
9
9
  "authKind": "keystroke",
10
- "oauthScopes": []
10
+ "oauthScopes": [],
11
+ "credentialFields": { "api_key": {
12
+ "label": "Scrapfly API Key",
13
+ "secret": true,
14
+ "description": "Your Scrapfly API key for authentication. Find your key on the Scrapfly dashboard."
15
+ } },
16
+ "credentialScheme": "API_KEY"
11
17
  };
12
18
  //#endregion
13
19
  exports.scrapflyCatalog = scrapflyCatalog;
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.cjs","names":[],"sources":["../src/catalog.ts"],"sourcesContent":["/** Generated — kept in sync with src/app.ts. */\nexport const scrapflyCatalog = {\n \"slug\": \"scrapfly\",\n \"name\": \"Scrapfly\",\n \"description\": \"Scrapfly is a web scraping API that enables developers to extract data from websites efficiently, offering features like JavaScript rendering, anti-bot protection bypass, and proxy rotation.\",\n \"category\": \"AI Web Scraping\",\n \"logo\": \"https://logos.composio.dev/api/scrapfly\",\n \"authKind\": \"keystroke\",\n \"oauthScopes\": []\n} as const;\n"],"mappings":";;AACA,MAAa,kBAAkB;CAC7B,QAAQ;CACR,QAAQ;CACR,eAAe;CACf,YAAY;CACZ,QAAQ;CACR,YAAY;CACZ,eAAe,CAAC;AAClB"}
1
+ {"version":3,"file":"catalog.cjs","names":[],"sources":["../src/catalog.ts"],"sourcesContent":["/** Generated — kept in sync with src/app.ts. */\nexport const scrapflyCatalog = {\n \"slug\": \"scrapfly\",\n \"name\": \"Scrapfly\",\n \"description\": \"Scrapfly is a web scraping API that enables developers to extract data from websites efficiently, offering features like JavaScript rendering, anti-bot protection bypass, and proxy rotation.\",\n \"category\": \"AI Web Scraping\",\n \"logo\": \"https://logos.composio.dev/api/scrapfly\",\n \"authKind\": \"keystroke\",\n \"oauthScopes\": [],\n \"credentialFields\": {\n \"api_key\": {\n \"label\": \"Scrapfly API Key\",\n \"secret\": true,\n \"description\": \"Your Scrapfly API key for authentication. Find your key on the Scrapfly dashboard.\"\n }\n },\n \"credentialScheme\": \"API_KEY\"\n} as const;\n"],"mappings":";;AACA,MAAa,kBAAkB;CAC7B,QAAQ;CACR,QAAQ;CACR,eAAe;CACf,YAAY;CACZ,QAAQ;CACR,YAAY;CACZ,eAAe,CAAC;CAChB,oBAAoB,EAClB,WAAW;EACT,SAAS;EACT,UAAU;EACV,eAAe;CACjB,EACF;CACA,oBAAoB;AACtB"}
@@ -8,6 +8,14 @@ declare const scrapflyCatalog: {
8
8
  readonly logo: "https://logos.composio.dev/api/scrapfly";
9
9
  readonly authKind: "keystroke";
10
10
  readonly oauthScopes: readonly [];
11
+ readonly credentialFields: {
12
+ readonly api_key: {
13
+ readonly label: "Scrapfly API Key";
14
+ readonly secret: true;
15
+ readonly description: "Your Scrapfly API key for authentication. Find your key on the Scrapfly dashboard.";
16
+ };
17
+ };
18
+ readonly credentialScheme: "API_KEY";
11
19
  };
12
20
  //#endregion
13
21
  export { scrapflyCatalog };
@@ -8,6 +8,14 @@ declare const scrapflyCatalog: {
8
8
  readonly logo: "https://logos.composio.dev/api/scrapfly";
9
9
  readonly authKind: "keystroke";
10
10
  readonly oauthScopes: readonly [];
11
+ readonly credentialFields: {
12
+ readonly api_key: {
13
+ readonly label: "Scrapfly API Key";
14
+ readonly secret: true;
15
+ readonly description: "Your Scrapfly API key for authentication. Find your key on the Scrapfly dashboard.";
16
+ };
17
+ };
18
+ readonly credentialScheme: "API_KEY";
11
19
  };
12
20
  //#endregion
13
21
  export { scrapflyCatalog };
package/dist/catalog.mjs CHANGED
@@ -7,7 +7,13 @@ const scrapflyCatalog = {
7
7
  "category": "AI Web Scraping",
8
8
  "logo": "https://logos.composio.dev/api/scrapfly",
9
9
  "authKind": "keystroke",
10
- "oauthScopes": []
10
+ "oauthScopes": [],
11
+ "credentialFields": { "api_key": {
12
+ "label": "Scrapfly API Key",
13
+ "secret": true,
14
+ "description": "Your Scrapfly API key for authentication. Find your key on the Scrapfly dashboard."
15
+ } },
16
+ "credentialScheme": "API_KEY"
11
17
  };
12
18
  //#endregion
13
19
  export { scrapflyCatalog };
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.mjs","names":[],"sources":["../src/catalog.ts"],"sourcesContent":["/** Generated — kept in sync with src/app.ts. */\nexport const scrapflyCatalog = {\n \"slug\": \"scrapfly\",\n \"name\": \"Scrapfly\",\n \"description\": \"Scrapfly is a web scraping API that enables developers to extract data from websites efficiently, offering features like JavaScript rendering, anti-bot protection bypass, and proxy rotation.\",\n \"category\": \"AI Web Scraping\",\n \"logo\": \"https://logos.composio.dev/api/scrapfly\",\n \"authKind\": \"keystroke\",\n \"oauthScopes\": []\n} as const;\n"],"mappings":";;AACA,MAAa,kBAAkB;CAC7B,QAAQ;CACR,QAAQ;CACR,eAAe;CACf,YAAY;CACZ,QAAQ;CACR,YAAY;CACZ,eAAe,CAAC;AAClB"}
1
+ {"version":3,"file":"catalog.mjs","names":[],"sources":["../src/catalog.ts"],"sourcesContent":["/** Generated — kept in sync with src/app.ts. */\nexport const scrapflyCatalog = {\n \"slug\": \"scrapfly\",\n \"name\": \"Scrapfly\",\n \"description\": \"Scrapfly is a web scraping API that enables developers to extract data from websites efficiently, offering features like JavaScript rendering, anti-bot protection bypass, and proxy rotation.\",\n \"category\": \"AI Web Scraping\",\n \"logo\": \"https://logos.composio.dev/api/scrapfly\",\n \"authKind\": \"keystroke\",\n \"oauthScopes\": [],\n \"credentialFields\": {\n \"api_key\": {\n \"label\": \"Scrapfly API Key\",\n \"secret\": true,\n \"description\": \"Your Scrapfly API key for authentication. Find your key on the Scrapfly dashboard.\"\n }\n },\n \"credentialScheme\": \"API_KEY\"\n} as const;\n"],"mappings":";;AACA,MAAa,kBAAkB;CAC7B,QAAQ;CACR,QAAQ;CACR,eAAe;CACf,YAAY;CACZ,QAAQ;CACR,YAAY;CACZ,eAAe,CAAC;CAChB,oBAAoB,EAClB,WAAW;EACT,SAAS;EACT,UAAU;EACV,eAAe;CACjB,EACF;CACA,oBAAoB;AACtB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keystrokehq/scrapfly",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org"
@@ -31,7 +31,7 @@
31
31
  }
32
32
  },
33
33
  "peerDependencies": {
34
- "@keystrokehq/keystroke": "^0.1.4",
34
+ "@keystrokehq/keystroke": ">=0.1.4",
35
35
  "zod": "^4.4.3"
36
36
  },
37
37
  "devDependencies": {