Integrate SatireGen's powerful satirical comic generation capabilities into your applications with our comprehensive API and developer tools.

Welcome to the SatireGen API! Our powerful API allows you to integrate automated satirical comic generation into your applications, websites, or services.
All API requests require authentication using an API key. Include your API key in the Authorization header of each request.
Keep your API key secure and never expose it in client-side code. Store it securely on your server.
Generate a new satirical comic strip from news content.
text (string) - News contentcharacters (array) - Character typesstyle (string) - Visual styleformat (string) - Output formatcomic_id - Unique identifierimage_url - Comic image URLnarrative - Satirical textcreated_at - TimestampCheck the status of a comic generation request.
text (string) - News contentcharacters (array) - Character typesstyle (string) - Visual styleformat (string) - Output formatcomic_id - Unique identifierimage_url - Comic image URLnarrative - Satirical textcreated_at - TimestampGenerate multiple comics in a single request.
text (string) - News contentcharacters (array) - Character typesstyle (string) - Visual styleformat (string) - Output formatcomic_id - Unique identifierimage_url - Comic image URLnarrative - Satirical textcreated_at - Timestamp| Parameter | Type | Required | Description |
|---|---|---|---|
| text | string | Yes | News content or topic (50-2000 chars) |
| characters | array | No | Character types: santa, executive, hidden |
| style | string | No | Visual style: editorial, modern, abstract |
| format | string | No | Output format: png, jpeg, webp |
// Using fetch API
const generateComic = async (newsText) => {
const response = await fetch('https://api.satiregen.com/v1/comics/generate', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_API_KEY'
},
body: JSON.stringify({
text: newsText,
characters: ['santa', 'executive'],
style: 'editorial'
})
});
const data = await response.json();
return data;
};
# Using requests library
import requests
import json
def generate_comic(news_text):
url = 'https://api.satiregen.com/v1/comics/generate'
headers = {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_API_KEY'
}
data = {
'text': news_text,
'characters': ['santa', 'executive'],
'style': 'editorial'
}
response = requests.post(url, headers=headers, json=data)
return response.json()
// Using cURL
function generateComic($newsText) {
$url = 'https://api.satiregen.com/v1/comics/generate';
$data = array({
'text' => $newsText,
'characters' => array('santa', 'executive'),
'style' => 'editorial'
});
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json','Authorization: Bearer YOUR_API_KEY'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
return json_decode($response, true);
}
The API uses standard HTTP status codes and returns detailed error information in JSON format.
| Code | HTTP Status | Description |
|---|---|---|
| INVALID_REQUEST | 400 | Request validation failed |
| UNAUTHORIZED | 401 | Invalid or missing API key |
| RATE_LIMIT_EXCEEDED | 429 | Too many requests |
| COMIC_NOT_FOUND | 404 | Comic ID not found |
| INTERNAL_ERROR | 500 | Server error |
Rate limits are enforced to ensure fair usage and system stability. Limits are based on your subscription plan.
X-RateLimit-Limit - Request limit per windowX-RateLimit-Remaining - Requests remainingX-RateLimit-Reset - Reset timestampReceive real-time notifications when comic generation is complete by configuring webhooks.
comic.completed - Comic generation finishedcomic.failed - Comic generation failedbatch.completed - Batch processing finished