YouTube tools
Six tools for channels, videos, comments and captions implemented; live verification pending.
6 tools are implemented in this family. The definitions below come from the service’s actual tool catalog.
This family includes implemented tools with provider or platform limitations. Live provider verification is pending; read each description before using it.
Authenticate, inspect the schema, then request an estimate using dry_run where supported. Research can spend workspace credits.
Get a YouTube channel
youtube_get_channelPublic channel details and published subscriber/video/view counts.
REST endpoint
POST /api/social/tools/youtube_get_channelProduct-credit cost
5 product credits per call/page. No fixed number of rows per page. Use dry_run for the selected options' quote.
Input JSON schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"handle": {
"type": "string",
"minLength": 1,
"maxLength": 101,
"pattern": "^@?[\\p{L}\\p{N}_.·-]+$"
},
"dry_run": {
"default": false,
"type": "boolean"
},
"max_credits": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"idempotency_key": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{8,100}$"
}
},
"required": [
"handle"
],
"additionalProperties": false
}Get YouTube channel videos
youtube_get_videosOne page of a channel's videos, latest or popular. No per-video enrichment.
REST endpoint
POST /api/social/tools/youtube_get_videosProduct-credit cost
5 product credits per call/page. No fixed number of rows per page. Use dry_run for the selected options' quote.
Input JSON schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"handle": {
"type": "string",
"minLength": 1,
"maxLength": 101,
"pattern": "^@?[\\p{L}\\p{N}_.·-]+$"
},
"sort": {
"default": "latest",
"type": "string",
"enum": [
"latest",
"popular"
]
},
"cursor": {
"type": "string",
"minLength": 1,
"maxLength": 16384
},
"dry_run": {
"default": false,
"type": "boolean"
},
"max_credits": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"idempotency_key": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{8,100}$"
}
},
"required": [
"handle"
],
"additionalProperties": false
}Get a YouTube video
youtube_get_videoRead a video or Short, its description and available engagement metrics.
REST endpoint
POST /api/social/tools/youtube_get_videoProduct-credit cost
5 product credits per call/page. No fixed number of rows per page. Use dry_run for the selected options' quote.
Input JSON schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"url": {
"type": "string",
"maxLength": 2048,
"format": "uri"
},
"dry_run": {
"default": false,
"type": "boolean"
},
"max_credits": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"idempotency_key": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{8,100}$"
}
},
"required": [
"url"
],
"additionalProperties": false
}Get YouTube comments
youtube_get_commentsOne page of top comments. Reply pagination requires separate work and is not performed automatically.
REST endpoint
POST /api/social/tools/youtube_get_commentsProduct-credit cost
5 product credits per call/page. No fixed number of rows per page. Use dry_run for the selected options' quote.
Input JSON schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"url": {
"type": "string",
"maxLength": 2048,
"format": "uri"
},
"cursor": {
"type": "string",
"minLength": 1,
"maxLength": 16384
},
"dry_run": {
"default": false,
"type": "boolean"
},
"max_credits": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"idempotency_key": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{8,100}$"
}
},
"required": [
"url"
],
"additionalProperties": false
}Search YouTube videos
youtube_search_videosOne page of native video search. latest uses relevance because newest-first search is unavailable.
REST endpoint
POST /api/social/tools/youtube_search_videosProduct-credit cost
5 product credits per call/page. No fixed number of rows per page. Use dry_run for the selected options' quote.
Input JSON schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 200
},
"since": {
"default": "month",
"type": "string",
"enum": [
"day",
"week",
"month",
"year",
"all"
]
},
"sort": {
"default": "relevance",
"type": "string",
"enum": [
"relevance",
"latest",
"popular"
]
},
"cursor": {
"type": "string",
"minLength": 1,
"maxLength": 16384
},
"dry_run": {
"default": false,
"type": "boolean"
},
"max_credits": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"idempotency_key": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{8,100}$"
}
},
"required": [
"query"
],
"additionalProperties": false
}Get a YouTube transcript
youtube_get_transcriptPublic captions, optionally requesting a language. No AI transcription or extra lookup.
REST endpoint
POST /api/social/tools/youtube_get_transcriptProduct-credit cost
5 product credits per call/page. No fixed number of rows per page. Use dry_run for the selected options' quote.
Input JSON schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"url": {
"type": "string",
"maxLength": 2048,
"format": "uri"
},
"language": {
"type": "string",
"pattern": "^[a-zA-Z]{2,3}(?:-[a-zA-Z0-9]{2,8})?$"
},
"dry_run": {
"default": false,
"type": "boolean"
},
"max_credits": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"idempotency_key": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{8,100}$"
}
},
"required": [
"url"
],
"additionalProperties": false
}