Ayuda
Usa hashavatar.app directamente desde el navegador, tu frontend o tu backend. Cada URL de avatar es determinista, así que el mismo identificador y las mismas opciones siempre producen el mismo resultado.
URL básica
Usa el endpoint con query cuando quieras una URL pública de imagen sencilla.
https://hashavatar.app/v1/[email protected]&algorithm=sha512&kind=robot&background=white&accessory=glasses&color=gold&expression=happy&shape=circle&format=webp&size=256
URL con ruta
Usa la forma con ruta si prefieres URLs de integración más limpias.
https://hashavatar.app/avatar/fox/[email protected]/webp
Ejemplo HTML
<img
src="https://hashavatar.app/v1/[email protected]&algorithm=sha512&kind=monster&background=themed&accessory=horns&color=crimson&expression=grumpy&shape=hexagon&format=webp&size=256"
alt="Generated monster avatar"
/>
Ejemplo JavaScript
const avatarUrl = new URL("https://hashavatar.app/v1/avatar");
avatarUrl.search = new URLSearchParams({
id: user.email,
algorithm: "sha512",
kind: "robot",
background: "white",
accessory: "glasses",
color: "gold",
expression: "happy",
shape: "circle",
format: "webp",
size: "256",
}).toString();
Parámetros soportados
id: any stable identifier such as an email, username, internal user id, or one-way hashtenant: optional namespace partition for multi-tenant appsstyle_version: optional style namespace such asv2algorithm: identity hash mode; onlysha512is supportedkind: any public hashavatar family, includingcat,dog,robot,planet,rocket,frog,panda,cupcake,pizza,octopus,knight,bear,penguin,dragon,ninja,astronaut,diamond,coffee-cup, andshieldbackground:themed,white,black,dark,light,transparent,polka-dot,striped,checkerboard,grid,sunrise,ocean, orstarryaccessory:none,glasses,hat,headphones,crown,bowtie,eyepatch,scarf,halo, orhornscolor:default,neon-mint,pastel-pink,crimson,gold, ordeep-sea-blueexpression:default,happy,grumpy,surprised,sleepy,winking,cool, orcryingshape:square,circle,squircle,hexagon, oroctagonformat: output format; onlywebpis supportedsize: from64up to1024
Las capas de accesorio y expresión se aplican a familias con estilo de personaje. Las familias de objeto como planet, rocket, paws, mushroom, cactus, cupcake, pizza, icecream, diamond, coffee-cup y shield se normalizan a accessory=none y expression=default.
Enlaces de almacenamiento firmados
Si este deployment tiene almacenamiento de objetos configurado, solicita un enlace de almacenamiento prefirmado desde /v1/avatar/link. Ese endpoint almacena el objeto generado y devuelve JSON con la URL firmada, la clave del objeto y una clave de caché hasheada. Las respuestas de avatar estándar no exponen metadatos de enlaces firmados en los headers.
GET https://hashavatar.app/v1/avatar/[email protected]&algorithm=sha512&kind=robot&background=white&accessory=glasses&color=gold&expression=happy&shape=circle&format=webp&size=256
Open source
El código del sitio público está en el repositorio de la API y el renderer reutilizable de avatares se publica en crates.io. Repositorio · crates.io