AI Thumbnail Generator API

Category: media

Generate eye-catching YouTube-style thumbnails using OpenAI DALL-E. Specify topic, style, and optional text overlay.

Endpoint

POST https://anythingtext.com/api/tools/thumbnail
Authentication Required Content-Type: application/json

Authentication

This API requires an API key. Generate one from the API Keys section in your dashboard settings.

Include the X-API-Key header in all API requests:

X-API-Key: atk_your_api_key_here

Rate Limiting

API requests are limited to 60 requests per minute per user. If you exceed this limit, the API returns a 429 Too Many Requests response.

Every response includes rate limit headers:

X-RateLimit-Limit: 60
X-RateLimit-Remaining: 57
X-RateLimit-Reset: 42

When rate limited, the response body contains:

{ "error": "Rate limit exceeded. Maximum 60 requests per minute.", "retryAfter": 42, "limit": 60 }

Request Parameters

Name Type Required Description
topic String Required The topic or subject for the thumbnail
Example: How to Build a Website in 2024
style String Optional Visual style: cinematic, cartoon, minimalist, bold, neon (default: cinematic)
Example: cinematic
textOverlay String Optional Optional text overlay concept for the thumbnail
Example: TOP 10 TIPS

Response

Content-Type: application/json

URL of the generated thumbnail image

{
  "imageUrl": "https://oaidalleapiprodscus.blob.core.windows.net/..."
}

Error Responses

StatusDescriptionBody
401 Not authenticated {"error": "Please log in..."}
400 Bad request / Missing required params {"error": "... is required"}
500 Internal server error {"error": "Failed to ..."}

cURL Example

curl -X POST https://anythingtext.com/api/tools/thumbnail \
  -H "Content-Type: application/json" \
  -H "X-API-Key: your_api_key_here" \
  -d '{"topic": "How to Code", "style": "cinematic"}'

Code Samples

const response = await fetch('https://anythingtext.com/api/tools/thumbnail', {
    method: 'POST',
    headers: {
        'Content-Type': 'application/json',
        'X-API-Key': 'your_api_key_here'
    },
    body: JSON.stringify({"topic": "How to Code", "style": "cinematic"})
});

const data = await response.json();
console.log('Result:', data);
import requests
import json

response = requests.post(
    'https://anythingtext.com/api/tools/thumbnail',
    json={'topic': 'How to Code', 'style': 'cinematic'},
    headers={'X-API-Key': 'your_api_key_here'}
)

data = response.json()
print('Result:', data)
import java.net.URI;
import java.net.http.*;

HttpClient client = HttpClient.newHttpClient();
String json = "{\"topic\": \"How to Code\", \"style\": \"cinematic\"}";

HttpRequest request = HttpRequest.newBuilder()
    .uri(URI.create("https://anythingtext.com/api/tools/thumbnail"))
    .header("Content-Type", "application/json")
    .header("X-API-Key", "your_api_key_here")
    .POST(HttpRequest.BodyPublishers.ofString(json))
    .build();

HttpResponse<String> response = client.send(request,
    HttpResponse.BodyHandlers.ofString());

System.out.println("Response: " + response.body());