Actualización en API de palabras al azar

En la API pública de palabras al azar, hoy se agregaron algunas mejoras.

La más importante de ellas, es el agregado de un nuevo parámetro ‘l’ que permite definir la longitud de las palabras a ser devueltas por la misma.

La otra modificación se trata de una corrección sobre el filtrado de caracteres.

Ya que en el dataset se podían llegar a encontrar algunos caracteres extraños y saltos de línea que no habían sido filtrados.

También ya no se devuelven letras en minúsculas, por lo que no existen dos o más variaciones de la misma palabra.

Por lo que ahora un ejemplo de llamada a la API con ambos parámetros sería el siguiente:

https://clientes.api.greenborn.com.ar/public-random-word?c=9&l=8

Que debería retornar 8 palabras al azar, con una longitud de 8 caracteres.

API Pública de palabras al azar

Bien, anteriormente he desarrollado un pequeño proyecto de generador de contraseñas, que surgió con la necesidad de utilizar una herramienta propia para dicho propósito y brindar un servicio más en el servidor de Greenborn.

Y la siguiente mejora de dicho proyecto consiste en la generación de contraseñas basadas en palabras.

Para hacer posible dicha mejora se hace necesario contar con una base de datos de palabras (en principio en español) y la posibilidad de consultar una al azar.

Claro que también se podría utilizar para otros propósitos.

Y ya que la API necesitaría contar con un end-point público, creo que también estaría bueno brindar la documentación necesaria para hacer posible su uso por parte de cualquier persona, para el propósito que considere necesario.

¿Cómo se usa?

Su uso es muy sencillo, sólo hace falta hacer una petición GET de la siguiente URL:

https://clientes.api.greenborn.com.ar/public-random-word

A lo cual la petición respondería con una palabra al azar.

También se puede especificar si el resultado debe devolverse en JSON o XML de acuerdo al header content-type pudiendo definirse en application/json o application/xml.

Además si en la URL se agrega el parámetro ?c=x, siendo x un número entre 1 y 100, se puede especificar la cantidad de palabras a retornar.

Condiciones de uso y Limitaciones

  • No se ofrece ninguna garantía con respecto a cualquier tipo de aspecto del servicio ofrecido.
  • El usuario será responsable de cualquier tipo de uso que le de a la API, desligándose Greenborn de cualquier tipo de responsabilidad sobre el mismo.
  • El uso GRATUITO del servicio está limitado a un máximo de 500 consultas por hora, por dirección IP.
  • Cualquier aspecto de las condiciones de uso, podrá ser modificado sin previo aviso, al igual que no se garantiza la disponibilidad del servicio (salvo que acordemos el pago por cuota de uso).
  • Actualmente el dataset es reducido y se ampliará con el tiempo.

Ampliación del dataset

La base de datos de palabras no se cargará a mano, de hecho se realiza de forma semiautomática.

A partir de la carga de archivos de texto plano de libros en español, a lo cual se llegó alrededor de 40k palabras (existiendo variaciones que agregan mayúsculas y minúsculas).

En este caso los libros en español de donde se obtuvieron las palabras, provienen de: http://www.libroteca.net/