# Moj Video Details & URL Parser – Download Links (`spider_studio/moj-video-details-url-parser`) Actor

Get Moj video details and parse direct MP4, bandwidth, and H.265 URLs from video IDs. Export captions, creators, engagement metrics, and metadata via API.

- **URL**: https://apify.com/spider\_studio/moj-video-details-url-parser.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 $2.00 / 1,000 moj video details

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 Video Details & URL Parser do?

**Moj Video Details & URL Parser** is a **Moj video downloader API alternative, video metadata scraper, and direct URL parser** for public videos on [Moj](https://mojapp.in). Submit video IDs to resolve the primary MP4 URL, bandwidth variants, H.265 links, caption, creator, thumbnail, and engagement data.

The Actor returns download-ready links but does not copy or re-host media files. **No Moj login, cookies, browser automation, or external API key is required.** Requests use HTTP/1.1 and a sticky **Apify Residential Proxy** session.

### Why use this Moj video detail and URL parser?

- Enrich Moj IDs collected by search, user-post, comment, or tag workflows.
- Resolve the current primary MP4 URL plus alternate encodes returned by Moj.
- Keep a public `video_page_url` beside temporary CDN URLs.
- Collect captions, creator identity, thumbnails, and engagement metadata in a batch.
- Schedule refresh runs because CDN media URLs can expire or change.
- Call the Actor through the Apify API and export results to cloud integrations.

### What Moj video data can be extracted?

| Field | Type | Description |
| --- | --- | --- |
| `video_id` | string | Precision-safe Moj video ID |
| `caption` | string | Public caption |
| `author_id` / `author_name` | string | Public creator identity |
| `video_page_url` | string | Stable public Moj page |
| `video_url` | string | Primary parsed direct media URL |
| `video_urls` | array | Unique standard, bandwidth, and H.265 media URLs |
| `thumbnail_url` | string | Public thumbnail URL |
| `like_count`, `comment_count`, `view_count` | integer | Engagement values when available |
| `data` | object | Original Moj detail object |

### Related Moj scraper Actors

| If you need | Use this Actor |
| --- | --- |
| Find Moj video IDs by keyword | [Moj Search Scraper](https://apify.com/spider_studio/moj-search-scraper) |
| Export comments from Moj videos | [Moj Comments Scraper](https://apify.com/spider_studio/moj-video-comments-scraper) |
| Collect videos published by user IDs | [Moj User Posts Scraper](https://apify.com/spider_studio/moj-user-posts-scraper) |
| Collect videos from a hashtag feed | [Moj Hashtag Scraper](https://apify.com/spider_studio/moj-hashtag-feed-scraper) |

### How to get Moj video details and download links

1. Collect Moj video IDs from a Moj page or the search, user-post, or tag Actors.
2. Add the IDs to `video_ids` as strings.
3. Click **Start**.
4. Open Output to inspect the primary URL and all parsed URL variants.
5. Export JSON when you need the full original Moj object.

### Moj Video Downloader API input

The only input is a list of 1–1,000 decimal video IDs. IDs must be strings so large identifiers are never rounded by JavaScript clients.

```json
{
  "video_ids": ["2722595169"]
}
```

See the Input tab for validation details. Video ID `2722595169` was live-verified on September 20, 2026; public videos can later be removed or made unavailable.

### Moj video details and URL parser output

Every unique input ID produces one success or failure row. Media URL parsing reads Moj's primary `v`/compressed fields and its returned bandwidth and H.265 collections, removes duplicate URLs, and keeps first-seen order.

```json
{
  "success": true,
  "video_id": "1234567890",
  "caption": "Example Moj video caption",
  "video_page_url": "https://mojapp.in/video/1234567890",
  "video_url": "https://cdn.example.com/example-video.mp4",
  "video_urls": ["https://cdn.example.com/example-video.mp4"],
  "error": null
}
```

You can download the dataset in various formats such as JSON, HTML, CSV, or Excel. Direct video URLs are links to Moj's CDN; this Actor resolves URLs but does not download or re-host video files.

### Moj video API for AI agents and automations

Call Actor ID `spider_studio/moj-video-details-url-parser` through the Apify API, JavaScript or Python client, schedules, webhooks, or integrations. Each input ID produces one predictable row, making the output suitable for media catalogs, ETL pipelines, and AI agents that need a Moj page URL plus current media candidates.

Minimal request:

```json
{"video_ids":["2722595169"]}
```

An agent should use `video_page_url` as the durable reference, `video_url` as the primary media candidate, and `video_urls` when it can choose among codecs or bitrates.

### Live verification and reliability

Last live-verified on September 20, 2026: a public Moj video detail request completed through Apify Residential Proxy and produced one normalized record with three unique media URL candidates. Moj controls which encodes exist for each video, so another ID may return fewer or more URLs. The Actor never invents a missing codec, metric, or link.

### How much does Moj video URL parsing 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.003 | $3.00 |
| Bronze, Silver, Gold, Platinum, Diamond | $0.002 | $2.00 |

The automatic Actor-start event costs $0.00005 per run. There is no video-request fee. Only video IDs successfully saved with metadata and media URLs trigger the `video-detail` event; failed IDs, failure rows, and retries are free. Post-run Dataset reads and long-term storage remain subject to Apify's standard platform pricing.

### Tips and advanced options

- Resolve URLs close to playback or download time because CDN links may expire.
- Use `video_page_url` as the durable reference; do not treat a CDN URL as permanent.
- Missing counters remain null rather than being guessed as zero.
- A failed ID does not discard successful rows from the same batch.
- The Actor always routes Moj traffic through Apify Residential Proxy and pins HTTP/1.1 to match Moj's edge behavior.

### Moj Video Downloader and URL Parser FAQ

#### How do I get a Moj video download link?

Provide the decimal Moj video ID. The Actor returns the current primary CDN URL in `video_url` and every unique standard, bandwidth, and H.265 candidate in `video_urls`.

#### Does this Actor download videos?

No. It extracts video details and parses URLs. You are responsible for how those URLs are used and for respecting copyright and platform terms.

#### Why are several video URLs returned?

Moj can expose compressed, bitrate-specific, and H.265 encodes. `video_url` is the first primary candidate; `video_urls` preserves all unique candidates.

#### Can I resolve many Moj videos in one API call?

Yes. Add up to 1,000 video IDs to `video_ids`. Exact duplicates are removed, and an unavailable ID does not discard successful rows from the same batch.

#### Is this an official Moj video downloader?

No. It is an independent public-data scraper and URL resolver, not an official Moj or ShareChat product. It returns links and metadata; it does not host or redistribute video files.

Our Actors are ethical and do not extract private user data such as email addresses, gender, or location. They only extract what users have shared publicly. Results can contain personal data protected by GDPR and other regulations. Use the data only with a legitimate basis and consult legal counsel when unsure.

Use the Actor's API tab for programmatic access and its Issues tab for support. Include the affected video ID and a sanitized run link.

# Actor input Schema

## `video_ids` (type: `array`):

Moj video IDs whose details and direct media URLs should be resolved.

## Actor input object example

```json
{
  "video_ids": [
    "2722595169"
  ]
}
```

# Actor output Schema

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

Resolved detail and direct video URL records.

# 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 = {
    "video_ids": [
        "2722595169"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("spider_studio/moj-video-details-url-parser").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 = { "video_ids": ["2722595169"] }

# Run the Actor and wait for it to finish
run = client.actor("spider_studio/moj-video-details-url-parser").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 '{
  "video_ids": [
    "2722595169"
  ]
}' |
apify call spider_studio/moj-video-details-url-parser --silent --output-dataset

```

## MCP server setup

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

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/4FNT0uqzsTujRQs4s/builds/G6UhKzhMr8iVniBwe/openapi.json
