# Tech YouTuber community posts

**Use case:** 

For creator and product marketing teams: the latest community posts of Linus Tech Tips, Marques Brownlee, Mrwhosetheboss and Unbox Therapy with the text, full links, images, polls, likes and comments, one row per post. Export as JSON, CSV or Excel.

## Input

```json
{
  "channels": [
    "@LinusTechTips",
    "@mkbhd",
    "@Mrwhosetheboss",
    "@unboxtherapy"
  ],
  "maxPostsPerChannel": 15,
  "maxPostAgeDays": 0,
  "keywordMatch": "any",
  "monitoringMode": false,
  "trackPollVotes": false,
  "resetMonitoringState": false,
  "useProxy": true
}
```

## Output

```json
{
  "channelTitle": {
    "label": "Channel Title",
    "format": "string"
  },
  "postType": {
    "label": "Post Type",
    "format": "string"
  },
  "text": {
    "label": "Text",
    "format": "string"
  },
  "publishedTimeText": {
    "label": "Published Time Text",
    "format": "string"
  },
  "likeCount": {
    "label": "Like Count",
    "format": "string"
  },
  "commentCount": {
    "label": "Comment Count",
    "format": "string"
  },
  "voteCount": {
    "label": "Vote Count",
    "format": "string"
  },
  "pollChoices": {
    "label": "Poll Choices",
    "format": "string"
  },
  "images": {
    "label": "Images",
    "format": "string"
  },
  "links": {
    "label": "Links",
    "format": "string"
  },
  "videoTitle": {
    "label": "Video Title",
    "format": "string"
  },
  "postUrl": {
    "label": "Post Url",
    "format": "string"
  },
  "returnedBecause": {
    "label": "Returned Because",
    "format": "string"
  },
  "voteCountDelta": {
    "label": "Vote Count Delta",
    "format": "string"
  },
  "status": {
    "label": "Status",
    "format": "string"
  },
  "note": {
    "label": "Note",
    "format": "string"
  },
  "source": {
    "label": "Source",
    "format": "string"
  },
  "searchUrl": {
    "label": "Search Url",
    "format": "string"
  },
  "channelsChecked": {
    "label": "Channels Checked",
    "format": "string"
  },
  "scrapedAt": {
    "label": "Scraped At",
    "format": "string"
  },
  "postId": {
    "label": "Post Id",
    "format": "string"
  },
  "publishedAgoValue": {
    "label": "Published Ago Value",
    "format": "string"
  },
  "publishedAgoUnit": {
    "label": "Published Ago Unit",
    "format": "string"
  },
  "publishedMinAgeDays": {
    "label": "Published Min Age Days",
    "format": "string"
  },
  "isEdited": {
    "label": "Is Edited",
    "format": "string"
  },
  "likeCountText": {
    "label": "Like Count Text",
    "format": "string"
  },
  "likeCountIsRounded": {
    "label": "Like Count Is Rounded",
    "format": "string"
  },
  "commentCountText": {
    "label": "Comment Count Text",
    "format": "string"
  },
  "commentCountIsRounded": {
    "label": "Comment Count Is Rounded",
    "format": "string"
  },
  "imageCount": {
    "label": "Image Count",
    "format": "string"
  },
  "pollType": {
    "label": "Poll Type",
    "format": "string"
  },
  "quizChoices": {
    "label": "Quiz Choices",
    "format": "string"
  },
  "voteCountText": {
    "label": "Vote Count Text",
    "format": "string"
  },
  "voteCountIsRounded": {
    "label": "Vote Count Is Rounded",
    "format": "string"
  },
  "videoId": {
    "label": "Video Id",
    "format": "string"
  },
  "videoUrl": {
    "label": "Video Url",
    "format": "string"
  },
  "videoLengthText": {
    "label": "Video Length Text",
    "format": "string"
  },
  "videoViewCount": {
    "label": "Video View Count",
    "format": "string"
  },
  "videoViewCountText": {
    "label": "Video View Count Text",
    "format": "string"
  },
  "videoPublishedTimeText": {
    "label": "Video Published Time Text",
    "format": "string"
  },
  "videoChannelId": {
    "label": "Video Channel Id",
    "format": "string"
  },
  "videoChannelTitle": {
    "label": "Video Channel Title",
    "format": "string"
  },
  "videoIsMembersOnly": {
    "label": "Video Is Members Only",
    "format": "string"
  },
  "playlistId": {
    "label": "Playlist Id",
    "format": "string"
  },
  "playlistTitle": {
    "label": "Playlist Title",
    "format": "string"
  },
  "playlistVideoCount": {
    "label": "Playlist Video Count",
    "format": "string"
  },
  "channelId": {
    "label": "Channel Id",
    "format": "string"
  },
  "handle": {
    "label": "Handle",
    "format": "string"
  },
  "channelUrl": {
    "label": "Channel Url",
    "format": "string"
  },
  "input": {
    "label": "Input",
    "format": "string"
  },
  "inputType": {
    "label": "Input Type",
    "format": "string"
  },
  "resolvedFromVideoId": {
    "label": "Resolved From Video Id",
    "format": "string"
  },
  "channelMatchesInput": {
    "label": "Channel Matches Input",
    "format": "string"
  },
  "previousVoteCount": {
    "label": "Previous Vote Count",
    "format": "string"
  },
  "voteCountDeltaIsApproximate": {
    "label": "Vote Count Delta Is Approximate",
    "format": "string"
  },
  "previousCheckedAt": {
    "label": "Previous Checked At",
    "format": "string"
  },
  "postsRead": {
    "label": "Posts Read",
    "format": "string"
  }
}
```

## About this Actor

This example demonstrates how to use [YouTube Community Posts Scraper & New Post Monitor](https://apify.com/neverempty/youtube-community-posts-scraper.md) with a specific input configuration. Visit the [Actor detail page](https://apify.com/neverempty/youtube-community-posts-scraper.md) to learn more, explore other use cases, and run it yourself.


## How to integrate an Actor?

This Task's input is already configured above. Use it as-is rather than inventing a new one.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For full API examples (JavaScript, Python, CLI, MCP, OpenAPI), see this Task's Actor page: https://apify.com/neverempty/youtube-community-posts-scraper.md

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).
