Inicio rápido
Nuestra API es totalmente gratuita y no requiere autenticación. Solo envía solicitudes HTTP a nuestros endpoints.
URL base: https://fancytextdecorator.com/api.php
Límite de uso: 100 solicitudes por hora por IP
Formato de respuesta: JSON
Localización
Todos los endpoints aceptan un parámetro opcional lang para devolver name y url específicos de cada idioma. Valores admitidos: en, es, fr, tr. Si se omite, se devuelve inglés por defecto. Los mensajes de error permanecen en inglés sin importar el idioma — están dirigidos a desarrolladores, no a usuarios finales.
Parámetros:
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| lang | string | No | Código de idioma — uno entre en, es, fr, tr. Por defecto es en si se omite o no es válido. |
Ejemplo: respuesta localizada con ?lang=tr:
curl https://fancytextdecorator.com/api.php?action=get_generator&slug=aesthetic&lang=tr
{
"success": true,
"lang": "tr",
"generator": {
"slug": "aesthetic",
"name": "Estetik",
"url": "https://fancytextdecorator.com/tr/aesthetic-text-generator",
"example": "aesthetic",
"characters": { ... }
}
} GET Listar todos los generadores
Endpoint: /api.php?action=list_generators
Obtén una lista de todos los generadores de texto disponibles.
Solicitud de ejemplo:
curl https://fancytextdecorator.com/api.php?action=list_generators
Respuesta de ejemplo:
{
"success": true,
"count": 150,
"generators": [
{
"slug": "aesthetic",
"name": "Aesthetic",
"url": "https://fancytextdecorator.com/aesthetic-text-generator",
"example": "aesthetic"
}
]
} GET Obtener detalles del generador
Endpoint: /api.php?action=get_generator&slug={slug}
Obtén los detalles de un generador concreto, incluido su mapeo de caracteres.
Parámetros:
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| slug | string | Sí | Identificador del generador (por ejemplo, "aesthetic", "bold", "italic") |
Solicitud de ejemplo:
curl https://fancytextdecorator.com/api.php?action=get_generator&slug=aesthetic
Respuesta de ejemplo:
{
"success": true,
"generator": {
"slug": "aesthetic",
"name": "Aesthetic",
"url": "https://fancytextdecorator.com/aesthetic-text-generator",
"example": "aesthetic",
"characters": {
"a": "a",
"b": "b"
}
}
} POST Transformar texto
Endpoint: /api.php?action=generate
Transforma texto plano en texto Unicode decorado usando un generador concreto.
Parámetros:
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| slug | string | Sí | Identificador del generador |
| text | string | Sí | Texto que se va a transformar |
| update_stats | boolean | No | Actualizar las estadísticas de uso (por defecto: true) |
Solicitud de ejemplo:
curl -X POST https://fancytextdecorator.com/api.php \ -d "action=generate" \ -d "slug=aesthetic" \ -d "text=Hello World"
Respuesta de ejemplo:
{
"success": true,
"input": "Hello World",
"output": "Hello World",
"generator": "aesthetic",
"length": {
"input": 11,
"output": 11
}
} GET Obtener estadísticas
Endpoint: /api.php?action=stats
Obtén las estadísticas de uso actuales.
Solicitud de ejemplo:
curl https://fancytextdecorator.com/api.php?action=stats
Respuesta de ejemplo:
{
"success": true,
"statistics": {
"sets": 150,
"uses": 1583,
"characters": 79480
}
} Gestión de errores
Todos los errores devuelven una respuesta JSON con success: false y el código de estado HTTP correspondiente.
Códigos de error comunes:
| Código | Descripción |
|---|---|
| 400 | Solicitud incorrecta — Parámetros ausentes o no válidos |
| 404 | No encontrado — El generador no existe |
| 429 | Límite de uso superado — Demasiadas solicitudes |
| 500 | Error interno del servidor |
Respuesta de error de ejemplo:
{
"success": false,
"error": "Generator not found",
"message": "The requested generator does not exist"
} Ejemplos de código
JavaScript (Fetch API)
// List all generators
fetch('https://fancytextdecorator.com/api.php?action=list_generators')
.then(response => response.json())
.then(data => console.log(data.generators));
// Transform text
fetch('https://fancytextdecorator.com/api.php', {
method: 'POST',
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
body: new URLSearchParams({
action: 'generate',
slug: 'aesthetic',
text: 'Hello World'
})
})
.then(response => response.json())
.then(data => console.log(data.output)); Python
import requests
# List all generators
response = requests.get(
'https://fancytextdecorator.com/api.php',
params={'action': 'list_generators'}
)
print(response.json())
# Transform text
response = requests.post(
'https://fancytextdecorator.com/api.php',
data={
'action': 'generate',
'slug': 'aesthetic',
'text': 'Hello World'
}
)
print(response.json()['output']) PHP
// Transform text
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://fancytextdecorator.com/api.php');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query([
'action' => 'generate',
'slug' => 'aesthetic',
'text' => 'Hello World'
]));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
$data = json_decode($response, true);
echo $data['output']; Límites de uso
Para garantizar un uso justo, limitamos las solicitudes a la API a 100 solicitudes por hora por dirección IP.
Si superas el límite, recibirás una respuesta 429 Too Many Requests con un campo retry_after que indica cuándo podrás volver a enviar solicitudes.
Respuesta al superar el límite:
{
"success": false,
"error": "Rate limit exceeded",
"message": "Maximum 100 requests per hour allowed",
"retry_after": 1847
} Soporte
¿Necesitas ayuda o tienes preguntas? Contáctanos:
- 📧 Correo: [email protected]
- 🐦 Twitter: @textdecorator
- 💬 Issues de GitHub: Reportar un problema