Check a YouTube Channel for Updates
/v1/youtube/monitors/{monitor_id}/checkRuns the monitor's configured backend strategies immediately. For auto, RSS and yt-dlp polling both run as peer strategies. A completed check costs 5 Credits plus 2 Credits per unique new-or-updated video; failed checks are released without charge.
On this page
Request example
Replace placeholders with your values. Use your Team API key for authenticated requests.
https://kieapi.comcurl -X POST "https://kieapi.com/v1/youtube/monitors/{monitor_id}/check" \
-H "Authorization: Bearer $SPIDER_API_KEY" \
-H 'Idempotency-Key: docs-example-01'Authentication
BearerAuth
Parameters
monitor_idpath · string requiredIdempotency-Keyheader · string- Caller-generated key, up to 128 characters, that identifies one API Market write and its billing event. Reuse the same key only when retrying the same logical request. Replays do not create another reservation or capture.
Responses
200 YouTube monitor check result.
application/json
monitorYoutubeMonitor requiredeventsarray of YoutubeMonitorEvent required
401 Missing or invalid API key.
402 The Team does not have enough available Credits for the maximum reservation.
403 Authenticated principal cannot access this resource.
404 YouTube monitor was not found or is not visible to this workspace.
409 Billing settlement requires reconciliation, or the idempotency key was reused for a different logical request.
429 Temporary rate limit.
503 Required runtime service is unavailable.
Schemas
Field definitions and complete validation rules for this API. Follow a type link to its definition.
YoutubeMonitorCheckResponse
object
monitorYoutubeMonitor requiredeventsarray of YoutubeMonitorEvent required
Complete schema
{
"type": "object",
"additionalProperties": false,
"required": [
"monitor",
"events"
],
"properties": {
"monitor": {
"$ref": "#/components/schemas/YoutubeMonitor"
},
"events": {
"type": "array",
"items": {
"$ref": "#/components/schemas/YoutubeMonitorEvent"
}
}
}
}YoutubeMonitor
object
idstring requiredplatformstring requiredAllowed:
"youtube"statusstring requiredAllowed:
"active", "paused"strategyYoutubeMonitorStrategy requiredtargetYoutubeMonitorTarget requiredsettingsYoutubeMonitorSettings requiredchecksarray of YoutubeMonitorCheckState requiredcreated_atstring | null (date-time)updated_atstring | null (date-time)
Complete schema
{
"type": "object",
"additionalProperties": false,
"required": [
"id",
"platform",
"status",
"strategy",
"target",
"settings",
"checks"
],
"properties": {
"id": {
"type": "string"
},
"platform": {
"type": "string",
"enum": [
"youtube"
]
},
"status": {
"type": "string",
"enum": [
"active",
"paused"
]
},
"strategy": {
"$ref": "#/components/schemas/YoutubeMonitorStrategy"
},
"target": {
"$ref": "#/components/schemas/YoutubeMonitorTarget"
},
"settings": {
"$ref": "#/components/schemas/YoutubeMonitorSettings"
},
"checks": {
"type": "array",
"items": {
"$ref": "#/components/schemas/YoutubeMonitorCheckState"
}
},
"created_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"updated_at": {
"type": [
"string",
"null"
],
"format": "date-time"
}
}
}YoutubeMonitorStrategy
string
Complete schema
{
"type": "string",
"enum": [
"rss",
"yt_dlp_polling",
"auto"
]
}YoutubeMonitorTarget
object
channel_idstring | nullchannel_urlstring | nullrss_urlstring | null
Complete schema
{
"type": "object",
"additionalProperties": false,
"properties": {
"channel_id": {
"type": [
"string",
"null"
]
},
"channel_url": {
"type": [
"string",
"null"
]
},
"rss_url": {
"type": [
"string",
"null"
]
}
}
}YoutubeMonitorSettings
object
check_interval_secondsnumber requiredslow_check_interval_secondsnumber requiredmax_itemsinteger requiredquiet_first_checkboolean requiredquiet_startboolean requiredtrack_rescheduleboolean required
Complete schema
{
"type": "object",
"additionalProperties": false,
"required": [
"check_interval_seconds",
"slow_check_interval_seconds",
"max_items",
"quiet_first_check",
"quiet_start",
"track_reschedule"
],
"properties": {
"check_interval_seconds": {
"type": "number"
},
"slow_check_interval_seconds": {
"type": "number"
},
"max_items": {
"type": "integer"
},
"quiet_first_check": {
"type": "boolean"
},
"quiet_start": {
"type": "boolean"
},
"track_reschedule": {
"type": "boolean"
}
}
}YoutubeMonitorCheckState
object
strategyYoutubeMonitorBackendStrategy requiredstatusstring requiredAllowed:
"never_run", "completed", "failed", "not_modified"next_check_atstring | null (date-time)last_checked_atstring | null (date-time)last_error_codestring | null
Complete schema
{
"type": "object",
"additionalProperties": false,
"required": [
"strategy",
"status"
],
"properties": {
"strategy": {
"$ref": "#/components/schemas/YoutubeMonitorBackendStrategy"
},
"status": {
"type": "string",
"enum": [
"never_run",
"completed",
"failed",
"not_modified"
]
},
"next_check_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"last_checked_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"last_error_code": {
"type": [
"string",
"null"
]
}
}
}YoutubeMonitorBackendStrategy
string
Complete schema
{
"type": "string",
"enum": [
"rss",
"yt_dlp_polling"
]
}YoutubeMonitorEvent
object
idstring requiredtypestring requiredAllowed:
"new_video", "updated_video", "rescheduled_video", "monitor_error"monitor_idstring requiredstrategyYoutubeMonitorBackendStrategy or nullvideo_idstring | nullvideoYoutubeVideo or nullprevious_videoYoutubeVideo or nullerrorYoutubeMonitorEventError or nullobserved_atstring (date-time) required
Complete schema
{
"type": "object",
"additionalProperties": false,
"required": [
"id",
"type",
"monitor_id",
"observed_at"
],
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"new_video",
"updated_video",
"rescheduled_video",
"monitor_error"
]
},
"monitor_id": {
"type": "string"
},
"strategy": {
"anyOf": [
{
"$ref": "#/components/schemas/YoutubeMonitorBackendStrategy"
},
{
"type": "null"
}
]
},
"video_id": {
"type": [
"string",
"null"
]
},
"video": {
"anyOf": [
{
"$ref": "#/components/schemas/YoutubeVideo"
},
{
"type": "null"
}
]
},
"previous_video": {
"anyOf": [
{
"$ref": "#/components/schemas/YoutubeVideo"
},
{
"type": "null"
}
]
},
"error": {
"anyOf": [
{
"$ref": "#/components/schemas/YoutubeMonitorEventError"
},
{
"type": "null"
}
]
},
"observed_at": {
"type": "string",
"format": "date-time"
}
}
}YoutubeVideo
object
video_idstring requiredurlstring requiredtitlestring requireddescriptionstring | nullthumbnail_urlstring | nullpublished_atstring | null (date-time)scheduled_atstring | null (date-time)updated_atstring | null (date-time)channel_idstring | nullauthorstring | nulllive_statusstring | nullview_countinteger | nullfirst_seen_atstring | null (date-time)last_seen_atstring | null (date-time)
Complete schema
{
"type": "object",
"additionalProperties": false,
"required": [
"video_id",
"url",
"title"
],
"properties": {
"video_id": {
"type": "string"
},
"url": {
"type": "string"
},
"title": {
"type": "string"
},
"description": {
"type": [
"string",
"null"
]
},
"thumbnail_url": {
"type": [
"string",
"null"
]
},
"published_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"scheduled_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"updated_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"channel_id": {
"type": [
"string",
"null"
]
},
"author": {
"type": [
"string",
"null"
]
},
"live_status": {
"type": [
"string",
"null"
]
},
"view_count": {
"type": [
"integer",
"null"
]
},
"first_seen_at": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"last_seen_at": {
"type": [
"string",
"null"
],
"format": "date-time"
}
}
}YoutubeMonitorEventError
object
codestring requiredmessagestring requiredretryableboolean required
Complete schema
{
"type": "object",
"additionalProperties": false,
"required": [
"code",
"message",
"retryable"
],
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"retryable": {
"type": "boolean"
}
}
}PublicErrorResponse
object
errorPublicError required
Complete schema
{
"type": "object",
"additionalProperties": false,
"required": [
"error"
],
"properties": {
"error": {
"$ref": "#/components/schemas/PublicError"
}
}
}PublicError
object
codestring requiredAllowed:
"seoapi_price_pending", "seoapi_unavailable", "seoapi_busy", "seoapi_not_found", "seoapi_rate_limited", "seoapi_budget_exceeded", "seoapi_idempotency_conflict", "seoapi_insufficient_credits", "seoapi_admission_failed", "seoapi_execution_interrupted", "seoapi_delivery_unknown", "seoapi_response_invalid", "seoapi_model_unsupported", "seoapi_model_options_invalid", "seoapi_provider_rejected", "seo_price_pending", "seo_provider_blocked", "seo_local_rate_limited", "seo_fallback_unavailable", "seo_fallback_budget_exceeded", "seo_pagination_expired", "seo_delivery_uncertain", "seo_auth_required", "seo_initialization_required", "seo_permission_denied", "seo_verification_required", "seo_rate_limited", "seo_upstream_unavailable", "seo_transport_failed", "seo_invalid_response", "seo_rpc_error", "seo_period_unavailable", "seo_account_unavailable", "seo_session_busy", "seo_configuration_required", "validation_error", "invalid_request", "unsupported_feature", "authentication_required", "permission_denied", "not_found", "run_not_found", "crawl_not_found", "artifact_not_found", "session_not_found", "profile_not_found", "profile_in_use", "profile_not_ready", "profile_not_cloneable", "profile_limit_reached", "profile_proxy_conflict", "proxy_not_found", "proxy_unavailable", "invalid_session_options", "invalid_query_options", "invalid_cursor", "idempotency_key_required", "browser_session_limit_reached", "browser_capacity_exhausted", "browser_start_timeout", "browser_runtime_unavailable", "session_not_active", "controller_already_connected", "browser_relay_unavailable", "precondition_required", "precondition_failed", "timeout", "run_not_ready", "artifact_expired", "quota_exceeded", "insufficient_credits", "billing_reconciliation_required", "rate_limited", "fetch_failed", "render_failed", "maps_rate_limited", "maps_challenge", "maps_schema_changed", "maps_invalid_response", "maps_transport_failed", "maps_page_budget_exhausted", "google_trends_rate_limited", "google_trends_challenge", "google_trends_explore_failed", "google_trends_widget_missing", "google_trends_related_failed", "google_trends_invalid_response", "google_trends_transport_failed", "google_trends_collection_failed", "google_ads_account_context_missing", "google_ads_batch_failed", "google_ads_browser_context_missing", "google_ads_browser_unavailable", "google_ads_collection_failed", "google_ads_page_failed", "google_ads_protocol_drift", "google_ads_rate_limited", "google_ads_timeout", "twitter_provider_unavailable", "twitter_provider_rejected", "twitter_submission_unknown", "wechat_transport_failed", "wechat_rate_limited", "wechat_invalid_response", "wechat_redirect_rejected", "wechat_verification_required", "wechat_parse_failed", "blackhatworld_search_failed", "blackhatworld_no_results", "reddit_read_failed", "idempotency_conflict", "idempotency_in_progress", "service_unavailable", "internal_error"messagestring requiredtypestring requiredAllowed:
"auth", "validation", "quota", "rate_limit", "not_found", "execution", "conflict", "internal"retryableboolean requiredrequest_idstring | nulldetailsobject
Complete schema
{
"type": "object",
"additionalProperties": false,
"required": [
"code",
"message",
"type",
"retryable"
],
"properties": {
"code": {
"type": "string",
"enum": [
"seoapi_price_pending",
"seoapi_unavailable",
"seoapi_busy",
"seoapi_not_found",
"seoapi_rate_limited",
"seoapi_budget_exceeded",
"seoapi_idempotency_conflict",
"seoapi_insufficient_credits",
"seoapi_admission_failed",
"seoapi_execution_interrupted",
"seoapi_delivery_unknown",
"seoapi_response_invalid",
"seoapi_model_unsupported",
"seoapi_model_options_invalid",
"seoapi_provider_rejected",
"seo_price_pending",
"seo_provider_blocked",
"seo_local_rate_limited",
"seo_fallback_unavailable",
"seo_fallback_budget_exceeded",
"seo_pagination_expired",
"seo_delivery_uncertain",
"seo_auth_required",
"seo_initialization_required",
"seo_permission_denied",
"seo_verification_required",
"seo_rate_limited",
"seo_upstream_unavailable",
"seo_transport_failed",
"seo_invalid_response",
"seo_rpc_error",
"seo_period_unavailable",
"seo_account_unavailable",
"seo_session_busy",
"seo_configuration_required",
"validation_error",
"invalid_request",
"unsupported_feature",
"authentication_required",
"permission_denied",
"not_found",
"run_not_found",
"crawl_not_found",
"artifact_not_found",
"session_not_found",
"profile_not_found",
"profile_in_use",
"profile_not_ready",
"profile_not_cloneable",
"profile_limit_reached",
"profile_proxy_conflict",
"proxy_not_found",
"proxy_unavailable",
"invalid_session_options",
"invalid_query_options",
"invalid_cursor",
"idempotency_key_required",
"browser_session_limit_reached",
"browser_capacity_exhausted",
"browser_start_timeout",
"browser_runtime_unavailable",
"session_not_active",
"controller_already_connected",
"browser_relay_unavailable",
"precondition_required",
"precondition_failed",
"timeout",
"run_not_ready",
"artifact_expired",
"quota_exceeded",
"insufficient_credits",
"billing_reconciliation_required",
"rate_limited",
"fetch_failed",
"render_failed",
"maps_rate_limited",
"maps_challenge",
"maps_schema_changed",
"maps_invalid_response",
"maps_transport_failed",
"maps_page_budget_exhausted",
"google_trends_rate_limited",
"google_trends_challenge",
"google_trends_explore_failed",
"google_trends_widget_missing",
"google_trends_related_failed",
"google_trends_invalid_response",
"google_trends_transport_failed",
"google_trends_collection_failed",
"google_ads_account_context_missing",
"google_ads_batch_failed",
"google_ads_browser_context_missing",
"google_ads_browser_unavailable",
"google_ads_collection_failed",
"google_ads_page_failed",
"google_ads_protocol_drift",
"google_ads_rate_limited",
"google_ads_timeout",
"twitter_provider_unavailable",
"twitter_provider_rejected",
"twitter_submission_unknown",
"wechat_transport_failed",
"wechat_rate_limited",
"wechat_invalid_response",
"wechat_redirect_rejected",
"wechat_verification_required",
"wechat_parse_failed",
"blackhatworld_search_failed",
"blackhatworld_no_results",
"reddit_read_failed",
"idempotency_conflict",
"idempotency_in_progress",
"service_unavailable",
"internal_error"
]
},
"message": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"auth",
"validation",
"quota",
"rate_limit",
"not_found",
"execution",
"conflict",
"internal"
]
},
"retryable": {
"type": "boolean"
},
"request_id": {
"type": [
"string",
"null"
]
},
"details": {
"type": "object",
"additionalProperties": true
}
}
}