Texto a slug
Texto a slug es una API que convierte cualquier texto (el título de un artículo, un nombre de producto) en un slug URL-safe: minúsculas, sin acentos ni símbolos, separado por guiones.
Cómo funciona
Le mandas el texto y te devuelve la versión normalizada: quita acentos y diacríticos, pasa a minúsculas, y sustituye cualquier cosa que no sea letra o número por el separador que elijas (guion por defecto).
Lo único que necesitas
- Tu API key. La creas en tu panel con "+ Crear llave". Se muestra una sola vez, así que cópiala y guárdala.
- En tu plataforma de automatización, un paso de tipo "HTTP Request" / "Hacer una petición HTTP" (lo tienen n8n, Make, Zapier, Pipedream…).
Cómo usarlo en n8n (paso a paso)
En el nodo HTTP Request:
- Method:
POST - URL:
https://api.cofferdock.com/slugify - Send Headers: actívalo y añade dos:
x-api-key= tu llave, yContent-Type=application/json - Send Body: actívalo → Body Content Type: JSON →
{ "text": "Café con leche y churros" }
En Make (módulo HTTP → Make a request): mismo método y URL, Body type: Raw, Content type: JSON, con el mismo cuerpo.
Opciones (dentro del JSON)
| Opción | Por defecto | Para qué sirve |
|---|---|---|
text | - | Obligatorio. El texto a convertir. |
separator | - | El carácter (o hasta 3) que separa las palabras del slug. |
Resumen de la API
- Endpoint:
POST https://api.cofferdock.com/slugify - Auth: cabecera
x-api-key: TU_LLAVE. - Entrada: SOLO
application/json. - Algoritmo: normaliza Unicode (NFD), quita marcas diacríticas, minúsculas, sustituye cualquier racha de caracteres no alfanuméricos por
separator, recorta separadores al principio/final. Un resultado vacío (texto sin ningún carácter alfanumérico) es una respuesta200válida, no un error. - Límites: 30 peticiones/min por IP. 1 llamada = 1 crédito.
Opciones
| Opción | Por defecto | Descripción |
|---|---|---|
text | - | Obligatorio. String no vacío, hasta 2.000 caracteres. |
separator | - | 1 a 3 caracteres: minúsculas, dígitos, _ o - (400 si no cumple ese patrón). |
Ejemplos
curl:
curl -X POST "https://api.cofferdock.com/slugify" \
-H "x-api-key: TU_LLAVE" \
-H "Content-Type: application/json" \
-d '{"text":"Café con leche y churros"}'
JavaScript (Node 18+):
const r = await fetch('https://api.cofferdock.com/slugify', {
method: 'POST',
headers: { 'x-api-key': 'TU_LLAVE', 'Content-Type': 'application/json' },
body: JSON.stringify({ text: 'Café con leche y churros' }),
});
const { slug } = await r.json();
Python:
import requests
r = requests.post(
'https://api.cofferdock.com/slugify',
headers={'x-api-key': 'TU_LLAVE', 'Content-Type': 'application/json'},
json={'text': 'Café con leche y churros'},
)
print(r.json())
Respuesta
{ "success": true, "slug": "cafe-con-leche-y-churros",
"meta": { "used": 12, "remaining": 488 } }
Lo que recibes
El slug en el campo slug, siempre en minúsculas y sin acentos.
Text to slug
Text to slug is an API that turns any text (an article title, a product name) into a URL-safe slug: lowercase, no accents or symbols, separated by hyphens.
How it works
You send the text and get back the normalized version: it strips accents and diacritics, lowercases everything, and replaces any run of non-alphanumeric characters with whatever separator you choose (hyphen by default).
All you need
- Your API key. Create it in your dashboard with "+ Create key". It's shown only once, so copy and save it.
- In your automation platform, an "HTTP Request" step (n8n, Make, Zapier, Pipedream… all have one).
How to use it in n8n (step by step)
In the HTTP Request node:
- Method:
POST - URL:
https://api.cofferdock.com/slugify - Send Headers: on → add two:
x-api-key= your key, andContent-Type=application/json - Send Body: on → Body Content Type: JSON →
{ "text": "Café latte and churros" }
In Make (HTTP → Make a request module): same method and URL, Body type: Raw, Content type: JSON, with the same body.
Options (inside the JSON)
| Option | Default | What it does |
|---|---|---|
text | - | Required. The text to convert. |
separator | - | The character (up to 3) that separates the slug's words. |
API overview
- Endpoint:
POST https://api.cofferdock.com/slugify - Auth: header
x-api-key: YOUR_KEY. - Input:
application/jsonONLY. - Algorithm: Unicode-normalizes (NFD), strips diacritical marks, lowercases, replaces any run of non-alphanumeric characters with
separator, trims separators from the start/end. An empty result (text with no alphanumeric characters at all) is a valid200response, not an error. - Limits: 30 requests/min per IP. 1 call = 1 credit.
Options
| Option | Default | Description |
|---|---|---|
text | - | Required. Non-empty string, up to 2,000 characters. |
separator | - | 1 to 3 characters: lowercase letters, digits, _ or - (400 if it doesn't match that pattern). |
Examples
curl:
curl -X POST "https://api.cofferdock.com/slugify" \
-H "x-api-key: YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Café latte and churros"}'
JavaScript (Node 18+):
const r = await fetch('https://api.cofferdock.com/slugify', {
method: 'POST',
headers: { 'x-api-key': 'YOUR_KEY', 'Content-Type': 'application/json' },
body: JSON.stringify({ text: 'Café latte and churros' }),
});
const { slug } = await r.json();
Python:
import requests
r = requests.post(
'https://api.cofferdock.com/slugify',
headers={'x-api-key': 'YOUR_KEY', 'Content-Type': 'application/json'},
json={'text': 'Café latte and churros'},
)
print(r.json())
Response
{ "success": true, "slug": "cafe-latte-and-churros",
"meta": { "used": 12, "remaining": 488 } }
What you get back
The slug in the slug field, always lowercase and accent-free.