Content Repurposer API for founders, creators, agencies, and SaaS teams that need repeatable multi-channel content output.
Ready to use this in a real workflow?
Test prompts in the free tool first, then come back and buy the API when you need repeatable production use.
Include your API key in the X-Api-Key header with every request.
X-Api-Key: your-api-key-here
Get your API key from the pricing section. After payment, your key is delivered by email. If you want to validate output before buying, use the free tool first. If you need more proof before buying, review the use cases and then return to pricing.
Transform content into one or more social media formats.
Request Body (JSON):
| Field | Type | Required | Description |
|---|---|---|---|
content | string | Yes | Source text to repurpose (max 10,000 chars) |
formats | string[] | Yes | Output formats (max 5 per request) |
tone | string | No | Tone of output: professional, casual, bold, educational (default: professional) |
audience | string | No | Target audience description (default: general) |
cta | string | No | Call-to-action to include where appropriate |
Available formats:
| Format ID | Output |
|---|---|
tweet_thread | Twitter/X thread (3-7 tweets with hooks) |
tweet_single | Single tweet under 280 characters |
linkedin | LinkedIn post with professional formatting |
newsletter | Email snippet with subject line |
instagram | Instagram caption with hashtags |
tiktok | Short-form video script (hook → body → CTA) |
reddit | Reddit-style informative post |
summary | 2-3 sentence executive summary |
Example Request:
curl -X POST https://content-repurposer-api-lilac.vercel.app/api/repurpose \
-H "Content-Type: application/json" \
-H "X-Api-Key: your-api-key" \
-d '{
"content": "AI agents are transforming how small businesses operate in 2026. Over half of business leaders now deploy agentic AI for customer support, lead follow-up, and content creation.",
"formats": ["tweet_single", "linkedin", "summary"],
"tone": "professional",
"audience": "small business owners"
}'Example Response:
{
"success": true,
"input_length": 178,
"formats_requested": 3,
"results": {
"tweet_single": "In 2026, over 50% of business leaders are using AI agents — not chatbots — for real work: support, leads, content. The question isn't 'should I use AI?' It's 'how many weeks until my competitor does?'",
"linkedin": "Here's what changed in 2026:\n\nAI agents aren't experimental anymore.\n\nOver half of business leaders now use them for...",
"summary": "AI agents have moved from experimental tools to operational necessities for small businesses in 2026, with over half of leaders deploying them for customer support, lead management, and content creation."
}
}Returns the list of available output formats with descriptions. No authentication required.
Health check. Returns {"status": "ok"}. No authentication required.
| Code | Meaning |
|---|---|
| 400 | Bad request — missing or invalid fields |
| 401 | Unauthorized — missing or invalid API key |
| 405 | Method not allowed — use POST for /api/repurpose |
| 429 | Rate limited — max 60 requests/minute |
| 500 | Server error — retry the request |
| 503 | AI service temporarily unavailable |
60 requests per minute per API key. If you hit the limit, wait 60 seconds and retry.
import requests
response = requests.post(
"https://content-repurposer-api-lilac.vercel.app/api/repurpose",
headers={"X-Api-Key": "your-api-key", "Content-Type": "application/json"},
json={
"content": "Your blog post here...",
"formats": ["tweet_thread", "linkedin"],
"tone": "casual",
"audience": "developers"
}
)
data = response.json()
print(data["results"]["tweet_thread"])
print(data["results"]["linkedin"])const response = await fetch(
"https://content-repurposer-api-lilac.vercel.app/api/repurpose",
{
method: "POST",
headers: {
"Content-Type": "application/json",
"X-Api-Key": "your-api-key"
},
body: JSON.stringify({
content: "Your blog post here...",
formats: ["tweet_single", "newsletter"],
tone: "bold",
audience: "startup founders"
})
}
);
const data = await response.json();
console.log(data.results);Need to verify fit before buying? Test the free tool, then use API pricing when you are ready for recurring production usage.
Next step
If the docs match your use case, go buy API access. If you are still testing fit, use the free tool first.