Publish video to social media platforms
curl --request POST \
--url https://mango.quickreel.io/api/v2/publish-to-socials \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"videoUrl": "<string>",
"apiAccessKeys": [
"1dbedb8df8b098ea68138ffbc0f8ab4640f6bcd0"
],
"title": "<string>",
"description": "<string>",
"privacy": "public",
"scheduleTime": "2025-08-04T16:20:00.000Z"
}
'import requests
url = "https://mango.quickreel.io/api/v2/publish-to-socials"
payload = {
"videoUrl": "<string>",
"apiAccessKeys": ["1dbedb8df8b098ea68138ffbc0f8ab4640f6bcd0"],
"title": "<string>",
"description": "<string>",
"privacy": "public",
"scheduleTime": "2025-08-04T16:20:00.000Z"
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
videoUrl: '<string>',
apiAccessKeys: ['1dbedb8df8b098ea68138ffbc0f8ab4640f6bcd0'],
title: '<string>',
description: '<string>',
privacy: 'public',
scheduleTime: '2025-08-04T16:20:00.000Z'
})
};
fetch('https://mango.quickreel.io/api/v2/publish-to-socials', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://mango.quickreel.io/api/v2/publish-to-socials",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'videoUrl' => '<string>',
'apiAccessKeys' => [
'1dbedb8df8b098ea68138ffbc0f8ab4640f6bcd0'
],
'title' => '<string>',
'description' => '<string>',
'privacy' => 'public',
'scheduleTime' => '2025-08-04T16:20:00.000Z'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://mango.quickreel.io/api/v2/publish-to-socials"
payload := strings.NewReader("{\n \"videoUrl\": \"<string>\",\n \"apiAccessKeys\": [\n \"1dbedb8df8b098ea68138ffbc0f8ab4640f6bcd0\"\n ],\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"privacy\": \"public\",\n \"scheduleTime\": \"2025-08-04T16:20:00.000Z\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://mango.quickreel.io/api/v2/publish-to-socials")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"videoUrl\": \"<string>\",\n \"apiAccessKeys\": [\n \"1dbedb8df8b098ea68138ffbc0f8ab4640f6bcd0\"\n ],\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"privacy\": \"public\",\n \"scheduleTime\": \"2025-08-04T16:20:00.000Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://mango.quickreel.io/api/v2/publish-to-socials")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"videoUrl\": \"<string>\",\n \"apiAccessKeys\": [\n \"1dbedb8df8b098ea68138ffbc0f8ab4640f6bcd0\"\n ],\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"privacy\": \"public\",\n \"scheduleTime\": \"2025-08-04T16:20:00.000Z\"\n}"
response = http.request(request)
puts response.read_body{
"statusCode": 200,
"success": true,
"message": "Successfully created your post",
"data": {
"posts": [
"6891b921ba2c9dea1ee86fe4"
]
}
}{
"error": {
"message": "Bad Request: Missing required fields"
}
}{
"error": {
"message": "Unauthorized: API key invalid"
}
}{
"error": {
"message": "Too Many Requests: Please slow down your request rate."
}
}{
"error": {
"message": "Internal Server Error: Please try again later or contact support"
}
}Social Media Posting
Request
Base URL: https://mango.quickreel.io/api/v2
POST
/
publish-to-socials
Publish video to social media platforms
curl --request POST \
--url https://mango.quickreel.io/api/v2/publish-to-socials \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '
{
"videoUrl": "<string>",
"apiAccessKeys": [
"1dbedb8df8b098ea68138ffbc0f8ab4640f6bcd0"
],
"title": "<string>",
"description": "<string>",
"privacy": "public",
"scheduleTime": "2025-08-04T16:20:00.000Z"
}
'import requests
url = "https://mango.quickreel.io/api/v2/publish-to-socials"
payload = {
"videoUrl": "<string>",
"apiAccessKeys": ["1dbedb8df8b098ea68138ffbc0f8ab4640f6bcd0"],
"title": "<string>",
"description": "<string>",
"privacy": "public",
"scheduleTime": "2025-08-04T16:20:00.000Z"
}
headers = {
"x-api-key": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'x-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
videoUrl: '<string>',
apiAccessKeys: ['1dbedb8df8b098ea68138ffbc0f8ab4640f6bcd0'],
title: '<string>',
description: '<string>',
privacy: 'public',
scheduleTime: '2025-08-04T16:20:00.000Z'
})
};
fetch('https://mango.quickreel.io/api/v2/publish-to-socials', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://mango.quickreel.io/api/v2/publish-to-socials",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'videoUrl' => '<string>',
'apiAccessKeys' => [
'1dbedb8df8b098ea68138ffbc0f8ab4640f6bcd0'
],
'title' => '<string>',
'description' => '<string>',
'privacy' => 'public',
'scheduleTime' => '2025-08-04T16:20:00.000Z'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"x-api-key: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://mango.quickreel.io/api/v2/publish-to-socials"
payload := strings.NewReader("{\n \"videoUrl\": \"<string>\",\n \"apiAccessKeys\": [\n \"1dbedb8df8b098ea68138ffbc0f8ab4640f6bcd0\"\n ],\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"privacy\": \"public\",\n \"scheduleTime\": \"2025-08-04T16:20:00.000Z\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-api-key", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://mango.quickreel.io/api/v2/publish-to-socials")
.header("x-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"videoUrl\": \"<string>\",\n \"apiAccessKeys\": [\n \"1dbedb8df8b098ea68138ffbc0f8ab4640f6bcd0\"\n ],\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"privacy\": \"public\",\n \"scheduleTime\": \"2025-08-04T16:20:00.000Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://mango.quickreel.io/api/v2/publish-to-socials")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"videoUrl\": \"<string>\",\n \"apiAccessKeys\": [\n \"1dbedb8df8b098ea68138ffbc0f8ab4640f6bcd0\"\n ],\n \"title\": \"<string>\",\n \"description\": \"<string>\",\n \"privacy\": \"public\",\n \"scheduleTime\": \"2025-08-04T16:20:00.000Z\"\n}"
response = http.request(request)
puts response.read_body{
"statusCode": 200,
"success": true,
"message": "Successfully created your post",
"data": {
"posts": [
"6891b921ba2c9dea1ee86fe4"
]
}
}{
"error": {
"message": "Bad Request: Missing required fields"
}
}{
"error": {
"message": "Unauthorized: API key invalid"
}
}{
"error": {
"message": "Too Many Requests: Please slow down your request rate."
}
}{
"error": {
"message": "Internal Server Error: Please try again later or contact support"
}
}Authorizations
API key for authentication
Body
application/json
Request payload for social media posting
URL of the video to be posted
Array of API access keys (you can get them from the social accounts page on QuickReel.io)
Example:
["1dbedb8df8b098ea68138ffbc0f8ab4640f6bcd0"]
Title of the post
Description/caption for the post
Privacy setting for the post
Available options:
public, private, unlisted Scheduled time for posting (ISO 8601 format)
Example:
"2025-08-04T16:20:00.000Z"
⌘I
