Yvatar implementation of the AvatarProvider seam.
This is the ONLY place that knows the Yvatar Developer Platform API — its
endpoints, its snake_case JSON, and its error codes. It maps the protocol's
provider-neutral ctx/persona to Yvatar's external_provider /
external_user_id mapping and back to the normalized result documented in
game.protocols.avatar-provider.
Endpoints (all under /api/v1/platform/users/:external-user-id/yvatar): PUT . upsert persona GET . fetch full persona POST ./portrait generate a pending portrait POST ./portrait/accept promote pending -> accepted GET ./public embed-safe public shape POST ./content start a video post (async — returns generating_video) GET ./content check the pending post's status (on-demand, not a poll loop) POST ./content/regenerate redraft the current pending post (async) POST ./content/publish publish the current draft post to a platform
The ./content* endpoints are video-only — Yvatar's Platform API does not support image posts (the content studio's session-authenticated UI does, but that surface is not exposed here). Video generation is asynchronous: POST ./content and POST ./content/regenerate return immediately with status "generating_video"; GET ./content is how a caller checks whether it finished, intended for a caller-side "refresh" action rather than a background polling loop.
Auth: Authorization: Bearer <yvtr_ token> (developer-owned token).
Yvatar implementation of the `AvatarProvider` seam. This is the ONLY place that knows the Yvatar Developer Platform API — its endpoints, its snake_case JSON, and its error codes. It maps the protocol's provider-neutral `ctx`/persona to Yvatar's `external_provider` / `external_user_id` mapping and back to the normalized result documented in `game.protocols.avatar-provider`. Endpoints (all under /api/v1/platform/users/:external-user-id/yvatar): PUT . upsert persona GET . fetch full persona POST ./portrait generate a pending portrait POST ./portrait/accept promote pending -> accepted GET ./public embed-safe public shape POST ./content start a video post (async — returns generating_video) GET ./content check the pending post's status (on-demand, not a poll loop) POST ./content/regenerate redraft the current pending post (async) POST ./content/publish publish the current draft post to a platform The ./content* endpoints are video-only — Yvatar's Platform API does not support image posts (the content studio's session-authenticated UI does, but that surface is not exposed here). Video generation is asynchronous: POST ./content and POST ./content/regenerate return immediately with status "generating_video"; GET ./content is how a caller checks whether it finished, intended for a caller-side "refresh" action rather than a background polling loop. Auth: `Authorization: Bearer <yvtr_ token>` (developer-owned token).
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |