Belgeler
Bu, public API için ürün odaklı referanstır. Aynı identity, tenant, style version, avatar family, style options, size ve WebP output değerlerinin bir major release içinde stabil kalması amaçlanır.
Ana Endpointler
GET /v1/avatar: returns an avatar asset directlyGET /v1/avatar/link: stores the generated avatar in configured object storage and returns signed-link metadataGET /avatar/<kind>/<identity>/webp: path-style public avatar URLGET /docs/openapi.json: machine-readable API description
Operasyonel Endpointler
GET /healthz load balancer ve uptime checks için herkese açıktır. GET /metrics sadece loopback erişimlidir ve local olmayan peers için 404 döndürür.
Namespace Desteği
Görsel kimlik alanlarını ürünler veya rollout aşamaları arasında ayırmak için tenant ve style_version kullanın.
GET https://hashavatar.app/v1/[email protected]&tenant=acme&style_version=v2&algorithm=sha512&kind=wizard&background=white&accessory=hat&color=deep-sea-blue&expression=cool&shape=squircle&format=webp&size=256
Anonim ID'ler
Ham kişisel veri yerine internal stable id veya one-way application hash gönderin.
printf '%s' '[email protected]' | sha256sum | cut -d' ' -f1
Rate Limitler
Public service origin-side rate limits uygular; /v1/avatar/link, persist=true olan direct avatar requests ve /og.png için daha sıkı limitler vardır çünkü object storage writes ve Open Graph image rendering direct rendering'den daha pahalıdır.
Timeouts
Avatar generation ve storage operations server-side timeouts ile sınırlandırılır, böylece pahalı istekler origin'i süresiz meşgul edemez.
Hatalar
400: geçersiz kind, desteklenmeyen algorithm veya format, size ya da eksik identity408: generation veya storage timeout429: rate limit aşıldı500: rendering veya storage failure
OpenAPI
Generated clients veya tooling için kullanın /docs/openapi.json.