ForHosting KIT · Web: scraping y monitoreo

Generar slug de URL corta

Indique una URL larga y una semilla y obtenga un código corto que nunca cambia: la página del ejemplo con la semilla tenant-acme-v1 siempre da rTEr1Ff, siete caracteres base62 por defecto. No se consulta ni se guarda nada, y no se crea ningún enlace activo. Gratis en su navegador.

  • Gratis
  • Funciona en su navegador
  • Sin registro
  • Sus datos no salen de su equipo
Úselo desde WebAPIEmailTelegramApp pronto
Si escribe
Dirección web
https://example.com/docs/guide
Semilla
tenant-acme-v1
Longitud
7
Obtiene
Slug
rTEr1Ff
Alfabeto
base62
Ruta corta
/rTEr1Ff

Los acortadores de URL necesitan códigos de ruta cortos y opacos que apunten a un destino largo sin filtrar la estructura del enlace. Los equipos que construyen su propio acortador—o reservan códigos vanity sin conexión antes de escribir—necesitan una función determinista: la misma URL objetivo y la misma semilla de inquilino deben producir siempre el mismo slug de la longitud elegida, de modo que los reintentos y los escritores multi-región no inventen cadenas aleatorias en colisión para el mismo vínculo lógico. Esta capacidad acepta una URL destino, una semilla (espacio de nombres, secreto o clave de inquilino) y una longitud opcional (por defecto siete, mínimo cuatro), y expande una mezcla pura estilo FNV de URL más semilla en dígitos base62 tomados de 0-9, A-Z y a-z.

Cómo se construye el slug base62 del acortador con semilla

Un slug de acortador no es un slug de título legible por humanos. Es un token opaco en un alfabeto compacto que cabe en códigos QR, SMS y embalaje impreso y, a la vez, ofrece espacio combinatorio suficiente para millones de enlaces. Esta herramienta usa el alfabeto clásico base62 de diez dígitos, veintiséis letras mayúsculas y veintiséis minúsculas—sesenta y dos símbolos que viajan con seguridad en segmentos de ruta sin codificación porcentual.

El generador concatena la URL destino, un separador NUL y su semilla, y ejecuta rondas FNV-1a de 32 bits con contador que expanden cinco dígitos base62 por ronda hasta completar la longitud solicitada. Como la mezcla es aritmética pura sobre códigos de carácter, las mismas entradas producen siempre el mismo slug en Node y en el navegador.

La semilla es lo que hace seguros los sistemas multi-inquilino: dos inquilinos que acortan la misma URL de marketing con semillas distintas obtienen códigos distintos, de modo que los espacios de nombres públicos compartidos no revelan que dos organizaciones apuntaron al mismo destino.

La longitud por defecto es siete caracteres (unas 3.5e12 posibilidades) y puede ir de cuatro a treinta y dos; cuatro es el suelo duro porque los espacios de tres caracteres son demasiado pequeños para acortadores abiertos en Internet e invitan a la enumeración por fuerza bruta de su espacio de rutas.

Dónde un generador de slug de URL corta con semilla aporta valor

Los backends de acortador autoalojados usan esta capacidad para precomputar códigos en workers antes de un insert transaccional, manteniendo la lógica de asignación idéntica en cada región sin compartir una secuencia aleatoria central. Los equipos de operaciones de marketing generan códigos de campaña estables sin conexión a partir de una URL de aterrizaje conocida y una semilla de campaña, de modo que la revisión creativa, el arte QR y el corte a producción compartan una sola cadena.

Los productos SaaS multi-inquilino pasan el id de inquilino como seed para que el cliente A y el cliente B nunca reciban la misma ruta pública para destinos idénticos, lo que simplifica la revisión de abuso y las historias de residencia de datos. Prefiera longitudes mayores cuando su espacio de nombres es público y de larga vida; use el mínimo cuatro solo en sistemas cerrados con manejo agresivo de colisiones.

Asignación en acortador autoalojado

Precompute un código de ruta base62 determinista a partir de la URL larga y una semilla de servicio antes de escribir la fila de redirección en su propia base de datos.

Códigos de campaña multi-inquilino

Mezcle una semilla de inquilino o de campaña con la misma URL de aterrizaje para que cada cliente obtenga un slug público distinto sin aleatoriedad central.

¿Por qué se rechaza length por debajo de 4?

Los códigos de menos de cuatro caracteres base62 son demasiado pequeños para espacios de nombres públicos de acortador y fáciles de enumerar.

¿Crea esto un enlace corto en vivo?

No. Solo calcula una cadena de slug determinista. Usted almacena el mapeo y sirve las redirecciones en su propio dominio o servicio de acortador.

¿Qué alfabeto usa el slug?

Base62 estándar: dígitos 0-9, mayúsculas A-Z y minúsculas a-z. La respuesta fija alphabet en base62 y length en el recuento de caracteres resuelto.

¿Pueden dos URL distintas recibir el mismo código?

Sí, sobre todo con longitudes cortas. Los mismos datos dan siempre el mismo código, pero dos direcciones diferentes pueden coincidir, así que compruebe que no exista al guardarlo y elija más caracteres para enlaces públicos y duraderos.

¿Para qué sirve usar una semilla distinta por cliente?

Para que dos clientes que acortan la misma dirección reciban códigos diferentes. Así un espacio de enlaces público no revela que dos organizaciones apuntaron al mismo destino. La semilla puede ser el identificador del cliente o el nombre de una campaña.

Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.

POSThttps://api.kit.forhosting.com/web/url-shortener-slug-generate

¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.

curl -X POST https://api.kit.forhosting.com/web/url-shortener-slug-generate \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com/docs/guide","seed":"tenant-acme-v1"}'
{
  "url": "https://example.com/docs/guide",
  "seed": "tenant-acme-v1"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "web.url_shortener_slug_generate",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.

Por solicitud$0.002

Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.

timeout_sec30
max_crawl_pages25
HTTPCódigoSignificado
401unauthorizedAPI key ausente o inválida.
402insufficient_balanceEl saldo no cubre el precio de la tarea.
404unknown_typeEl tipo de tarea no existe.
429rate_limitedDemasiadas peticiones. Use el webhook en vez de sondear.

No se descarga nada por red y no se almacena nada: usted obtiene la cadena del slug y un prefijo short_path listo, y luego lo vincula en su propio almacén. Longitudes inferiores a cuatro fallan con invalid_input porque códigos tan cortos no son seguros para espacios de nombres públicos de acortador a escala significativa.

Cómo se construye el slug base62 del acortador con semilla

La respuesta repite url, seed y length, devuelve el slug, etiqueta el alfabeto como base62 y ofrece short_path como conveniencia con barra inicial para pegar en plantillas—sin afirmar que esa ruta esté activa en ningún dominio.

Contrato de entrada, forma de la respuesta y reglas de rechazo

Combine el slug con su propia comprobación de unicidad al escribir: la función es determinista para un triple de entradas, pero dos URL distintas aún pueden colisionar en códigos cortos—su almacén debe tratar las carreras de inserción como fuente de verdad. Envíe un objeto JSON con dos cadenas obligatorias y un entero opcional. El campo url (alias target, link, href, long_url) es el destino largo que usted pretende vincular después; no se descarga, así que localhost, rutas profundas y cadenas de consulta se aceptan como texto opaco tras recortar, hasta cuatro mil noventa y seis caracteres. El campo seed (alias key, salt, namespace, secret) es una cadena no vacía que nombra el espacio del hash—use un secreto por inquilino o un id de línea de producto para que las colisiones entre inquilinos sean improbables. El campo length (alias len, size, slug_length) vale siete si se omite; debe ser un entero de cuatro a treinta y dos inclusive. Valores por debajo de cuatro provocan invalid_input con un mensaje que indica el mínimo de slug de acortador; valores por encima de treinta y dos y no enteros se rechazan igual y no se facturan. En caso de éxito el cuerpo incluye las cadenas url y seed normalizadas, la longitud resuelta, el slug, alphabet en base62, short_path igual a barra más slug, y una nota breve que recuerda a los clientes que es un código determinista, no una redirección en vivo. url o seed vacíos, objetos que no son cadena en esos campos y claves obligatorias ausentes fallan con claridad para que las interfaces de formulario resalten el campo.

Dónde un generador de slug de URL corta con semilla aporta valor

Como la implementación es parse puro de nivel A, cada llamada correcta cuesta el precio base publicado $0.002 sin tokens de modelo ni red saliente; la validación fallida no consume saldo. Recuerde que este endpoint no crea redirecciones, no mide clics ni reserva DNS: solo acuña el segmento de ruta opaco que su acortador almacenará.

Fixtures estables de QR e impresión

Fije url, seed y length en las herramientas de diseño para que el embalaje, las plantillas SMS y los goldens de CI coincidan siempre en la cadena de ruta corta.

¿Cómo genero un slug de URL corta a partir de una URL y una semilla?

Envíe cadenas no vacías url y seed, y opcionalmente length (por defecto 7, mín. 4, máx. 32). La API devuelve un slug base62 determinista y short_path como /Ab3x9kQ.

¿Cuánto cuesta el generador de slug de URL corta con semilla?

La herramienta del navegador es gratuita. Las peticiones API usan saldo prepago KIT a $0.002 por llamada correcta; la entrada inválida no se factura.

Ver la documentación completa del KIT →