{
  "openapi": "3.0.1",
  "info": {
    "title": "YouTube Video 360 Intelligence — Bundle Scraper",
    "description": "The most complete YouTube video snapshot on Apify. Metadata, transcript, related videos, and subtitle languages in one parallel run. Built for AI training, journalism, video SEO, and content intelligence. For comments, pair with our dedicated comments actor.",
    "version": "1.0",
    "x-build-id": "xQpp7FSp8if4TfaSt"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/sian.agency~youtube-video-360-intelligence/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-sian.agency-youtube-video-360-intelligence",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/sian.agency~youtube-video-360-intelligence/runs": {
      "post": {
        "operationId": "runs-sync-sian.agency-youtube-video-360-intelligence",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/sian.agency~youtube-video-360-intelligence/run-sync": {
      "post": {
        "operationId": "run-sync-sian.agency-youtube-video-360-intelligence",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "videoUrl": {
            "title": "🎬 Video (single)",
            "type": "string",
            "description": "One YouTube video to scrape. Accepts ANY of:\n- Video ID (`dQw4w9WgXcQ` — 11 chars, fastest).\n- Full watch URL (`https://www.youtube.com/watch?v=dQw4w9WgXcQ`).\n- Short URL (`https://youtu.be/dQw4w9WgXcQ`).\n- Shorts URL (`https://www.youtube.com/shorts/...`).\n- Embed URL (`https://www.youtube.com/embed/...`).\n- Live URL (`https://www.youtube.com/live/...`).\n\nUse `videoUrls` below for batch scans. One of `videoUrl` or `videoUrls` is required."
          },
          "videoUrls": {
            "title": "🎬 Videos (batch — comma or newline separated)",
            "type": "string",
            "description": "Optional — for batch scans. Comma-separated OR newline-separated list of video URLs or IDs (same formats as `videoUrl`). Each video runs the full bundle independently and tags every row with its source video. Max 50 videos per run. Overrides `videoUrl` when set.\n\nExample (one per line):\n```\ndQw4w9WgXcQ\nhttps://youtu.be/aircAruvnKk\nhttps://www.youtube.com/watch?v=kJQP7kiw5Fk\n```"
          },
          "includeEndpoints": {
            "title": "🎯 Endpoints to fetch",
            "uniqueItems": true,
            "type": "array",
            "description": "Pick which endpoints to scrape per video. **Defaults to all 4** — leave empty to fetch the full bundle. Endpoints that return errors for a given video (e.g. transcript on a silent music video, subtitles on a livestream) are silently skipped — you are NEVER charged for unavailable endpoint pulls. The `info` endpoint is always required (the bundle's anchor row).\n\n- `info` — full video metadata (title, channel, views, likes, description, tags, length, publishedAt, category, etc.)\n- `transcript` — full long-form video transcript with timestamped chunks (one consolidated row per video)\n- `related` — related/recommended videos graph (~20 per page)\n- `subtitles` — native subtitle languages available (and the 100+ auto-translation languages)",
            "items": {
              "type": "string",
              "enum": [
                "info",
                "transcript",
                "related",
                "subtitles"
              ]
            },
            "default": [
              "info",
              "transcript",
              "related",
              "subtitles"
            ]
          },
          "maxRelatedPages": {
            "title": "📄 Max related pages",
            "minimum": 1,
            "maximum": 10,
            "type": "integer",
            "description": "Max pages of related videos to fetch (each page returns ~20 related videos). Set to `1` for a quick snapshot, `2-3` for a deeper related-video graph, `10` for full historical (capped). Only applies when `related` is in `includeEndpoints`.",
            "default": 1
          },
          "transcriptLang": {
            "title": "🗣 Transcript language (optional)",
            "type": "string",
            "description": "Optional. Preferred transcript language code (e.g. `en`, `es`, `pt`, `ja`). If the video has multiple transcript languages, the requested one is selected. Defaults to the video's auto-selected language (usually English-auto if available)."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}