> ## Documentation Index
> Fetch the complete documentation index at: https://deepline.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# ScrapeCreators: Youtube Search

> Search YouTube by keyword for videos, channels, playlists and shorts, with views, publish date and duration. Includes SDK V2 examples, schemas, and cost.

Search YouTube by keyword for videos, channels, playlists and shorts, with views, publish date and duration.

> [!NOTE]
>
> Tool ID: `scrapecreators_youtube_search`

## Run this action

Use the TypeScript SDK for one call. Use `ctx.tools.execute(...)` inside a Play for durable calls, scheduled calls, or CSV processing.

```ts theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'scrapecreators_youtube_search',
  {
    "query": "software companies hiring engineers"
  },
);

console.log(result.toolResponse.raw);
```

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline tools execute scrapecreators_youtube_search --input '{
  "query": "software companies hiring engineers"
}' --json
```

## Example response

The static output schema lacks the details for a reliable example. Use `deepline describe scrapecreators_youtube_search --json` for the complete live contract.

## Input reference

Searches YouTube by keyword query and returns matching videos, channels, playlists, shorts, shelves, and live streams. Each video result includes title, URL, thumbnail, view count (views), publish date, duration, channel info, and badges. Supports filtering by upload date, sorting by relevance or popularity, and paginating with continuationToken. Set is\_paid\_promotions=true to search YouTube videos with the paid product placement / sponsorship disclosure.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.query` | `string` | Yes | — | Search query |
| `payload.uploadDate` | `"today" \| "this_week" \| "this_month" \| "this_year"` | No | — | Upload date Allowed: `today`, `this_week`, `this_month`, `this_year`. |
| `payload.sortBy` | `"relevance" \| "popular"` | No | — | Sort by Allowed: `relevance`, `popular`. |
| `payload.type` | `"videos" \| "shorts" \| "channels" \| "playlists"` | No | — | Type of content to search for Allowed: `videos`, `shorts`, `channels`, `playlists`. |
| `payload.duration` | `"under_3_min" \| "between_3_and_20_min" \| "over_20_min"` | No | — | Duration of the video. Only applies to videos (not shorts). Allowed: `under_3_min`, `between_3_and_20_min`, `over_20_min`. |
| `payload.region` | `string` | No | — | 2 letter country code of the country to put the proxy in. |
| `payload.continuationToken` | `string` | No | — | Continuation token to get more videos. Get 'continuationToken' from previous response. |
| `payload.includeExtras` | `string` | No | — | This will get you the like + comment count and the description. To get the full details of the video, use the /v1/youtube/video endpoint. *This will slow down the response slightly.* |
| `payload.cursor` | `string` | No | — | Deprecated alias for ScrapeCreators continuationToken. Prefer continuationToken. |

<details>
  <summary>Show raw input schema</summary>

  ### Input JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Searches YouTube by keyword query and returns matching videos, channels, playlists, shorts, shelves, and live streams. Each video result includes title, URL, thumbnail, view count (views), publish date, duration, channel info, and badges. Supports filtering by upload date, sorting by relevance or popularity, and paginating with continuationToken. Set is_paid_promotions=true to search YouTube videos with the paid product placement / sponsorship disclosure.",
    "properties": {
      "query": {
        "type": "string",
        "description": "Search query"
      },
      "uploadDate": {
        "type": "string",
        "description": "Upload date",
        "enum": [
          "today",
          "this_week",
          "this_month",
          "this_year"
        ]
      },
      "sortBy": {
        "type": "string",
        "description": "Sort by",
        "enum": [
          "relevance",
          "popular"
        ]
      },
      "type": {
        "type": "string",
        "description": "Type of content to search for",
        "enum": [
          "videos",
          "shorts",
          "channels",
          "playlists"
        ]
      },
      "duration": {
        "type": "string",
        "description": "Duration of the video. Only applies to videos (not shorts).",
        "enum": [
          "under_3_min",
          "between_3_and_20_min",
          "over_20_min"
        ]
      },
      "region": {
        "type": "string",
        "description": "2 letter country code of the country to put the proxy in."
      },
      "continuationToken": {
        "type": "string",
        "description": "Continuation token to get more videos. Get 'continuationToken' from previous response."
      },
      "includeExtras": {
        "type": "string",
        "description": "This will get you the like + comment count and the description. To get the full details of the video, use the /v1/youtube/video endpoint. *This will slow down the response slightly.*"
      },
      "cursor": {
        "type": "string",
        "description": "Deprecated alias for ScrapeCreators continuationToken. Prefer continuationToken."
      }
    },
    "required": [
      "query"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `unknown` | Yes | — | Provider response payload. |
| `result.meta` | `object` | No | — | Additional response metadata (status, paging). |

<details>
  <summary>Show raw output schema</summary>

  ### Output JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Standard tool result payload.",
    "properties": {
      "data": {
        "description": "Provider response payload."
      },
      "meta": {
        "type": "object",
        "description": "Additional response metadata (status, paging).",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Deepline cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0.02` per pricing unit.

## Related documentation

* [ScrapeCreators provider guide](https://deepline.com/docs/providers/scrapecreators/guide.md)
* [SDK V2 quickstart](https://deepline.com/docs/sdk-v2/quickstart.md)
* [SDK reference](https://deepline.com/docs/sdk-v2/sdk-reference.md)
* [Run tools across a CSV](https://deepline.com/docs/sdk-v2/batch-csv.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.