# Moj Hashtag Scraper – Tag Video Feed API (`spider_studio/moj-hashtag-feed-scraper`) Actor

Scrape Moj hashtag and tag video feeds by tag ID. Follow opaque pagination automatically and export captions, creators, media URLs, and engagement data.

- **URL**: https://apify.com/spider\_studio/moj-hashtag-feed-scraper.md
- **Developed by:** [Tarique](https://apify.com/spider_studio) (community)
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.50 / 1,000 moj hashtag videos

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

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 examples already wired to this Actor's own input schema, see the [API](#api) section below.

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`).

# README

### What does Moj Hashtag Scraper do?

**Moj Hashtag Scraper** is a **Moj hashtag API and tag video feed scraper** for collecting public recommended/popular videos from [Moj](https://mojapp.in). Provide a `tagId` to export captions, video URLs, thumbnails, creators, likes, comments, views, and original post data to JSON, CSV, or Excel.

The Actor follows Moj's long opaque cursor automatically, removes duplicate video IDs, and stops safely at the requested page limit. **No Moj login, cookies, browser automation, or external API key is required.** Requests use one sticky **Apify Residential Proxy** session over HTTP/1.1.

### Why scrape a Moj tag feed?

- Monitor public videos recommended for a hashtag or topic.
- Compare captions, creators, thumbnails, and engagement signals.
- Discover video IDs for detail, URL-parsing, or comment workflows.
- Schedule recurring runs and connect the output to Apify integrations.
- Keep normalized spreadsheet columns plus Moj's complete raw post object.

### What tag recommendation data can be extracted?

| Field | Type | Description |
| --- | --- | --- |
| `tag_id` | string | Requested Moj tag ID |
| `page` | integer | One-based feed page number |
| `video_id` | string | Recommended Moj video ID |
| `caption` | string | Public caption |
| `video_page_url` | string | Public Moj page |
| `video_url` | string | Direct video URL returned by Moj |
| `thumbnail_url` | string | Public thumbnail |
| `author_id` / `author_name` | string | Public creator identity |
| interaction counts | integer | Likes, comments, and views when available |
| `data` | object | Original Moj post object |

### Related Moj scraper Actors

| If you need | Use this Actor |
| --- | --- |
| Search hashtag names and discover tag IDs | [Moj Search Scraper](https://apify.com/spider_studio/moj-search-scraper) |
| Resolve complete video metadata and media URLs | [Moj Video Details & URL Parser](https://apify.com/spider_studio/moj-video-details-url-parser) |
| Export comments from hashtag videos | [Moj Comments Scraper](https://apify.com/spider_studio/moj-video-comments-scraper) |
| Collect videos published by specific users | [Moj User Posts Scraper](https://apify.com/spider_studio/moj-user-posts-scraper) |

### How to scrape Moj hashtag and tag videos

1. Obtain a public Moj tag ID, for example from the Search Actor's `tag` or `all` mode.
2. Paste it into `tagId`.
3. Choose the maximum number of feed pages.
4. Start the Actor and open Output.
5. Download or integrate the resulting dataset.

### Moj Hashtag Scraper API input

```json
{
  "tagId": "9248170",
  "max_pages": 5
}
```

`tagId` must be a decimal string. See the Input tab for validation details. Moj controls page size; `max_pages` limits requests rather than promising a fixed number of videos. Tag ID `9248170` returned public videos when live-verified on September 20, 2026; feed availability can change.

### Moj hashtag feed output: JSON, CSV, and Excel

Each unique recommendation is stored as a row. Pagination stops on an empty page, a missing cursor, a repeated cursor, or the requested limit.

```json
{
  "success": true,
  "tag_id": "1234567",
  "page": 1,
  "video_id": "1234567890",
  "caption": "Example tagged video caption",
  "video_page_url": "https://mojapp.in/video/1234567890",
  "video_url": "https://cdn.example.com/example-video.mp4",
  "author_name": "Example Creator",
  "error": null
}
```

You can download the dataset in various formats such as JSON, HTML, CSV, or Excel. JSON is best when you need all nested fields from `data`.

### Moj hashtag API for AI agents and automations

Call Actor ID `spider_studio/moj-hashtag-feed-scraper` through the Apify API, JavaScript or Python client, schedules, webhooks, and integrations. The flat output works for trend monitoring, UGC discovery, creator research, content analysis, and LLM pipelines; the nested `data` object remains available when an application needs Moj-specific fields.

Minimal request:

```json
{"tagId":"9248170","max_pages":1}
```

An agent with only a hashtag name should first call Moj Search Scraper in `tag` mode, read the returned tag ID, and then pass it to this Actor.

### Live verification and reliability

Last live-verified on September 20, 2026: the Actor passed Moj's opaque cursor verbatim across two pages and returned 29 unique public videos for the tested tag. Feed size and ranking change over time, so this is evidence that pagination worked rather than a guaranteed result count.

### How much does a Moj tag feed run cost?

This Actor uses pay-per-event pricing with platform usage included:

| Apify user tier | Price per successful video | Price per 1,000 videos |
| --- | ---: | ---: |
| Free | $0.0025 | $2.50 |
| Bronze, Silver, Gold, Platinum, Diamond | $0.0015 | $1.50 |

The automatic Actor-start event costs $0.00005 per run. There is no tag-request or page-request fee. Only unique hashtag-feed videos successfully saved to the default Dataset trigger the `video-result` event; empty feeds, failure rows, retries, and duplicates are free. Post-run Dataset reads and long-term storage remain subject to Apify's standard platform pricing.

### Tips and limitations

- Recommendation order and availability are controlled by Moj and change over time.
- The cursor is opaque and must be returned verbatim; the Actor handles this automatically.
- Deleted or unavailable tags produce a sanitized failure row.
- Direct video URLs can expire. Resolve current alternate encodes with Moj Video Details & URL Parser.

### Moj Hashtag Scraper FAQ, disclaimer, and support

#### What is the difference between Moj tag search and a tag feed?

Tag search converts a keyword or hashtag name into matching tag records and IDs. This Actor accepts one of those IDs and collects the recommended videos in its paginated feed.

#### How do I find a Moj tag ID?

Run [Moj Search Scraper](https://apify.com/spider_studio/moj-search-scraper) with `search_type` set to `tag` or `all`, then copy the result's `item_id` into `tagId`.

#### Does this search tag names?

No. This Actor consumes a tag ID. Use Moj Search Scraper in `tag` or `all` mode to discover IDs.

#### Can I export Moj hashtag videos to Excel or CSV?

Yes. Open the default dataset after a run and choose Excel, CSV, JSON, XML, or another available format.

#### Is this an official Moj hashtag API?

No. It is an independent public-data scraper and is not affiliated with or endorsed by Moj or ShareChat.

Our Actors are ethical and do not extract private user data such as email addresses, gender, or location. They only extract what users have chosen to share publicly. Results can contain personal data protected by GDPR and other regulations. Do not scrape personal data without a legitimate reason; consult your lawyers if unsure.

Use the API tab for programmatic access and the Issues tab for support. Include the tag ID, page limit, and sanitized run link.

# Actor input Schema

## `tagId` (type: `string`):

Moj hashtag or tag ID whose recommended video feed should be collected.

## `max_pages` (type: `integer`):

Maximum recommendation-feed pages to fetch.

## Actor input object example

```json
{
  "tagId": "9248170",
  "max_pages": 1
}
```

# Actor output Schema

## `dataset` (type: `string`):

Recommended videos collected from the requested tag feed.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "tagId": "9248170"
};

// Run the Actor and wait for it to finish
const run = await client.actor("spider_studio/moj-hashtag-feed-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "tagId": "9248170" }

# Run the Actor and wait for it to finish
run = client.actor("spider_studio/moj-hashtag-feed-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "tagId": "9248170"
}' |
apify call spider_studio/moj-hashtag-feed-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,spider_studio/moj-hashtag-feed-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/OWXzYx44s3ltATlv5/builds/khkl1ihcdPcwRei1E/openapi.json
