@keystrokehq/supadata 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -0
- package/dist/action.cjs +21 -0
- package/dist/action.cjs.map +1 -0
- package/dist/action.mjs +21 -0
- package/dist/action.mjs.map +1 -0
- package/dist/actions/get-me.cjs +21 -0
- package/dist/actions/get-me.cjs.map +1 -0
- package/dist/actions/get-me.d.cts +9 -0
- package/dist/actions/get-me.d.cts.map +1 -0
- package/dist/actions/get-me.d.mts +9 -0
- package/dist/actions/get-me.d.mts.map +1 -0
- package/dist/actions/get-me.mjs +18 -0
- package/dist/actions/get-me.mjs.map +1 -0
- package/dist/actions/get-transcript-by-job-id.cjs +39 -0
- package/dist/actions/get-transcript-by-job-id.cjs.map +1 -0
- package/dist/actions/get-transcript-by-job-id.d.cts +9 -0
- package/dist/actions/get-transcript-by-job-id.d.cts.map +1 -0
- package/dist/actions/get-transcript-by-job-id.d.mts +9 -0
- package/dist/actions/get-transcript-by-job-id.d.mts.map +1 -0
- package/dist/actions/get-transcript-by-job-id.mjs +38 -0
- package/dist/actions/get-transcript-by-job-id.mjs.map +1 -0
- package/dist/actions/get-transcript.cjs +36 -0
- package/dist/actions/get-transcript.cjs.map +1 -0
- package/dist/actions/get-transcript.d.cts +9 -0
- package/dist/actions/get-transcript.d.cts.map +1 -0
- package/dist/actions/get-transcript.d.mts +9 -0
- package/dist/actions/get-transcript.d.mts.map +1 -0
- package/dist/actions/get-transcript.mjs +35 -0
- package/dist/actions/get-transcript.mjs.map +1 -0
- package/dist/actions/get-web-map.cjs +19 -0
- package/dist/actions/get-web-map.cjs.map +1 -0
- package/dist/actions/get-web-map.d.cts +9 -0
- package/dist/actions/get-web-map.d.cts.map +1 -0
- package/dist/actions/get-web-map.d.mts +9 -0
- package/dist/actions/get-web-map.d.mts.map +1 -0
- package/dist/actions/get-web-map.mjs +16 -0
- package/dist/actions/get-web-map.mjs.map +1 -0
- package/dist/actions/get-web-scrape.cjs +28 -0
- package/dist/actions/get-web-scrape.cjs.map +1 -0
- package/dist/actions/get-web-scrape.d.cts +9 -0
- package/dist/actions/get-web-scrape.d.cts.map +1 -0
- package/dist/actions/get-web-scrape.d.mts +9 -0
- package/dist/actions/get-web-scrape.d.mts.map +1 -0
- package/dist/actions/get-web-scrape.mjs +25 -0
- package/dist/actions/get-web-scrape.mjs.map +1 -0
- package/dist/actions/get-youtube-channel-videos.cjs +29 -0
- package/dist/actions/get-youtube-channel-videos.cjs.map +1 -0
- package/dist/actions/get-youtube-channel-videos.d.cts +9 -0
- package/dist/actions/get-youtube-channel-videos.d.cts.map +1 -0
- package/dist/actions/get-youtube-channel-videos.d.mts +9 -0
- package/dist/actions/get-youtube-channel-videos.d.mts.map +1 -0
- package/dist/actions/get-youtube-channel-videos.mjs +26 -0
- package/dist/actions/get-youtube-channel-videos.mjs.map +1 -0
- package/dist/actions/get-youtube-channel.cjs +26 -0
- package/dist/actions/get-youtube-channel.cjs.map +1 -0
- package/dist/actions/get-youtube-channel.d.cts +9 -0
- package/dist/actions/get-youtube-channel.d.cts.map +1 -0
- package/dist/actions/get-youtube-channel.d.mts +9 -0
- package/dist/actions/get-youtube-channel.d.mts.map +1 -0
- package/dist/actions/get-youtube-channel.mjs +23 -0
- package/dist/actions/get-youtube-channel.mjs.map +1 -0
- package/dist/actions/get-youtube-playlist-videos.cjs +23 -0
- package/dist/actions/get-youtube-playlist-videos.cjs.map +1 -0
- package/dist/actions/get-youtube-playlist-videos.d.cts +9 -0
- package/dist/actions/get-youtube-playlist-videos.d.cts.map +1 -0
- package/dist/actions/get-youtube-playlist-videos.d.mts +9 -0
- package/dist/actions/get-youtube-playlist-videos.d.mts.map +1 -0
- package/dist/actions/get-youtube-playlist-videos.mjs +20 -0
- package/dist/actions/get-youtube-playlist-videos.mjs.map +1 -0
- package/dist/actions/get-youtube-playlist.cjs +28 -0
- package/dist/actions/get-youtube-playlist.cjs.map +1 -0
- package/dist/actions/get-youtube-playlist.d.cts +9 -0
- package/dist/actions/get-youtube-playlist.d.cts.map +1 -0
- package/dist/actions/get-youtube-playlist.d.mts +9 -0
- package/dist/actions/get-youtube-playlist.d.mts.map +1 -0
- package/dist/actions/get-youtube-playlist.mjs +27 -0
- package/dist/actions/get-youtube-playlist.mjs.map +1 -0
- package/dist/actions/get-youtube-video.cjs +33 -0
- package/dist/actions/get-youtube-video.cjs.map +1 -0
- package/dist/actions/get-youtube-video.d.cts +9 -0
- package/dist/actions/get-youtube-video.d.cts.map +1 -0
- package/dist/actions/get-youtube-video.d.mts +9 -0
- package/dist/actions/get-youtube-video.d.mts.map +1 -0
- package/dist/actions/get-youtube-video.mjs +32 -0
- package/dist/actions/get-youtube-video.mjs.map +1 -0
- package/dist/actions/index.cjs +23 -0
- package/dist/actions/index.d.cts +12 -0
- package/dist/actions/index.d.mts +12 -0
- package/dist/actions/index.mjs +12 -0
- package/dist/actions/search-youtube.cjs +29 -0
- package/dist/actions/search-youtube.cjs.map +1 -0
- package/dist/actions/search-youtube.d.cts +9 -0
- package/dist/actions/search-youtube.d.cts.map +1 -0
- package/dist/actions/search-youtube.d.mts +9 -0
- package/dist/actions/search-youtube.d.mts.map +1 -0
- package/dist/actions/search-youtube.mjs +26 -0
- package/dist/actions/search-youtube.mjs.map +1 -0
- package/dist/app.cjs +9 -0
- package/dist/app.cjs.map +1 -0
- package/dist/app.d.cts +5 -0
- package/dist/app.d.cts.map +1 -0
- package/dist/app.d.mts +5 -0
- package/dist/app.d.mts.map +1 -0
- package/dist/app.mjs +10 -0
- package/dist/app.mjs.map +1 -0
- package/dist/catalog.cjs +15 -0
- package/dist/catalog.cjs.map +1 -0
- package/dist/catalog.d.cts +14 -0
- package/dist/catalog.d.cts.map +1 -0
- package/dist/catalog.d.mts +14 -0
- package/dist/catalog.d.mts.map +1 -0
- package/dist/catalog.mjs +15 -0
- package/dist/catalog.mjs.map +1 -0
- package/dist/execute.cjs +18 -0
- package/dist/execute.cjs.map +1 -0
- package/dist/execute.mjs +18 -0
- package/dist/execute.mjs.map +1 -0
- package/dist/index.cjs +28 -0
- package/dist/index.d.cts +14 -0
- package/dist/index.d.mts +14 -0
- package/dist/index.mjs +15 -0
- package/package.json +49 -0
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { action } from "../action.mjs";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
const supadataGetWebScrape = action("SUPADATA_GET_WEB_SCRAPE", {
|
|
4
|
+
slug: "supadata-get-web-scrape",
|
|
5
|
+
name: "Scrape Web Page",
|
|
6
|
+
description: "Extract content from any webpage and convert it to Markdown format. Use this tool when you need to: - Read and extract text content from a web page - Get metadata (title, description) from a webpage - Discover links on a webpage - Get character counts of page content The tool returns the page content in Markdown format, making it easy to process and understand. One API credit is consumed per scrape request.",
|
|
7
|
+
input: z.object({
|
|
8
|
+
url: z.string().describe("The URL of the webpage to scrape. Must be a valid HTTP/HTTPS URL."),
|
|
9
|
+
lang: z.string().describe("ISO 639-1 language code to request content in (e.g., 'en', 'es', 'fr'). Defaults to 'en'.").optional(),
|
|
10
|
+
no_links: z.boolean().describe("If true, exclude Markdown links from the extracted content. Useful for cleaner text output.").optional()
|
|
11
|
+
}).describe("Request parameters for the web scrape endpoint."),
|
|
12
|
+
output: z.object({
|
|
13
|
+
url: z.string().describe("The URL of the webpage that was scraped"),
|
|
14
|
+
name: z.string().describe("The name/title of the webpage"),
|
|
15
|
+
urls: z.array(z.string()).describe("List of URLs/links found on the webpage"),
|
|
16
|
+
og_url: z.string().describe("Open Graph URL for the webpage if available").nullable().optional(),
|
|
17
|
+
content: z.string().describe("The extracted content from the webpage in Markdown format"),
|
|
18
|
+
description: z.string().describe("A description of the webpage (from meta tags)"),
|
|
19
|
+
count_characters: z.number().int().describe("The total number of characters in the extracted content")
|
|
20
|
+
}).describe("Response schema for the web scrape endpoint.")
|
|
21
|
+
});
|
|
22
|
+
//#endregion
|
|
23
|
+
export { supadataGetWebScrape };
|
|
24
|
+
|
|
25
|
+
//# sourceMappingURL=get-web-scrape.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-web-scrape.mjs","names":[],"sources":["../../src/actions/get-web-scrape.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SupadataGetWebScrapeInput: z.ZodTypeAny = z.object({\n url: z.string().describe(\"The URL of the webpage to scrape. Must be a valid HTTP/HTTPS URL.\"),\n lang: z.string().describe(\"ISO 639-1 language code to request content in (e.g., 'en', 'es', 'fr'). Defaults to 'en'.\").optional(),\n no_links: z.boolean().describe(\"If true, exclude Markdown links from the extracted content. Useful for cleaner text output.\").optional(),\n}).describe(\"Request parameters for the web scrape endpoint.\");\nexport const SupadataGetWebScrapeOutput: z.ZodTypeAny = z.object({\n url: z.string().describe(\"The URL of the webpage that was scraped\"),\n name: z.string().describe(\"The name/title of the webpage\"),\n urls: z.array(z.string()).describe(\"List of URLs/links found on the webpage\"),\n og_url: z.string().describe(\"Open Graph URL for the webpage if available\").nullable().optional(),\n content: z.string().describe(\"The extracted content from the webpage in Markdown format\"),\n description: z.string().describe(\"A description of the webpage (from meta tags)\"),\n count_characters: z.number().int().describe(\"The total number of characters in the extracted content\"),\n}).describe(\"Response schema for the web scrape endpoint.\");\n\nexport const supadataGetWebScrape = action(\"SUPADATA_GET_WEB_SCRAPE\", {\n slug: \"supadata-get-web-scrape\",\n name: \"Scrape Web Page\",\n description: \"Extract content from any webpage and convert it to Markdown format. Use this tool when you need to: - Read and extract text content from a web page - Get metadata (title, description) from a webpage - Discover links on a webpage - Get character counts of page content The tool returns the page content in Markdown format, making it easy to process and understand. One API credit is consumed per scrape request.\",\n input: SupadataGetWebScrapeInput,\n output: SupadataGetWebScrapeOutput,\n});\n"],"mappings":";;AAmBA,MAAa,uBAAuB,OAAO,2BAA2B;CACpE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAnBqD,EAAE,OAAO;EAC9D,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,mEAAmE;EAC5F,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,2FAA2F,CAAC,CAAC,SAAS;EAChI,UAAU,EAAE,QAAQ,CAAC,CAAC,SAAS,6FAA6F,CAAC,CAAC,SAAS;CACzI,CAAC,CAAC,CAAC,SAAS,iDAeH;CACP,QAfsD,EAAE,OAAO;EAC/D,KAAK,EAAE,OAAO,CAAC,CAAC,SAAS,yCAAyC;EAClE,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,+BAA+B;EACzD,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,yCAAyC;EAC5E,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,6CAA6C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EAC/F,SAAS,EAAE,OAAO,CAAC,CAAC,SAAS,2DAA2D;EACxF,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,+CAA+C;EAChF,kBAAkB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yDAAyD;CACvG,CAAC,CAAC,CAAC,SAAS,8CAOF;AACV,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
const require_action = require("../action.cjs");
|
|
2
|
+
let zod = require("zod");
|
|
3
|
+
//#region src/actions/get-youtube-channel-videos.ts
|
|
4
|
+
const SupadataGetYoutubeChannelVideosInput = zod.z.object({
|
|
5
|
+
type: zod.z.enum([
|
|
6
|
+
"all",
|
|
7
|
+
"video",
|
|
8
|
+
"short",
|
|
9
|
+
"live"
|
|
10
|
+
]).default("all").describe("Type of videos to retrieve: 'all' (default) returns all types, 'video' for regular videos only, 'short' for YouTube Shorts only, 'live' for live streams only").optional(),
|
|
11
|
+
limit: zod.z.number().int().default(30).describe("Maximum number of videos to return. Default is 30, maximum is 5000. When type is 'all', limit applies to regular videos first, then shorts and live videos").optional(),
|
|
12
|
+
channel_id: zod.z.string().describe("YouTube channel URL, handle (e.g., '@RickAstleyVEVO'), or channel ID (e.g., 'UC_x5XG1OV2P6uZZ5FSM9Ttw')")
|
|
13
|
+
});
|
|
14
|
+
const SupadataGetYoutubeChannelVideosOutput = zod.z.object({
|
|
15
|
+
live_ids: zod.z.array(zod.z.string()).describe("List of live stream video IDs from the channel"),
|
|
16
|
+
short_ids: zod.z.array(zod.z.string()).describe("List of YouTube Shorts video IDs from the channel"),
|
|
17
|
+
video_ids: zod.z.array(zod.z.string()).describe("List of regular vertical video IDs from the channel, ordered latest first")
|
|
18
|
+
});
|
|
19
|
+
const supadataGetYoutubeChannelVideos = require_action.action("SUPADATA_GET_YOUTUBE_CHANNEL_VIDEOS", {
|
|
20
|
+
slug: "supadata-get-youtube-channel-videos",
|
|
21
|
+
name: "Get YouTube Channel Videos",
|
|
22
|
+
description: "Tool to retrieve video IDs from a YouTube channel. Returns lists of regular video IDs, YouTube Shorts IDs, and live stream IDs. Videos are ordered latest first. Use this to get video IDs that can be passed to the Get YouTube Video endpoint for full metadata.",
|
|
23
|
+
input: SupadataGetYoutubeChannelVideosInput,
|
|
24
|
+
output: SupadataGetYoutubeChannelVideosOutput
|
|
25
|
+
});
|
|
26
|
+
//#endregion
|
|
27
|
+
exports.supadataGetYoutubeChannelVideos = supadataGetYoutubeChannelVideos;
|
|
28
|
+
|
|
29
|
+
//# sourceMappingURL=get-youtube-channel-videos.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-channel-videos.cjs","names":["z","action"],"sources":["../../src/actions/get-youtube-channel-videos.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SupadataGetYoutubeChannelVideosInput: z.ZodTypeAny = z.object({\n type: z.enum([\"all\", \"video\", \"short\", \"live\"]).default(\"all\").describe(\"Type of videos to retrieve: 'all' (default) returns all types, 'video' for regular videos only, 'short' for YouTube Shorts only, 'live' for live streams only\").optional(),\n limit: z.number().int().default(30).describe(\"Maximum number of videos to return. Default is 30, maximum is 5000. When type is 'all', limit applies to regular videos first, then shorts and live videos\").optional(),\n channel_id: z.string().describe(\"YouTube channel URL, handle (e.g., '@RickAstleyVEVO'), or channel ID (e.g., 'UC_x5XG1OV2P6uZZ5FSM9Ttw')\"),\n});\nexport const SupadataGetYoutubeChannelVideosOutput: z.ZodTypeAny = z.object({\n live_ids: z.array(z.string()).describe(\"List of live stream video IDs from the channel\"),\n short_ids: z.array(z.string()).describe(\"List of YouTube Shorts video IDs from the channel\"),\n video_ids: z.array(z.string()).describe(\"List of regular vertical video IDs from the channel, ordered latest first\"),\n});\n\nexport const supadataGetYoutubeChannelVideos = action(\"SUPADATA_GET_YOUTUBE_CHANNEL_VIDEOS\", {\n slug: \"supadata-get-youtube-channel-videos\",\n name: \"Get YouTube Channel Videos\",\n description: \"Tool to retrieve video IDs from a YouTube channel. Returns lists of regular video IDs, YouTube Shorts IDs, and live stream IDs. Videos are ordered latest first. Use this to get video IDs that can be passed to the Get YouTube Video endpoint for full metadata.\",\n input: SupadataGetYoutubeChannelVideosInput,\n output: SupadataGetYoutubeChannelVideosOutput,\n});\n"],"mappings":";;;AAIA,MAAa,uCAAqDA,IAAAA,EAAE,OAAO;CACzE,MAAMA,IAAAA,EAAE,KAAK;EAAC;EAAO;EAAS;EAAS;CAAM,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,+JAA+J,CAAC,CAAC,SAAS;CAClP,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,4JAA4J,CAAC,CAAC,SAAS;CACpN,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,yGAAyG;AAC3I,CAAC;AACD,MAAa,wCAAsDA,IAAAA,EAAE,OAAO;CAC1E,UAAUA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,gDAAgD;CACvF,WAAWA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,mDAAmD;CAC3F,WAAWA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,2EAA2E;AACrH,CAAC;AAED,MAAa,kCAAkCC,eAAAA,OAAO,uCAAuC;CAC3F,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
//#region src/actions/get-youtube-channel-videos.d.ts
|
|
4
|
+
declare const SupadataGetYoutubeChannelVideosInput: z.ZodTypeAny;
|
|
5
|
+
declare const SupadataGetYoutubeChannelVideosOutput: z.ZodTypeAny;
|
|
6
|
+
declare const supadataGetYoutubeChannelVideos: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { supadataGetYoutubeChannelVideos };
|
|
9
|
+
//# sourceMappingURL=get-youtube-channel-videos.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-channel-videos.d.cts","names":[],"sources":["../../src/actions/get-youtube-channel-videos.ts"],"mappings":";;;cAIa,oCAAA,EAAsC,CAAA,CAAE,UAInD;AAAA,cACW,qCAAA,EAAuC,CAAA,CAAE,UAIpD;AAAA,cAEW,+BAAA,gCAA+B,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
//#region src/actions/get-youtube-channel-videos.d.ts
|
|
4
|
+
declare const SupadataGetYoutubeChannelVideosInput: z.ZodTypeAny;
|
|
5
|
+
declare const SupadataGetYoutubeChannelVideosOutput: z.ZodTypeAny;
|
|
6
|
+
declare const supadataGetYoutubeChannelVideos: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { supadataGetYoutubeChannelVideos };
|
|
9
|
+
//# sourceMappingURL=get-youtube-channel-videos.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-channel-videos.d.mts","names":[],"sources":["../../src/actions/get-youtube-channel-videos.ts"],"mappings":";;;cAIa,oCAAA,EAAsC,CAAA,CAAE,UAInD;AAAA,cACW,qCAAA,EAAuC,CAAA,CAAE,UAIpD;AAAA,cAEW,+BAAA,gCAA+B,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { action } from "../action.mjs";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
const supadataGetYoutubeChannelVideos = action("SUPADATA_GET_YOUTUBE_CHANNEL_VIDEOS", {
|
|
4
|
+
slug: "supadata-get-youtube-channel-videos",
|
|
5
|
+
name: "Get YouTube Channel Videos",
|
|
6
|
+
description: "Tool to retrieve video IDs from a YouTube channel. Returns lists of regular video IDs, YouTube Shorts IDs, and live stream IDs. Videos are ordered latest first. Use this to get video IDs that can be passed to the Get YouTube Video endpoint for full metadata.",
|
|
7
|
+
input: z.object({
|
|
8
|
+
type: z.enum([
|
|
9
|
+
"all",
|
|
10
|
+
"video",
|
|
11
|
+
"short",
|
|
12
|
+
"live"
|
|
13
|
+
]).default("all").describe("Type of videos to retrieve: 'all' (default) returns all types, 'video' for regular videos only, 'short' for YouTube Shorts only, 'live' for live streams only").optional(),
|
|
14
|
+
limit: z.number().int().default(30).describe("Maximum number of videos to return. Default is 30, maximum is 5000. When type is 'all', limit applies to regular videos first, then shorts and live videos").optional(),
|
|
15
|
+
channel_id: z.string().describe("YouTube channel URL, handle (e.g., '@RickAstleyVEVO'), or channel ID (e.g., 'UC_x5XG1OV2P6uZZ5FSM9Ttw')")
|
|
16
|
+
}),
|
|
17
|
+
output: z.object({
|
|
18
|
+
live_ids: z.array(z.string()).describe("List of live stream video IDs from the channel"),
|
|
19
|
+
short_ids: z.array(z.string()).describe("List of YouTube Shorts video IDs from the channel"),
|
|
20
|
+
video_ids: z.array(z.string()).describe("List of regular vertical video IDs from the channel, ordered latest first")
|
|
21
|
+
})
|
|
22
|
+
});
|
|
23
|
+
//#endregion
|
|
24
|
+
export { supadataGetYoutubeChannelVideos };
|
|
25
|
+
|
|
26
|
+
//# sourceMappingURL=get-youtube-channel-videos.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-channel-videos.mjs","names":[],"sources":["../../src/actions/get-youtube-channel-videos.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SupadataGetYoutubeChannelVideosInput: z.ZodTypeAny = z.object({\n type: z.enum([\"all\", \"video\", \"short\", \"live\"]).default(\"all\").describe(\"Type of videos to retrieve: 'all' (default) returns all types, 'video' for regular videos only, 'short' for YouTube Shorts only, 'live' for live streams only\").optional(),\n limit: z.number().int().default(30).describe(\"Maximum number of videos to return. Default is 30, maximum is 5000. When type is 'all', limit applies to regular videos first, then shorts and live videos\").optional(),\n channel_id: z.string().describe(\"YouTube channel URL, handle (e.g., '@RickAstleyVEVO'), or channel ID (e.g., 'UC_x5XG1OV2P6uZZ5FSM9Ttw')\"),\n});\nexport const SupadataGetYoutubeChannelVideosOutput: z.ZodTypeAny = z.object({\n live_ids: z.array(z.string()).describe(\"List of live stream video IDs from the channel\"),\n short_ids: z.array(z.string()).describe(\"List of YouTube Shorts video IDs from the channel\"),\n video_ids: z.array(z.string()).describe(\"List of regular vertical video IDs from the channel, ordered latest first\"),\n});\n\nexport const supadataGetYoutubeChannelVideos = action(\"SUPADATA_GET_YOUTUBE_CHANNEL_VIDEOS\", {\n slug: \"supadata-get-youtube-channel-videos\",\n name: \"Get YouTube Channel Videos\",\n description: \"Tool to retrieve video IDs from a YouTube channel. Returns lists of regular video IDs, YouTube Shorts IDs, and live stream IDs. Videos are ordered latest first. Use this to get video IDs that can be passed to the Get YouTube Video endpoint for full metadata.\",\n input: SupadataGetYoutubeChannelVideosInput,\n output: SupadataGetYoutubeChannelVideosOutput,\n});\n"],"mappings":";;AAeA,MAAa,kCAAkC,OAAO,uCAAuC;CAC3F,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAfgE,EAAE,OAAO;EACzE,MAAM,EAAE,KAAK;GAAC;GAAO;GAAS;GAAS;EAAM,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,SAAS,+JAA+J,CAAC,CAAC,SAAS;EAClP,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,4JAA4J,CAAC,CAAC,SAAS;EACpN,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,yGAAyG;CAC3I,CAWS;CACP,QAXiE,EAAE,OAAO;EAC1E,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,gDAAgD;EACvF,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,mDAAmD;EAC3F,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,2EAA2E;CACrH,CAOU;AACV,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
const require_action = require("../action.cjs");
|
|
2
|
+
let zod = require("zod");
|
|
3
|
+
//#region src/actions/get-youtube-channel.ts
|
|
4
|
+
const SupadataGetYoutubeChannelInput = zod.z.object({ id: zod.z.string().describe("The YouTube channel identifier. Accepts multiple formats: channel ID (e.g., 'UC_x5XG1OV2P6uZZ5FSM9Ttw'), handle (e.g., '@GoogleDevelopers'), or full URL (e.g., 'https://youtube.com/@GoogleDevelopers').") }).describe("Request parameters for GET_YOUTUBE_CHANNEL.");
|
|
5
|
+
const SupadataGetYoutubeChannelOutput = zod.z.object({
|
|
6
|
+
id: zod.z.string().describe("The unique YouTube channel ID."),
|
|
7
|
+
name: zod.z.string().describe("The display name of the YouTube channel."),
|
|
8
|
+
banner: zod.z.string().describe("URL of the channel's banner image.").nullable().optional(),
|
|
9
|
+
handle: zod.z.string().describe("The channel's handle (e.g., '@GoogleDevelopers').").nullable().optional(),
|
|
10
|
+
thumbnail: zod.z.string().describe("URL of the channel's profile picture/thumbnail.").nullable().optional(),
|
|
11
|
+
viewCount: zod.z.number().int().describe("The total number of views across all videos on the channel.").nullable().optional(),
|
|
12
|
+
videoCount: zod.z.number().int().describe("The total number of videos on the channel.").nullable().optional(),
|
|
13
|
+
description: zod.z.string().describe("The channel's description text.").nullable().optional(),
|
|
14
|
+
subscriberCount: zod.z.number().int().describe("The number of subscribers to the channel.").nullable().optional()
|
|
15
|
+
}).describe("Response schema for GET_YOUTUBE_CHANNEL.\nContains channel metadata from the Supadata API.");
|
|
16
|
+
const supadataGetYoutubeChannel = require_action.action("SUPADATA_GET_YOUTUBE_CHANNEL", {
|
|
17
|
+
slug: "supadata-get-youtube-channel",
|
|
18
|
+
name: "Get YouTube Channel Metadata",
|
|
19
|
+
description: "Fetches metadata for a YouTube channel including name, description, subscriber count, video count, view count, and channel images. Accepts channel IDs, handles, or full YouTube URLs.",
|
|
20
|
+
input: SupadataGetYoutubeChannelInput,
|
|
21
|
+
output: SupadataGetYoutubeChannelOutput
|
|
22
|
+
});
|
|
23
|
+
//#endregion
|
|
24
|
+
exports.supadataGetYoutubeChannel = supadataGetYoutubeChannel;
|
|
25
|
+
|
|
26
|
+
//# sourceMappingURL=get-youtube-channel.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-channel.cjs","names":["z","action"],"sources":["../../src/actions/get-youtube-channel.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SupadataGetYoutubeChannelInput: z.ZodTypeAny = z.object({\n id: z.string().describe(\"The YouTube channel identifier. Accepts multiple formats: channel ID (e.g., 'UC_x5XG1OV2P6uZZ5FSM9Ttw'), handle (e.g., '@GoogleDevelopers'), or full URL (e.g., 'https://youtube.com/@GoogleDevelopers').\"),\n}).describe(\"Request parameters for GET_YOUTUBE_CHANNEL.\");\nexport const SupadataGetYoutubeChannelOutput: z.ZodTypeAny = z.object({\n id: z.string().describe(\"The unique YouTube channel ID.\"),\n name: z.string().describe(\"The display name of the YouTube channel.\"),\n banner: z.string().describe(\"URL of the channel's banner image.\").nullable().optional(),\n handle: z.string().describe(\"The channel's handle (e.g., '@GoogleDevelopers').\").nullable().optional(),\n thumbnail: z.string().describe(\"URL of the channel's profile picture/thumbnail.\").nullable().optional(),\n viewCount: z.number().int().describe(\"The total number of views across all videos on the channel.\").nullable().optional(),\n videoCount: z.number().int().describe(\"The total number of videos on the channel.\").nullable().optional(),\n description: z.string().describe(\"The channel's description text.\").nullable().optional(),\n subscriberCount: z.number().int().describe(\"The number of subscribers to the channel.\").nullable().optional(),\n}).describe(\"Response schema for GET_YOUTUBE_CHANNEL.\\nContains channel metadata from the Supadata API.\");\n\nexport const supadataGetYoutubeChannel = action(\"SUPADATA_GET_YOUTUBE_CHANNEL\", {\n slug: \"supadata-get-youtube-channel\",\n name: \"Get YouTube Channel Metadata\",\n description: \"Fetches metadata for a YouTube channel including name, description, subscriber count, video count, view count, and channel images. Accepts channel IDs, handles, or full YouTube URLs.\",\n input: SupadataGetYoutubeChannelInput,\n output: SupadataGetYoutubeChannelOutput,\n});\n"],"mappings":";;;AAIA,MAAa,iCAA+CA,IAAAA,EAAE,OAAO,EACnE,IAAIA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2MAA2M,EACrO,CAAC,CAAC,CAAC,SAAS,6CAA6C;AACzD,MAAa,kCAAgDA,IAAAA,EAAE,OAAO;CACpE,IAAIA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gCAAgC;CACxD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,0CAA0C;CACpE,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACtF,QAAQA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACrG,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,iDAAiD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACtG,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,6DAA6D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxH,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,4CAA4C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxG,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,iCAAiC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACxF,iBAAiBA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAC9G,CAAC,CAAC,CAAC,SAAS,4FAA4F;AAExG,MAAa,4BAA4BC,eAAAA,OAAO,gCAAgC;CAC9E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
//#region src/actions/get-youtube-channel.d.ts
|
|
4
|
+
declare const SupadataGetYoutubeChannelInput: z.ZodTypeAny;
|
|
5
|
+
declare const SupadataGetYoutubeChannelOutput: z.ZodTypeAny;
|
|
6
|
+
declare const supadataGetYoutubeChannel: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { supadataGetYoutubeChannel };
|
|
9
|
+
//# sourceMappingURL=get-youtube-channel.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-channel.d.cts","names":[],"sources":["../../src/actions/get-youtube-channel.ts"],"mappings":";;;cAIa,8BAAA,EAAgC,CAAA,CAAE,UAEW;AAAA,cAC7C,+BAAA,EAAiC,CAAA,CAAE,UAUyD;AAAA,cAE5F,yBAAA,gCAAyB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
//#region src/actions/get-youtube-channel.d.ts
|
|
4
|
+
declare const SupadataGetYoutubeChannelInput: z.ZodTypeAny;
|
|
5
|
+
declare const SupadataGetYoutubeChannelOutput: z.ZodTypeAny;
|
|
6
|
+
declare const supadataGetYoutubeChannel: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { supadataGetYoutubeChannel };
|
|
9
|
+
//# sourceMappingURL=get-youtube-channel.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-channel.d.mts","names":[],"sources":["../../src/actions/get-youtube-channel.ts"],"mappings":";;;cAIa,8BAAA,EAAgC,CAAA,CAAE,UAEW;AAAA,cAC7C,+BAAA,EAAiC,CAAA,CAAE,UAUyD;AAAA,cAE5F,yBAAA,gCAAyB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { action } from "../action.mjs";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
const supadataGetYoutubeChannel = action("SUPADATA_GET_YOUTUBE_CHANNEL", {
|
|
4
|
+
slug: "supadata-get-youtube-channel",
|
|
5
|
+
name: "Get YouTube Channel Metadata",
|
|
6
|
+
description: "Fetches metadata for a YouTube channel including name, description, subscriber count, video count, view count, and channel images. Accepts channel IDs, handles, or full YouTube URLs.",
|
|
7
|
+
input: z.object({ id: z.string().describe("The YouTube channel identifier. Accepts multiple formats: channel ID (e.g., 'UC_x5XG1OV2P6uZZ5FSM9Ttw'), handle (e.g., '@GoogleDevelopers'), or full URL (e.g., 'https://youtube.com/@GoogleDevelopers').") }).describe("Request parameters for GET_YOUTUBE_CHANNEL."),
|
|
8
|
+
output: z.object({
|
|
9
|
+
id: z.string().describe("The unique YouTube channel ID."),
|
|
10
|
+
name: z.string().describe("The display name of the YouTube channel."),
|
|
11
|
+
banner: z.string().describe("URL of the channel's banner image.").nullable().optional(),
|
|
12
|
+
handle: z.string().describe("The channel's handle (e.g., '@GoogleDevelopers').").nullable().optional(),
|
|
13
|
+
thumbnail: z.string().describe("URL of the channel's profile picture/thumbnail.").nullable().optional(),
|
|
14
|
+
viewCount: z.number().int().describe("The total number of views across all videos on the channel.").nullable().optional(),
|
|
15
|
+
videoCount: z.number().int().describe("The total number of videos on the channel.").nullable().optional(),
|
|
16
|
+
description: z.string().describe("The channel's description text.").nullable().optional(),
|
|
17
|
+
subscriberCount: z.number().int().describe("The number of subscribers to the channel.").nullable().optional()
|
|
18
|
+
}).describe("Response schema for GET_YOUTUBE_CHANNEL.\nContains channel metadata from the Supadata API.")
|
|
19
|
+
});
|
|
20
|
+
//#endregion
|
|
21
|
+
export { supadataGetYoutubeChannel };
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=get-youtube-channel.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-channel.mjs","names":[],"sources":["../../src/actions/get-youtube-channel.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SupadataGetYoutubeChannelInput: z.ZodTypeAny = z.object({\n id: z.string().describe(\"The YouTube channel identifier. Accepts multiple formats: channel ID (e.g., 'UC_x5XG1OV2P6uZZ5FSM9Ttw'), handle (e.g., '@GoogleDevelopers'), or full URL (e.g., 'https://youtube.com/@GoogleDevelopers').\"),\n}).describe(\"Request parameters for GET_YOUTUBE_CHANNEL.\");\nexport const SupadataGetYoutubeChannelOutput: z.ZodTypeAny = z.object({\n id: z.string().describe(\"The unique YouTube channel ID.\"),\n name: z.string().describe(\"The display name of the YouTube channel.\"),\n banner: z.string().describe(\"URL of the channel's banner image.\").nullable().optional(),\n handle: z.string().describe(\"The channel's handle (e.g., '@GoogleDevelopers').\").nullable().optional(),\n thumbnail: z.string().describe(\"URL of the channel's profile picture/thumbnail.\").nullable().optional(),\n viewCount: z.number().int().describe(\"The total number of views across all videos on the channel.\").nullable().optional(),\n videoCount: z.number().int().describe(\"The total number of videos on the channel.\").nullable().optional(),\n description: z.string().describe(\"The channel's description text.\").nullable().optional(),\n subscriberCount: z.number().int().describe(\"The number of subscribers to the channel.\").nullable().optional(),\n}).describe(\"Response schema for GET_YOUTUBE_CHANNEL.\\nContains channel metadata from the Supadata API.\");\n\nexport const supadataGetYoutubeChannel = action(\"SUPADATA_GET_YOUTUBE_CHANNEL\", {\n slug: \"supadata-get-youtube-channel\",\n name: \"Get YouTube Channel Metadata\",\n description: \"Fetches metadata for a YouTube channel including name, description, subscriber count, video count, view count, and channel images. Accepts channel IDs, handles, or full YouTube URLs.\",\n input: SupadataGetYoutubeChannelInput,\n output: SupadataGetYoutubeChannelOutput,\n});\n"],"mappings":";;AAmBA,MAAa,4BAA4B,OAAO,gCAAgC;CAC9E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAnB0D,EAAE,OAAO,EACnE,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,2MAA2M,EACrO,CAAC,CAAC,CAAC,SAAS,6CAiBH;CACP,QAjB2D,EAAE,OAAO;EACpE,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,gCAAgC;EACxD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,0CAA0C;EACpE,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,oCAAoC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACtF,QAAQ,EAAE,OAAO,CAAC,CAAC,SAAS,mDAAmD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACrG,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,iDAAiD,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACtG,WAAW,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,6DAA6D,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACxH,YAAY,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,4CAA4C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACxG,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,iCAAiC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACxF,iBAAiB,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC9G,CAAC,CAAC,CAAC,SAAS,4FAOF;AACV,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
const require_action = require("../action.cjs");
|
|
2
|
+
let zod = require("zod");
|
|
3
|
+
//#region src/actions/get-youtube-playlist-videos.ts
|
|
4
|
+
const SupadataGetYoutubePlaylistVideosInput = zod.z.object({
|
|
5
|
+
limit: zod.z.number().int().describe("Maximum number of video IDs to return. Default is 100, maximum is 5000.").optional(),
|
|
6
|
+
playlistId: zod.z.string().describe("YouTube playlist URL or ID to fetch video IDs from. Can be a full playlist URL like 'https://www.youtube.com/playlist?list=PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf' or just the playlist ID like 'PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf'.")
|
|
7
|
+
});
|
|
8
|
+
const SupadataGetYoutubePlaylistVideosOutput = zod.z.object({
|
|
9
|
+
liveIds: zod.z.array(zod.z.string()).describe("List of live stream video IDs in the playlist."),
|
|
10
|
+
shortIds: zod.z.array(zod.z.string()).describe("List of YouTube Shorts video IDs in the playlist."),
|
|
11
|
+
videoIds: zod.z.array(zod.z.string()).describe("List of standard vertical YouTube video IDs in the playlist.")
|
|
12
|
+
});
|
|
13
|
+
const supadataGetYoutubePlaylistVideos = require_action.action("SUPADATA_GET_YOUTUBE_PLAYLIST_VIDEOS", {
|
|
14
|
+
slug: "supadata-get-youtube-playlist-videos",
|
|
15
|
+
name: "Get YouTube Playlist Videos",
|
|
16
|
+
description: "Tool to retrieve video IDs from a YouTube playlist. Returns lists of standard video IDs, YouTube Shorts IDs, and live stream IDs contained in the playlist.",
|
|
17
|
+
input: SupadataGetYoutubePlaylistVideosInput,
|
|
18
|
+
output: SupadataGetYoutubePlaylistVideosOutput
|
|
19
|
+
});
|
|
20
|
+
//#endregion
|
|
21
|
+
exports.supadataGetYoutubePlaylistVideos = supadataGetYoutubePlaylistVideos;
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=get-youtube-playlist-videos.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-playlist-videos.cjs","names":["z","action"],"sources":["../../src/actions/get-youtube-playlist-videos.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SupadataGetYoutubePlaylistVideosInput: z.ZodTypeAny = z.object({\n limit: z.number().int().describe(\"Maximum number of video IDs to return. Default is 100, maximum is 5000.\").optional(),\n playlistId: z.string().describe(\"YouTube playlist URL or ID to fetch video IDs from. Can be a full playlist URL like 'https://www.youtube.com/playlist?list=PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf' or just the playlist ID like 'PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf'.\"),\n});\nexport const SupadataGetYoutubePlaylistVideosOutput: z.ZodTypeAny = z.object({\n liveIds: z.array(z.string()).describe(\"List of live stream video IDs in the playlist.\"),\n shortIds: z.array(z.string()).describe(\"List of YouTube Shorts video IDs in the playlist.\"),\n videoIds: z.array(z.string()).describe(\"List of standard vertical YouTube video IDs in the playlist.\"),\n});\n\nexport const supadataGetYoutubePlaylistVideos = action(\"SUPADATA_GET_YOUTUBE_PLAYLIST_VIDEOS\", {\n slug: \"supadata-get-youtube-playlist-videos\",\n name: \"Get YouTube Playlist Videos\",\n description: \"Tool to retrieve video IDs from a YouTube playlist. Returns lists of standard video IDs, YouTube Shorts IDs, and live stream IDs contained in the playlist.\",\n input: SupadataGetYoutubePlaylistVideosInput,\n output: SupadataGetYoutubePlaylistVideosOutput,\n});\n"],"mappings":";;;AAIA,MAAa,wCAAsDA,IAAAA,EAAE,OAAO;CAC1E,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS;CACrH,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,mOAAmO;AACrQ,CAAC;AACD,MAAa,yCAAuDA,IAAAA,EAAE,OAAO;CAC3E,SAASA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,gDAAgD;CACtF,UAAUA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,mDAAmD;CAC1F,UAAUA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,8DAA8D;AACvG,CAAC;AAED,MAAa,mCAAmCC,eAAAA,OAAO,wCAAwC;CAC7F,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
//#region src/actions/get-youtube-playlist-videos.d.ts
|
|
4
|
+
declare const SupadataGetYoutubePlaylistVideosInput: z.ZodTypeAny;
|
|
5
|
+
declare const SupadataGetYoutubePlaylistVideosOutput: z.ZodTypeAny;
|
|
6
|
+
declare const supadataGetYoutubePlaylistVideos: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { supadataGetYoutubePlaylistVideos };
|
|
9
|
+
//# sourceMappingURL=get-youtube-playlist-videos.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-playlist-videos.d.cts","names":[],"sources":["../../src/actions/get-youtube-playlist-videos.ts"],"mappings":";;;cAIa,qCAAA,EAAuC,CAAA,CAAE,UAGpD;AAAA,cACW,sCAAA,EAAwC,CAAA,CAAE,UAIrD;AAAA,cAEW,gCAAA,gCAAgC,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
//#region src/actions/get-youtube-playlist-videos.d.ts
|
|
4
|
+
declare const SupadataGetYoutubePlaylistVideosInput: z.ZodTypeAny;
|
|
5
|
+
declare const SupadataGetYoutubePlaylistVideosOutput: z.ZodTypeAny;
|
|
6
|
+
declare const supadataGetYoutubePlaylistVideos: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { supadataGetYoutubePlaylistVideos };
|
|
9
|
+
//# sourceMappingURL=get-youtube-playlist-videos.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-playlist-videos.d.mts","names":[],"sources":["../../src/actions/get-youtube-playlist-videos.ts"],"mappings":";;;cAIa,qCAAA,EAAuC,CAAA,CAAE,UAGpD;AAAA,cACW,sCAAA,EAAwC,CAAA,CAAE,UAIrD;AAAA,cAEW,gCAAA,gCAAgC,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { action } from "../action.mjs";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
const supadataGetYoutubePlaylistVideos = action("SUPADATA_GET_YOUTUBE_PLAYLIST_VIDEOS", {
|
|
4
|
+
slug: "supadata-get-youtube-playlist-videos",
|
|
5
|
+
name: "Get YouTube Playlist Videos",
|
|
6
|
+
description: "Tool to retrieve video IDs from a YouTube playlist. Returns lists of standard video IDs, YouTube Shorts IDs, and live stream IDs contained in the playlist.",
|
|
7
|
+
input: z.object({
|
|
8
|
+
limit: z.number().int().describe("Maximum number of video IDs to return. Default is 100, maximum is 5000.").optional(),
|
|
9
|
+
playlistId: z.string().describe("YouTube playlist URL or ID to fetch video IDs from. Can be a full playlist URL like 'https://www.youtube.com/playlist?list=PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf' or just the playlist ID like 'PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf'.")
|
|
10
|
+
}),
|
|
11
|
+
output: z.object({
|
|
12
|
+
liveIds: z.array(z.string()).describe("List of live stream video IDs in the playlist."),
|
|
13
|
+
shortIds: z.array(z.string()).describe("List of YouTube Shorts video IDs in the playlist."),
|
|
14
|
+
videoIds: z.array(z.string()).describe("List of standard vertical YouTube video IDs in the playlist.")
|
|
15
|
+
})
|
|
16
|
+
});
|
|
17
|
+
//#endregion
|
|
18
|
+
export { supadataGetYoutubePlaylistVideos };
|
|
19
|
+
|
|
20
|
+
//# sourceMappingURL=get-youtube-playlist-videos.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-playlist-videos.mjs","names":[],"sources":["../../src/actions/get-youtube-playlist-videos.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SupadataGetYoutubePlaylistVideosInput: z.ZodTypeAny = z.object({\n limit: z.number().int().describe(\"Maximum number of video IDs to return. Default is 100, maximum is 5000.\").optional(),\n playlistId: z.string().describe(\"YouTube playlist URL or ID to fetch video IDs from. Can be a full playlist URL like 'https://www.youtube.com/playlist?list=PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf' or just the playlist ID like 'PLrAXtmErZgOeiKm4sgNOknGvNjby9efdf'.\"),\n});\nexport const SupadataGetYoutubePlaylistVideosOutput: z.ZodTypeAny = z.object({\n liveIds: z.array(z.string()).describe(\"List of live stream video IDs in the playlist.\"),\n shortIds: z.array(z.string()).describe(\"List of YouTube Shorts video IDs in the playlist.\"),\n videoIds: z.array(z.string()).describe(\"List of standard vertical YouTube video IDs in the playlist.\"),\n});\n\nexport const supadataGetYoutubePlaylistVideos = action(\"SUPADATA_GET_YOUTUBE_PLAYLIST_VIDEOS\", {\n slug: \"supadata-get-youtube-playlist-videos\",\n name: \"Get YouTube Playlist Videos\",\n description: \"Tool to retrieve video IDs from a YouTube playlist. Returns lists of standard video IDs, YouTube Shorts IDs, and live stream IDs contained in the playlist.\",\n input: SupadataGetYoutubePlaylistVideosInput,\n output: SupadataGetYoutubePlaylistVideosOutput,\n});\n"],"mappings":";;AAcA,MAAa,mCAAmC,OAAO,wCAAwC;CAC7F,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAdiE,EAAE,OAAO;EAC1E,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,yEAAyE,CAAC,CAAC,SAAS;EACrH,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,mOAAmO;CACrQ,CAWS;CACP,QAXkE,EAAE,OAAO;EAC3E,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,gDAAgD;EACtF,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,mDAAmD;EAC1F,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,8DAA8D;CACvG,CAOU;AACV,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
const require_action = require("../action.cjs");
|
|
2
|
+
let zod = require("zod");
|
|
3
|
+
//#region src/actions/get-youtube-playlist.ts
|
|
4
|
+
const SupadataGetYoutubePlaylistInput = zod.z.object({ id: zod.z.string().describe("YouTube playlist URL or ID. Supports various formats including full URLs (e.g., 'https://www.youtube.com/playlist?list=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc') or just the playlist ID (e.g., 'PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc').") }).describe("Request parameters for fetching YouTube playlist metadata.");
|
|
5
|
+
const SupadataGetYoutubePlaylist_ChannelInfoSchema = zod.z.object({
|
|
6
|
+
id: zod.z.string().describe("The unique channel ID."),
|
|
7
|
+
name: zod.z.string().describe("The channel name.")
|
|
8
|
+
}).describe("Information about the channel that owns the playlist.");
|
|
9
|
+
const SupadataGetYoutubePlaylistOutput = zod.z.object({
|
|
10
|
+
id: zod.z.string().describe("The unique playlist ID."),
|
|
11
|
+
title: zod.z.string().describe("The title of the playlist."),
|
|
12
|
+
channel: SupadataGetYoutubePlaylist_ChannelInfoSchema.nullable(),
|
|
13
|
+
viewCount: zod.z.number().int().describe("Total view count of the playlist."),
|
|
14
|
+
videoCount: zod.z.number().int().describe("Number of videos in the playlist."),
|
|
15
|
+
description: zod.z.string().describe("The description of the playlist.").nullable().optional(),
|
|
16
|
+
lastUpdated: zod.z.string().describe("ISO 8601 timestamp of when the playlist was last updated.")
|
|
17
|
+
}).describe("Response containing YouTube playlist metadata.");
|
|
18
|
+
const supadataGetYoutubePlaylist = require_action.action("SUPADATA_GET_YOUTUBE_PLAYLIST", {
|
|
19
|
+
slug: "supadata-get-youtube-playlist",
|
|
20
|
+
name: "Get YouTube Playlist Metadata",
|
|
21
|
+
description: "Retrieve metadata for a YouTube playlist including title, description, video count, view count, last updated timestamp, and channel information. Use this when you need playlist-level information. For the list of videos in a playlist, use the Get YouTube Playlist Videos action instead.",
|
|
22
|
+
input: SupadataGetYoutubePlaylistInput,
|
|
23
|
+
output: SupadataGetYoutubePlaylistOutput
|
|
24
|
+
});
|
|
25
|
+
//#endregion
|
|
26
|
+
exports.supadataGetYoutubePlaylist = supadataGetYoutubePlaylist;
|
|
27
|
+
|
|
28
|
+
//# sourceMappingURL=get-youtube-playlist.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-playlist.cjs","names":["z","action"],"sources":["../../src/actions/get-youtube-playlist.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SupadataGetYoutubePlaylistInput: z.ZodTypeAny = z.object({\n id: z.string().describe(\"YouTube playlist URL or ID. Supports various formats including full URLs (e.g., 'https://www.youtube.com/playlist?list=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc') or just the playlist ID (e.g., 'PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc').\"),\n}).describe(\"Request parameters for fetching YouTube playlist metadata.\");\nconst SupadataGetYoutubePlaylist_ChannelInfoSchema: z.ZodTypeAny = z.object({\n id: z.string().describe(\"The unique channel ID.\"),\n name: z.string().describe(\"The channel name.\"),\n}).describe(\"Information about the channel that owns the playlist.\");\nexport const SupadataGetYoutubePlaylistOutput: z.ZodTypeAny = z.object({\n id: z.string().describe(\"The unique playlist ID.\"),\n title: z.string().describe(\"The title of the playlist.\"),\n channel: SupadataGetYoutubePlaylist_ChannelInfoSchema.nullable(),\n viewCount: z.number().int().describe(\"Total view count of the playlist.\"),\n videoCount: z.number().int().describe(\"Number of videos in the playlist.\"),\n description: z.string().describe(\"The description of the playlist.\").nullable().optional(),\n lastUpdated: z.string().describe(\"ISO 8601 timestamp of when the playlist was last updated.\"),\n}).describe(\"Response containing YouTube playlist metadata.\");\n\nexport const supadataGetYoutubePlaylist = action(\"SUPADATA_GET_YOUTUBE_PLAYLIST\", {\n slug: \"supadata-get-youtube-playlist\",\n name: \"Get YouTube Playlist Metadata\",\n description: \"Retrieve metadata for a YouTube playlist including title, description, video count, view count, last updated timestamp, and channel information. Use this when you need playlist-level information. For the list of videos in a playlist, use the Get YouTube Playlist Videos action instead.\",\n input: SupadataGetYoutubePlaylistInput,\n output: SupadataGetYoutubePlaylistOutput,\n});\n"],"mappings":";;;AAIA,MAAa,kCAAgDA,IAAAA,EAAE,OAAO,EACpE,IAAIA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,mOAAmO,EAC7P,CAAC,CAAC,CAAC,SAAS,4DAA4D;AACxE,MAAM,+CAA6DA,IAAAA,EAAE,OAAO;CAC1E,IAAIA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,wBAAwB;CAChD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,mBAAmB;AAC/C,CAAC,CAAC,CAAC,SAAS,uDAAuD;AACnE,MAAa,mCAAiDA,IAAAA,EAAE,OAAO;CACrE,IAAIA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,yBAAyB;CACjD,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,4BAA4B;CACvD,SAAS,6CAA6C,SAAS;CAC/D,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,mCAAmC;CACxE,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,mCAAmC;CACzE,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kCAAkC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACzF,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2DAA2D;AAC9F,CAAC,CAAC,CAAC,SAAS,gDAAgD;AAE5D,MAAa,6BAA6BC,eAAAA,OAAO,iCAAiC;CAChF,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
//#region src/actions/get-youtube-playlist.d.ts
|
|
4
|
+
declare const SupadataGetYoutubePlaylistInput: z.ZodTypeAny;
|
|
5
|
+
declare const SupadataGetYoutubePlaylistOutput: z.ZodTypeAny;
|
|
6
|
+
declare const supadataGetYoutubePlaylist: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { supadataGetYoutubePlaylist };
|
|
9
|
+
//# sourceMappingURL=get-youtube-playlist.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-playlist.d.cts","names":[],"sources":["../../src/actions/get-youtube-playlist.ts"],"mappings":";;;cAIa,+BAAA,EAAiC,CAAA,CAAE,UAEyB;AAAA,cAK5D,gCAAA,EAAkC,CAAA,CAAE,UAQY;AAAA,cAEhD,0BAAA,gCAA0B,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
//#region src/actions/get-youtube-playlist.d.ts
|
|
4
|
+
declare const SupadataGetYoutubePlaylistInput: z.ZodTypeAny;
|
|
5
|
+
declare const SupadataGetYoutubePlaylistOutput: z.ZodTypeAny;
|
|
6
|
+
declare const supadataGetYoutubePlaylist: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { supadataGetYoutubePlaylist };
|
|
9
|
+
//# sourceMappingURL=get-youtube-playlist.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-playlist.d.mts","names":[],"sources":["../../src/actions/get-youtube-playlist.ts"],"mappings":";;;cAIa,+BAAA,EAAiC,CAAA,CAAE,UAEyB;AAAA,cAK5D,gCAAA,EAAkC,CAAA,CAAE,UAQY;AAAA,cAEhD,0BAAA,gCAA0B,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { action } from "../action.mjs";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
//#region src/actions/get-youtube-playlist.ts
|
|
4
|
+
const SupadataGetYoutubePlaylistInput = z.object({ id: z.string().describe("YouTube playlist URL or ID. Supports various formats including full URLs (e.g., 'https://www.youtube.com/playlist?list=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc') or just the playlist ID (e.g., 'PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc').") }).describe("Request parameters for fetching YouTube playlist metadata.");
|
|
5
|
+
const SupadataGetYoutubePlaylist_ChannelInfoSchema = z.object({
|
|
6
|
+
id: z.string().describe("The unique channel ID."),
|
|
7
|
+
name: z.string().describe("The channel name.")
|
|
8
|
+
}).describe("Information about the channel that owns the playlist.");
|
|
9
|
+
const supadataGetYoutubePlaylist = action("SUPADATA_GET_YOUTUBE_PLAYLIST", {
|
|
10
|
+
slug: "supadata-get-youtube-playlist",
|
|
11
|
+
name: "Get YouTube Playlist Metadata",
|
|
12
|
+
description: "Retrieve metadata for a YouTube playlist including title, description, video count, view count, last updated timestamp, and channel information. Use this when you need playlist-level information. For the list of videos in a playlist, use the Get YouTube Playlist Videos action instead.",
|
|
13
|
+
input: SupadataGetYoutubePlaylistInput,
|
|
14
|
+
output: z.object({
|
|
15
|
+
id: z.string().describe("The unique playlist ID."),
|
|
16
|
+
title: z.string().describe("The title of the playlist."),
|
|
17
|
+
channel: SupadataGetYoutubePlaylist_ChannelInfoSchema.nullable(),
|
|
18
|
+
viewCount: z.number().int().describe("Total view count of the playlist."),
|
|
19
|
+
videoCount: z.number().int().describe("Number of videos in the playlist."),
|
|
20
|
+
description: z.string().describe("The description of the playlist.").nullable().optional(),
|
|
21
|
+
lastUpdated: z.string().describe("ISO 8601 timestamp of when the playlist was last updated.")
|
|
22
|
+
}).describe("Response containing YouTube playlist metadata.")
|
|
23
|
+
});
|
|
24
|
+
//#endregion
|
|
25
|
+
export { supadataGetYoutubePlaylist };
|
|
26
|
+
|
|
27
|
+
//# sourceMappingURL=get-youtube-playlist.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-playlist.mjs","names":[],"sources":["../../src/actions/get-youtube-playlist.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SupadataGetYoutubePlaylistInput: z.ZodTypeAny = z.object({\n id: z.string().describe(\"YouTube playlist URL or ID. Supports various formats including full URLs (e.g., 'https://www.youtube.com/playlist?list=PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc') or just the playlist ID (e.g., 'PLlaN88a7y2_plecYoJxvRFTLHVbIVAOoc').\"),\n}).describe(\"Request parameters for fetching YouTube playlist metadata.\");\nconst SupadataGetYoutubePlaylist_ChannelInfoSchema: z.ZodTypeAny = z.object({\n id: z.string().describe(\"The unique channel ID.\"),\n name: z.string().describe(\"The channel name.\"),\n}).describe(\"Information about the channel that owns the playlist.\");\nexport const SupadataGetYoutubePlaylistOutput: z.ZodTypeAny = z.object({\n id: z.string().describe(\"The unique playlist ID.\"),\n title: z.string().describe(\"The title of the playlist.\"),\n channel: SupadataGetYoutubePlaylist_ChannelInfoSchema.nullable(),\n viewCount: z.number().int().describe(\"Total view count of the playlist.\"),\n videoCount: z.number().int().describe(\"Number of videos in the playlist.\"),\n description: z.string().describe(\"The description of the playlist.\").nullable().optional(),\n lastUpdated: z.string().describe(\"ISO 8601 timestamp of when the playlist was last updated.\"),\n}).describe(\"Response containing YouTube playlist metadata.\");\n\nexport const supadataGetYoutubePlaylist = action(\"SUPADATA_GET_YOUTUBE_PLAYLIST\", {\n slug: \"supadata-get-youtube-playlist\",\n name: \"Get YouTube Playlist Metadata\",\n description: \"Retrieve metadata for a YouTube playlist including title, description, video count, view count, last updated timestamp, and channel information. Use this when you need playlist-level information. For the list of videos in a playlist, use the Get YouTube Playlist Videos action instead.\",\n input: SupadataGetYoutubePlaylistInput,\n output: SupadataGetYoutubePlaylistOutput,\n});\n"],"mappings":";;;AAIA,MAAa,kCAAgD,EAAE,OAAO,EACpE,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,mOAAmO,EAC7P,CAAC,CAAC,CAAC,SAAS,4DAA4D;AACxE,MAAM,+CAA6D,EAAE,OAAO;CAC1E,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,wBAAwB;CAChD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,mBAAmB;AAC/C,CAAC,CAAC,CAAC,SAAS,uDAAuD;AAWnE,MAAa,6BAA6B,OAAO,iCAAiC;CAChF,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAf4D,EAAE,OAAO;EACrE,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,yBAAyB;EACjD,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,4BAA4B;EACvD,SAAS,6CAA6C,SAAS;EAC/D,WAAW,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,mCAAmC;EACxE,YAAY,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,mCAAmC;EACzE,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,kCAAkC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACzF,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,2DAA2D;CAC9F,CAAC,CAAC,CAAC,SAAS,gDAOF;AACV,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
const require_action = require("../action.cjs");
|
|
2
|
+
let zod = require("zod");
|
|
3
|
+
//#region src/actions/get-youtube-video.ts
|
|
4
|
+
const SupadataGetYoutubeVideoInput = zod.z.object({ video_id: zod.z.string().describe("The YouTube video ID (11-character string found in YouTube URLs after 'v=' or '/watch?v='). Example: 'dQw4w9WgXcQ' from 'https://youtube.com/watch?v=dQw4w9WgXcQ'.") }).describe("Request parameters for GET_YOUTUBE_VIDEO.");
|
|
5
|
+
const SupadataGetYoutubeVideo_ChannelSchema = zod.z.object({
|
|
6
|
+
id: zod.z.string().describe("The unique channel ID."),
|
|
7
|
+
name: zod.z.string().describe("The display name of the channel.")
|
|
8
|
+
}).describe("Channel information for the video.");
|
|
9
|
+
const SupadataGetYoutubeVideoOutput = zod.z.object({
|
|
10
|
+
id: zod.z.string().describe("The YouTube video ID."),
|
|
11
|
+
tags: zod.z.array(zod.z.string()).describe("Tags/hashtags associated with the video.").nullable().optional(),
|
|
12
|
+
title: zod.z.string().describe("Title of the video."),
|
|
13
|
+
isLive: zod.z.boolean().describe("Whether the video is currently a live stream."),
|
|
14
|
+
channel: SupadataGetYoutubeVideo_ChannelSchema.nullable(),
|
|
15
|
+
duration: zod.z.number().int().describe("Duration of the video in seconds."),
|
|
16
|
+
likeCount: zod.z.number().int().describe("Total number of likes."),
|
|
17
|
+
thumbnail: zod.z.string().describe("URL of the video's thumbnail image."),
|
|
18
|
+
viewCount: zod.z.number().int().describe("Total number of views."),
|
|
19
|
+
uploadDate: zod.z.string().describe("ISO 8601 date and time when the video was uploaded."),
|
|
20
|
+
description: zod.z.string().describe("Full description of the video."),
|
|
21
|
+
transcriptLanguages: zod.z.array(zod.z.string()).describe("Available transcript/caption languages.").nullable().optional()
|
|
22
|
+
}).describe("Response schema for GET_YOUTUBE_VIDEO containing video metadata.");
|
|
23
|
+
const supadataGetYoutubeVideo = require_action.action("SUPADATA_GET_YOUTUBE_VIDEO", {
|
|
24
|
+
slug: "supadata-get-youtube-video",
|
|
25
|
+
name: "Get YouTube Video Metadata",
|
|
26
|
+
description: "Retrieve comprehensive metadata for a YouTube video by its ID. Use this tool when you need to get details about a specific YouTube video including: - Title, description, and tags - Channel information - View and like counts - Upload date and duration - Live stream status - Available transcript languages The video_id is the 11-character identifier found in YouTube URLs (e.g., 'dQw4w9WgXcQ' from 'https://youtube.com/watch?v=dQw4w9WgXcQ').",
|
|
27
|
+
input: SupadataGetYoutubeVideoInput,
|
|
28
|
+
output: SupadataGetYoutubeVideoOutput
|
|
29
|
+
});
|
|
30
|
+
//#endregion
|
|
31
|
+
exports.supadataGetYoutubeVideo = supadataGetYoutubeVideo;
|
|
32
|
+
|
|
33
|
+
//# sourceMappingURL=get-youtube-video.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-video.cjs","names":["z","action"],"sources":["../../src/actions/get-youtube-video.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SupadataGetYoutubeVideoInput: z.ZodTypeAny = z.object({\n video_id: z.string().describe(\"The YouTube video ID (11-character string found in YouTube URLs after 'v=' or '/watch?v='). Example: 'dQw4w9WgXcQ' from 'https://youtube.com/watch?v=dQw4w9WgXcQ'.\"),\n}).describe(\"Request parameters for GET_YOUTUBE_VIDEO.\");\nconst SupadataGetYoutubeVideo_ChannelSchema: z.ZodTypeAny = z.object({\n id: z.string().describe(\"The unique channel ID.\"),\n name: z.string().describe(\"The display name of the channel.\"),\n}).describe(\"Channel information for the video.\");\nexport const SupadataGetYoutubeVideoOutput: z.ZodTypeAny = z.object({\n id: z.string().describe(\"The YouTube video ID.\"),\n tags: z.array(z.string()).describe(\"Tags/hashtags associated with the video.\").nullable().optional(),\n title: z.string().describe(\"Title of the video.\"),\n isLive: z.boolean().describe(\"Whether the video is currently a live stream.\"),\n channel: SupadataGetYoutubeVideo_ChannelSchema.nullable(),\n duration: z.number().int().describe(\"Duration of the video in seconds.\"),\n likeCount: z.number().int().describe(\"Total number of likes.\"),\n thumbnail: z.string().describe(\"URL of the video's thumbnail image.\"),\n viewCount: z.number().int().describe(\"Total number of views.\"),\n uploadDate: z.string().describe(\"ISO 8601 date and time when the video was uploaded.\"),\n description: z.string().describe(\"Full description of the video.\"),\n transcriptLanguages: z.array(z.string()).describe(\"Available transcript/caption languages.\").nullable().optional(),\n}).describe(\"Response schema for GET_YOUTUBE_VIDEO containing video metadata.\");\n\nexport const supadataGetYoutubeVideo = action(\"SUPADATA_GET_YOUTUBE_VIDEO\", {\n slug: \"supadata-get-youtube-video\",\n name: \"Get YouTube Video Metadata\",\n description: \"Retrieve comprehensive metadata for a YouTube video by its ID. Use this tool when you need to get details about a specific YouTube video including: - Title, description, and tags - Channel information - View and like counts - Upload date and duration - Live stream status - Available transcript languages The video_id is the 11-character identifier found in YouTube URLs (e.g., 'dQw4w9WgXcQ' from 'https://youtube.com/watch?v=dQw4w9WgXcQ').\",\n input: SupadataGetYoutubeVideoInput,\n output: SupadataGetYoutubeVideoOutput,\n});\n"],"mappings":";;;AAIA,MAAa,+BAA6CA,IAAAA,EAAE,OAAO,EACjE,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,oKAAoK,EACpM,CAAC,CAAC,CAAC,SAAS,2CAA2C;AACvD,MAAM,wCAAsDA,IAAAA,EAAE,OAAO;CACnE,IAAIA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,wBAAwB;CAChD,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,kCAAkC;AAC9D,CAAC,CAAC,CAAC,SAAS,oCAAoC;AAChD,MAAa,gCAA8CA,IAAAA,EAAE,OAAO;CAClE,IAAIA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uBAAuB;CAC/C,MAAMA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,0CAA0C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACnG,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qBAAqB;CAChD,QAAQA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,+CAA+C;CAC5E,SAAS,sCAAsC,SAAS;CACxD,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,mCAAmC;CACvE,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,wBAAwB;CAC7D,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qCAAqC;CACpE,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,wBAAwB;CAC7D,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,qDAAqD;CACrF,aAAaA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,gCAAgC;CACjE,qBAAqBA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AACnH,CAAC,CAAC,CAAC,SAAS,kEAAkE;AAE9E,MAAa,0BAA0BC,eAAAA,OAAO,8BAA8B;CAC1E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
//#region src/actions/get-youtube-video.d.ts
|
|
4
|
+
declare const SupadataGetYoutubeVideoInput: z.ZodTypeAny;
|
|
5
|
+
declare const SupadataGetYoutubeVideoOutput: z.ZodTypeAny;
|
|
6
|
+
declare const supadataGetYoutubeVideo: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { supadataGetYoutubeVideo };
|
|
9
|
+
//# sourceMappingURL=get-youtube-video.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-video.d.cts","names":[],"sources":["../../src/actions/get-youtube-video.ts"],"mappings":";;;cAIa,4BAAA,EAA8B,CAAA,CAAE,UAEW;AAAA,cAK3C,6BAAA,EAA+B,CAAA,CAAE,UAaiC;AAAA,cAElE,uBAAA,gCAAuB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
|
|
3
|
+
//#region src/actions/get-youtube-video.d.ts
|
|
4
|
+
declare const SupadataGetYoutubeVideoInput: z.ZodTypeAny;
|
|
5
|
+
declare const SupadataGetYoutubeVideoOutput: z.ZodTypeAny;
|
|
6
|
+
declare const supadataGetYoutubeVideo: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
|
|
7
|
+
//#endregion
|
|
8
|
+
export { supadataGetYoutubeVideo };
|
|
9
|
+
//# sourceMappingURL=get-youtube-video.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-video.d.mts","names":[],"sources":["../../src/actions/get-youtube-video.ts"],"mappings":";;;cAIa,4BAAA,EAA8B,CAAA,CAAE,UAEW;AAAA,cAK3C,6BAAA,EAA+B,CAAA,CAAE,UAaiC;AAAA,cAElE,uBAAA,gCAAuB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { action } from "../action.mjs";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
//#region src/actions/get-youtube-video.ts
|
|
4
|
+
const SupadataGetYoutubeVideoInput = z.object({ video_id: z.string().describe("The YouTube video ID (11-character string found in YouTube URLs after 'v=' or '/watch?v='). Example: 'dQw4w9WgXcQ' from 'https://youtube.com/watch?v=dQw4w9WgXcQ'.") }).describe("Request parameters for GET_YOUTUBE_VIDEO.");
|
|
5
|
+
const SupadataGetYoutubeVideo_ChannelSchema = z.object({
|
|
6
|
+
id: z.string().describe("The unique channel ID."),
|
|
7
|
+
name: z.string().describe("The display name of the channel.")
|
|
8
|
+
}).describe("Channel information for the video.");
|
|
9
|
+
const supadataGetYoutubeVideo = action("SUPADATA_GET_YOUTUBE_VIDEO", {
|
|
10
|
+
slug: "supadata-get-youtube-video",
|
|
11
|
+
name: "Get YouTube Video Metadata",
|
|
12
|
+
description: "Retrieve comprehensive metadata for a YouTube video by its ID. Use this tool when you need to get details about a specific YouTube video including: - Title, description, and tags - Channel information - View and like counts - Upload date and duration - Live stream status - Available transcript languages The video_id is the 11-character identifier found in YouTube URLs (e.g., 'dQw4w9WgXcQ' from 'https://youtube.com/watch?v=dQw4w9WgXcQ').",
|
|
13
|
+
input: SupadataGetYoutubeVideoInput,
|
|
14
|
+
output: z.object({
|
|
15
|
+
id: z.string().describe("The YouTube video ID."),
|
|
16
|
+
tags: z.array(z.string()).describe("Tags/hashtags associated with the video.").nullable().optional(),
|
|
17
|
+
title: z.string().describe("Title of the video."),
|
|
18
|
+
isLive: z.boolean().describe("Whether the video is currently a live stream."),
|
|
19
|
+
channel: SupadataGetYoutubeVideo_ChannelSchema.nullable(),
|
|
20
|
+
duration: z.number().int().describe("Duration of the video in seconds."),
|
|
21
|
+
likeCount: z.number().int().describe("Total number of likes."),
|
|
22
|
+
thumbnail: z.string().describe("URL of the video's thumbnail image."),
|
|
23
|
+
viewCount: z.number().int().describe("Total number of views."),
|
|
24
|
+
uploadDate: z.string().describe("ISO 8601 date and time when the video was uploaded."),
|
|
25
|
+
description: z.string().describe("Full description of the video."),
|
|
26
|
+
transcriptLanguages: z.array(z.string()).describe("Available transcript/caption languages.").nullable().optional()
|
|
27
|
+
}).describe("Response schema for GET_YOUTUBE_VIDEO containing video metadata.")
|
|
28
|
+
});
|
|
29
|
+
//#endregion
|
|
30
|
+
export { supadataGetYoutubeVideo };
|
|
31
|
+
|
|
32
|
+
//# sourceMappingURL=get-youtube-video.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-youtube-video.mjs","names":[],"sources":["../../src/actions/get-youtube-video.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SupadataGetYoutubeVideoInput: z.ZodTypeAny = z.object({\n video_id: z.string().describe(\"The YouTube video ID (11-character string found in YouTube URLs after 'v=' or '/watch?v='). Example: 'dQw4w9WgXcQ' from 'https://youtube.com/watch?v=dQw4w9WgXcQ'.\"),\n}).describe(\"Request parameters for GET_YOUTUBE_VIDEO.\");\nconst SupadataGetYoutubeVideo_ChannelSchema: z.ZodTypeAny = z.object({\n id: z.string().describe(\"The unique channel ID.\"),\n name: z.string().describe(\"The display name of the channel.\"),\n}).describe(\"Channel information for the video.\");\nexport const SupadataGetYoutubeVideoOutput: z.ZodTypeAny = z.object({\n id: z.string().describe(\"The YouTube video ID.\"),\n tags: z.array(z.string()).describe(\"Tags/hashtags associated with the video.\").nullable().optional(),\n title: z.string().describe(\"Title of the video.\"),\n isLive: z.boolean().describe(\"Whether the video is currently a live stream.\"),\n channel: SupadataGetYoutubeVideo_ChannelSchema.nullable(),\n duration: z.number().int().describe(\"Duration of the video in seconds.\"),\n likeCount: z.number().int().describe(\"Total number of likes.\"),\n thumbnail: z.string().describe(\"URL of the video's thumbnail image.\"),\n viewCount: z.number().int().describe(\"Total number of views.\"),\n uploadDate: z.string().describe(\"ISO 8601 date and time when the video was uploaded.\"),\n description: z.string().describe(\"Full description of the video.\"),\n transcriptLanguages: z.array(z.string()).describe(\"Available transcript/caption languages.\").nullable().optional(),\n}).describe(\"Response schema for GET_YOUTUBE_VIDEO containing video metadata.\");\n\nexport const supadataGetYoutubeVideo = action(\"SUPADATA_GET_YOUTUBE_VIDEO\", {\n slug: \"supadata-get-youtube-video\",\n name: \"Get YouTube Video Metadata\",\n description: \"Retrieve comprehensive metadata for a YouTube video by its ID. Use this tool when you need to get details about a specific YouTube video including: - Title, description, and tags - Channel information - View and like counts - Upload date and duration - Live stream status - Available transcript languages The video_id is the 11-character identifier found in YouTube URLs (e.g., 'dQw4w9WgXcQ' from 'https://youtube.com/watch?v=dQw4w9WgXcQ').\",\n input: SupadataGetYoutubeVideoInput,\n output: SupadataGetYoutubeVideoOutput,\n});\n"],"mappings":";;;AAIA,MAAa,+BAA6C,EAAE,OAAO,EACjE,UAAU,EAAE,OAAO,CAAC,CAAC,SAAS,oKAAoK,EACpM,CAAC,CAAC,CAAC,SAAS,2CAA2C;AACvD,MAAM,wCAAsD,EAAE,OAAO;CACnE,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,wBAAwB;CAChD,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,kCAAkC;AAC9D,CAAC,CAAC,CAAC,SAAS,oCAAoC;AAgBhD,MAAa,0BAA0B,OAAO,8BAA8B;CAC1E,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QApByD,EAAE,OAAO;EAClE,IAAI,EAAE,OAAO,CAAC,CAAC,SAAS,uBAAuB;EAC/C,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,0CAA0C,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;EACnG,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,qBAAqB;EAChD,QAAQ,EAAE,QAAQ,CAAC,CAAC,SAAS,+CAA+C;EAC5E,SAAS,sCAAsC,SAAS;EACxD,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,mCAAmC;EACvE,WAAW,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,wBAAwB;EAC7D,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,qCAAqC;EACpE,WAAW,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,wBAAwB;EAC7D,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,qDAAqD;EACrF,aAAa,EAAE,OAAO,CAAC,CAAC,SAAS,gCAAgC;EACjE,qBAAqB,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,yCAAyC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACnH,CAAC,CAAC,CAAC,SAAS,kEAOF;AACV,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
+
const require_get_me = require("./get-me.cjs");
|
|
3
|
+
const require_get_transcript = require("./get-transcript.cjs");
|
|
4
|
+
const require_get_transcript_by_job_id = require("./get-transcript-by-job-id.cjs");
|
|
5
|
+
const require_get_web_map = require("./get-web-map.cjs");
|
|
6
|
+
const require_get_web_scrape = require("./get-web-scrape.cjs");
|
|
7
|
+
const require_get_youtube_channel = require("./get-youtube-channel.cjs");
|
|
8
|
+
const require_get_youtube_channel_videos = require("./get-youtube-channel-videos.cjs");
|
|
9
|
+
const require_get_youtube_playlist = require("./get-youtube-playlist.cjs");
|
|
10
|
+
const require_get_youtube_playlist_videos = require("./get-youtube-playlist-videos.cjs");
|
|
11
|
+
const require_get_youtube_video = require("./get-youtube-video.cjs");
|
|
12
|
+
const require_search_youtube = require("./search-youtube.cjs");
|
|
13
|
+
exports.supadataGetMe = require_get_me.supadataGetMe;
|
|
14
|
+
exports.supadataGetTranscript = require_get_transcript.supadataGetTranscript;
|
|
15
|
+
exports.supadataGetTranscriptByJobId = require_get_transcript_by_job_id.supadataGetTranscriptByJobId;
|
|
16
|
+
exports.supadataGetWebMap = require_get_web_map.supadataGetWebMap;
|
|
17
|
+
exports.supadataGetWebScrape = require_get_web_scrape.supadataGetWebScrape;
|
|
18
|
+
exports.supadataGetYoutubeChannel = require_get_youtube_channel.supadataGetYoutubeChannel;
|
|
19
|
+
exports.supadataGetYoutubeChannelVideos = require_get_youtube_channel_videos.supadataGetYoutubeChannelVideos;
|
|
20
|
+
exports.supadataGetYoutubePlaylist = require_get_youtube_playlist.supadataGetYoutubePlaylist;
|
|
21
|
+
exports.supadataGetYoutubePlaylistVideos = require_get_youtube_playlist_videos.supadataGetYoutubePlaylistVideos;
|
|
22
|
+
exports.supadataGetYoutubeVideo = require_get_youtube_video.supadataGetYoutubeVideo;
|
|
23
|
+
exports.supadataSearchYoutube = require_search_youtube.supadataSearchYoutube;
|