Developer documentation
API docs for multi-platform publishing and analytics workflows.
Start with authentication, connected account discovery, media requirements, photo carousel payloads, status tracking, TikTok QR login, and analytics endpoints. Each guide is structured for server-side integrations and content team workflows.
Server-side quick start
Keep API keys in your backend or serverless environment. Do not expose keys in browser code.
const API_BASE_URL = 'https://api.wahdx.com';
const API_KEY = process.env.WAHDX_API_KEY;
await fetch(API_BASE_URL + '/api/content/post', {
method: 'POST',
headers: {
'X-API-Key': API_KEY,
'Content-Type': 'application/json'
},
body: JSON.stringify(
{
"platform": "instagram",
"accountId": "YOUR_CONNECTED_ACCOUNT_ID",
"content": "Campaign caption",
"mediaItems": [
{
"url": "https://your-domain.com/video.mp4"
}
]
}
)
});import os
import requests
API_BASE_URL = 'https://api.wahdx.com'
API_KEY = os.environ['WAHDX_API_KEY']
response = requests.post(
API_BASE_URL + '/api/content/post',
headers={
'X-API-Key': API_KEY,
'Content-Type': 'application/json',
},
json={
'platform': 'instagram',
'accountId': 'YOUR_CONNECTED_ACCOUNT_ID',
'content': 'Campaign caption',
'mediaItems': [
{
'url': 'https://your-domain.com/video.mp4'
}
]
},
timeout=30,
)
response.raise_for_status()
print(response.json())curl -X POST "https://api.wahdx.com/api/content/post" \
-H "X-API-Key: $WAHDX_API_KEY" \
-H "Content-Type: application/json" \
--data-raw '{
"platform": "instagram",
"accountId": "YOUR_CONNECTED_ACCOUNT_ID",
"content": "Campaign caption",
"mediaItems": [
{
"url": "https://your-domain.com/video.mp4"
}
]
}'Endpoint model
Video and photo carousel use the same publishing endpoint.
The difference is not the endpoint. Use POST /api/content/post for TikTok, Instagram, Facebook, Threads, and YouTube. The backend detects video or photo carousel from mediaItems URL extensions, then validates limits for the selected platform.
// Video and photo carousel use the SAME endpoint:
// POST /api/content/post
const videoPayload = {
"platform": "tiktok",
"accountId": "CONNECTED_ACCOUNT_ID",
"content": "Video caption",
"mediaItems": [
{
"url": "https://your-domain.com/video.mp4"
}
]
};
const photoCarouselPayload = {
"platform": "tiktok",
"accountId": "CONNECTED_ACCOUNT_ID",
"photoTitle": "Carousel title",
"content": "Carousel caption",
"mediaItems": [
{
"url": "https://your-domain.com/photo-1.jpg"
},
{
"url": "https://your-domain.com/photo-2.jpg"
}
]
};# Video and photo carousel use the SAME endpoint:
# POST /api/content/post
video_payload = {
'platform': 'tiktok',
'accountId': 'CONNECTED_ACCOUNT_ID',
'content': 'Video caption',
'mediaItems': [
{
'url': 'https://your-domain.com/video.mp4'
}
]
}
photo_carousel_payload = {
'platform': 'tiktok',
'accountId': 'CONNECTED_ACCOUNT_ID',
'photoTitle': 'Carousel title',
'content': 'Carousel caption',
'mediaItems': [
{
'url': 'https://your-domain.com/photo-1.jpg'
},
{
'url': 'https://your-domain.com/photo-2.jpg'
}
]
}# Video request: exactly one video URL in mediaItems
curl -X POST "https://api.wahdx.com/api/content/post" \
-H "X-API-Key: $WAHDX_API_KEY" \
-H "Content-Type: application/json" \
--data-raw '{
"platform": "tiktok",
"accountId": "CONNECTED_ACCOUNT_ID",
"content": "Video caption",
"mediaItems": [
{
"url": "https://your-domain.com/video.mp4"
}
]
}'
# Photo carousel request: multiple image URLs in mediaItems
curl -X POST "https://api.wahdx.com/api/content/post" \
-H "X-API-Key: $WAHDX_API_KEY" \
-H "Content-Type: application/json" \
--data-raw '{
"platform": "tiktok",
"accountId": "CONNECTED_ACCOUNT_ID",
"photoTitle": "Carousel title",
"content": "Carousel caption",
"mediaItems": [
{
"url": "https://your-domain.com/photo-1.jpg"
},
{
"url": "https://your-domain.com/photo-2.jpg"
}
]
}'Endpoint cheat sheet
Every core endpoint on one screen.
| Method | Endpoint | Purpose |
|---|---|---|
| POST | /api/content/post | Publish video, photo carousel, or text to a connected account. |
| POST | /api/posts | Schedule content up to 30 days ahead. |
| POST | /api/content/post/threads | Publish a Threads thread sequence of up to 10 items. |
| GET | /api/content/accounts | List connected accounts and their platform. |
| GET | /api/content/status/:accountId/:publishId | Check one post status. |
| POST | /api/content/status/batch | Check several post statuses at once. |
| GET | /api/engagement/keywords/search | Search public Threads posts by keyword or hashtag. |
| GET | /api/engagement/keywords/recent | Read the authenticated user’s recent keyword searches. |
| POST | /api/content/post | Reply to a Threads post by setting replyToId to its mediaId. |
| GET | /api/analytics/publishing | Read publishing volume and success per platform. |
Core docs
Read the API topics that should be linked from every integration plan.
API authentication
Authenticate Wahdx Connection API Requests
Learn how to authenticate Wahdx Connection API requests with X-API-Key and keep keys secure in backend or server-side environments.
Connected accounts API
List Connected Social Accounts with the Public API
Use GET /api/content/accounts to list TikTok, Instagram, Threads, Facebook, and YouTube accounts connected to a Wahdx Connection workspace using an API key.
Video publishing requirements
Video Requirements for Social Publishing API Workflows
Review recommended video formats, size, duration, aspect ratio, and thumbnail settings for Wahdx Connection publishing workflows.
Photo carousel publishing
Photo Carousel Publishing API Guide
Learn how to prepare photo carousel posts, cover images, title fields, and media arrays for Wahdx Connection publishing workflows.
Text-only posting
Text-Only Post API for Threads and Facebook
Publish text-only posts with no media to Threads and Facebook Pages using the Wahdx Connection API, immediately or on a schedule.
Threads text & thread sequence
Threads Text Post & Thread Sequence API
Publish text-only posts and linked thread sequences to Threads via API: endpoints, character limits, reply settings, and response fields.
Post status tracking
Track Social Post Status with Wahdx Connection API
Check individual or batch post status for social publishing workflows and monitor queued, processing, published, or failed content.
QR login workflow
TikTok QR Login API Workflow
Learn the QR login request, display, polling, and account-linking flow for TikTok account connection workflows.
Publishing analytics API
Publishing Analytics with the Wahdx Connection API
Use GET /api/analytics/publishing to inspect request-level and provider-item-level publishing metrics from the Wahdx Connection ledger.
Threads keyword search API
Threads Keyword Search with the Wahdx Connection API
Search public Threads posts by keyword or hashtag with GET /api/engagement/keywords/search: query parameters, plan quotas, rate limits, and response fields.
Threads post reply API
Reply to a Threads Post by Media ID
Reply to a public Threads post discovered through keyword search by sending its mediaId to POST /api/content/post with replyToId.
Character and media limits
Social Media Character Limits per Platform
Character limits for TikTok, Instagram, Threads, Facebook, and YouTube captions, plus carousel and video caps, in one reference table.
Platform guides
Connect docs to real platform workflows.
TikTok Content Publishing API: Video, Photos & Carousels
Publish video and photo carousels to TikTok through an official API. Media specs, posting limits, QR login, scheduling, and status tracking in one workflow.
Instagram Graph API Content Publishing for Business Accounts
Publish photos, reels, and carousels to Instagram with the Content Publishing API. Business account requirements, media limits, and metrics.
YouTube API: Upload Videos and Read Channel Analytics
Upload videos to YouTube with per-video settings, then read subscribers, views, and video metrics through one API workflow.
Threads API: Text Posts, Thread Sequences & Metrics
Publish text posts and thread sequences to Threads via API. Character limits, scopes, reply settings, rate limits, and metrics read-back.
Facebook Graph API Page Publishing and Insights
Publish to Facebook Pages and read back unique impressions, post engagements, page views, and follows through one API workflow for content teams.
Use-case guides
Build around scheduling, publishing, status visibility, and analytics.
Social Media Post Scheduling API for Multiple Platforms
Schedule social posts across TikTok, Instagram, Threads, Facebook, and YouTube from a backend job. One endpoint, server-side queues, and pollable status.
Post to Multiple Social Platforms at Once with One API
Post once and publish to TikTok, Instagram, Threads, Facebook, and YouTube. Prepare content per platform and track each post from queue to published.
Content Publishing API for Social Media Apps
Add social publishing to your product with one API for content, scheduling, account listing, status tracking, and per-platform analytics.
Post Status Tracking API: Queued, Published, Failed
Track social posts from queued to published. Check a single post or a batch, catch failures, and keep publishing success visible per platform.
Publishing Analytics API: Success Rates per Platform
Measure publishing volume, provider acceptance, publication, and failure per platform with aggregate publishing analytics.
Social Media Analytics API: Metrics per Platform
Read followers, reach, engagement, views, and top content per platform for TikTok, Instagram, Threads, Facebook, and YouTube from one API.