REST API v1.0 • High Performance

RedGifs Video Downloader REST API

Integrate reliable, ultra-fast RedGifs video extraction directly into your applications, bots, scripts, or content pipelines with simple HTTP requests.

Sub-second Speed
Direct high-speed parsing
HD MP4 Quality
Highest available resolution
99.9% Uptime
Redundant proxy network
Batch Processing
Up to 100 links per call

1. Authentication

Secure all your API requests using your unique developer API Key.

All requests to the media extraction endpoints require authentication. You can pass your API key as either a query parameter or inside a form-encoded POST body.

Parameter Type Location Description
key string Query or Body Your 40-character API key generated in the Developer Dashboard.
# Authentication Query Example
GET https://redgifsdownloader.net/api/download-posts?key=YOUR_API_KEY&urls=https://www.redgifs.com/watch/example

2. Rate Limits & Tiers

Fair usage policies and request allocation per account level.

Free Tier
Default

240 req / day

Ideal for personal scripts, tests, small discord bots and open-source integrations.

PRO & Enterprise
Unlimited

Unlimited requests

Designed for commercial scrapers, web apps, and automated bulk video processors.

GET

/api/status

Check the operational status of the API service and your client connectivity.

This endpoint does not consume API credits and can be used for automated liveness probes.

GET https://redgifsdownloader.net/api/status
Sample JSON Response:
{
  "request": {
    "status": "online",
    "message": "This is the API provided by RedGifs Downloader.",
    "url": "https://redgifsdownloader.net",
    "your_ip": "127.0.0.1"
  }
}
POST GET

/api/download-posts

Parse RedGifs URLs and extract direct MP4 video URLs, thumbnails, and metadata.

Request Parameters:
Field Type Required Description
key string Yes Your API key.
urls string Yes Single URL or multiple URLs separated by semicolon (;) or line breaks (\r\n). Max 100 URLs per call.
Response Schema:
{
  "authentication": {
    "status": "success",
    "message": "API key successfully authenticated.",
    "key": {
      "status": "enabled",
      "permission": "user",
      "message": "The api key is enabled and usable."
    }
  },
  "posts": [
    {
      "status": "success",
      "link": "https://media.redgifs.com/sample-hd.mp4",
      "thumbnail": "https://thumbs2.redgifs.com/sample-poster.jpg",
      "caption": "Hot and stunning video clip",
      "keywords": "redgifs, hd, model, viral",
      "author": {
        "name": "SuperCreator",
        "link": "https://www.redgifs.com/users/supercreator"
      },
      "publication_date": "2024-05-10T14:32:00Z",
      "content": "Video description details..."
    }
  ]
}

5. Multi-Language Code Examples

Copy-paste ready snippets in cURL, Python, Node.js (JavaScript), and PHP.

curl -X POST "https://redgifsdownloader.net/api/download-posts" \
  -d "key=YOUR_API_KEY" \
  -d "urls=https://www.redgifs.com/watch/hotcutegirl"
import requests

API_URL = "https://redgifsdownloader.net/api/download-posts"
API_KEY = "YOUR_API_KEY"
TARGET_URL = "https://www.redgifs.com/watch/hotcutegirl"

payload = {
    "key": API_KEY,
    "urls": TARGET_URL
}

response = requests.post(API_URL, data=payload)
data = response.json()

if data.get("posts"):
    for post in data["posts"]:
        if post.get("status") == "success":
            print(f"🎬 Video Direct Link: {post['link']}")
            print(f"🖼️ Thumbnail: {post['thumbnail']}")
            print(f"👤 Creator: {post['author']['name']}")
        else:
            print(f"❌ Error: {post.get('message')}")
const axios = require('axios');

async function fetchRedGifsVideo() {
    const apiUrl = 'https://redgifsdownloader.net/api/download-posts';
    const params = new URLSearchParams();
    params.append('key', 'YOUR_API_KEY');
    params.append('urls', 'https://www.redgifs.com/watch/hotcutegirl');

    try {
        const res = await axios.post(apiUrl, params);
        console.log('API Response:', res.data);
    } catch (err) {
        console.error('Error fetching video:', err.message);
    }
}

fetchRedGifsVideo();
<?php

$apiKey = 'YOUR_API_KEY';
$url = 'https://www.redgifs.com/watch/hotcutegirl';

$ch = curl_init('https://redgifsdownloader.net/api/download-posts');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query([
    'key' => $apiKey,
    'urls' => $url
]));

$response = curl_exec($ch);
curl_close($ch);

$result = json_decode($response, true);
print_r($result);

6. Frequently Asked Questions

Common questions regarding API keys, limits, and integration.

No, every registered account gets 240 requests/day for free. If you need higher volumes or unlimited calls, you can upgrade to PRO.

The returned MP4 video streams are direct CDN URLs provided by the source servers. We recommend streaming or caching the file on your end if you require permanent storage.

Yes, you can batch up to 100 RedGifs URLs by separating them with a semicolon (;) or line break in the urls parameter.