Skip to main content
Create a Character with type=vsplat to extract a 3D Gaussian splat (.vsplat) instead of the render-ready 2D Character. When it’s ready, fetch its signed download URL from Export 3D Character. Pass type=all instead of vsplat if you also want the 2D render kept on the same Character — see the Character Quickstart for that path alone. Set VIGGLE_API_KEY and run the example below as-is — it uses a Viggle-hosted sample image, so you don’t need to prepare your own character image first.

What you need

The examples below reference a placeholder sample asset URL (https://assets.viggle.ai/samples/character.png). Swap in your own image/image_url, or Viggle’s published sample asset once available.

Create, poll, and export the Character

Response

Poll GET /v1/characters/{character_id} every 3 seconds until status is ready or failed. Once ready, request GET /v1/characters/{character_id}/export?download_type=vsplat for the signed vsplat_url — it’s valid for 1 hour and re-signed on every call, so re-request it rather than caching it. Add enhance=true to the create request for the higher-quality extraction pass (a different price — see below), or render_thumbnail=true to also get a thumbnail_url back from the same export call. See Pricing and retention for vsplat/enhance/all pricing.

Create Character (from Image)

See every request field, including model_precision, filter_low_quality, and joint_set.