Checked against the live product page Hyper3D Editorial 路 Developer guide Updated September 16, 2026

Rodin AI API Guide

The Rodin API puts the same Gen-2.5 pipeline behind the web app on an HTTP endpoint: submit a prompt or reference images, poll until the job finishes, download the mesh. Here's authentication, the request/response flow, every parameter group, credit costs, error codes, and working code in three languages.

Base URL: api.hyper3d.com/api/v2 Auth: Bearer API key Plan required: Business or higher
5output geometry formats, one parameter
0.5credits per standard-tier generation
Freestatus polling & downloads
120-240requests/min on Business
Overview

The web app's pipeline, callable from code

The Rodin API exposes the exact same Gen-2.5 generation pipeline that powers text-to-3D and image-to-3D in the browser, just reachable over HTTP instead of a UI. That makes it the right layer for anything that shouldn't be a person clicking "generate" one asset at a time: turning a spreadsheet of product names into a batch of models, wiring generation into a Blender, Unity or Unreal plugin, or running Rodin as one step inside a larger internal pipeline.

It's built for programmatic and batch use specifically - async job submission, free status polling, and a download step that returns URLs rather than streaming a file inline, so it fits naturally into a queue-based system rather than a single synchronous request.

Request flow

Three steps: submit, poll, download

  1. Submit a job. POST /rodin with multipart/form-data - a prompt, up to 5 reference images, or both - and get back a task UUID.
  2. Poll for status. Check the status endpoint with that UUID until the job reports complete. Polling is free and doesn't touch your credit balance.
  3. Download the result. POST /download with the task UUID returns a JSON array of URLs and filenames for the generated geometry and textures - also free.
Plans & access

Which plan unlocks the API

API access is gated by plan, separately from what a plan allows in the web app. Free and Creator can generate through the browser but can't call the API - Business is the entry point for programmatic access.

PlanAPI accessNotes
FreeNoWeb app only, 10 starter credits
CreatorNoWeb app only, ~60 models/month included
BusinessYes~120-240 requests/min, 7-day result retention
EnterpriseYesCustom SLA (99.9%), custom endpoints, indefinite retention, GDPR/ISO 27001

Exact requests-per-minute ceilings for Business aren't published in a hard SLA the way Enterprise's are - treat 120-240 RPM as the working range rather than a contractual number. Full plan pricing is on the pricing page.

Endpoints

Three calls cover the whole flow

EndpointMethodPurposeCredit cost
/rodinPOSTSubmit a generation job (text and/or up to 5 images), returns a task UUID0.5-1.0 credits
/statusGETPoll a task UUID for progress and completionFree
/downloadPOSTRetrieve download URLs and filenames for a completed taskFree
Request parameters

What you can set on a generate call

Parameters on POST /rodin fall into four groups. Nothing here needs to be set for a working call - a bare prompt or a single image is enough - but each group gives you the same controls available in the web app.

Input

  • images - up to 5 files for image-to-3D, combinable with a prompt
  • prompt - required for text-to-3D, optional alongside images
  • image_label - directional hints per image (F/FL/FR/L/R/B/BL/BR/U/D/?)
  • use_original_alpha - boolean, preserves source transparency

Generation config

  • tier - Extreme-Low, Low, Medium, High or Extreme-High effort
  • quality - high / medium / low / extra-low
  • mesh_mode - Raw (triangular) or Quad topology
  • geometry_file_format - glb / usdz / fbx / obj / stl
  • geometry_instruct_mode - faithful or creative interpretation of the prompt
  • is_micro - micro-detail geometry, Extreme-High tier only

Materials & texture

  • material - PBR / Shaded / All / None
  • texture_mode - legacy / extreme-low / low / medium / high
  • hd_texture - boolean, higher-resolution textures
  • texture_delight - removes baked-in lighting from the texture

Advanced

  • seed - 0-65535, for reproducible results
  • TAPose - boolean, outputs a rigging-friendly T/A pose
  • bbox_condition - array [Width, Height, Length] to constrain proportions
  • preview_render - boolean, returns a quick preview render
  • addons - array, e.g. HighPack for 4K textures (+1 credit)
Code examples

Minimal text-to-3D call, three ways

Each example submits a prompt-only job and polls until it's done - the shortest path to a first result. Swap in your own API key and prompt to run it.

cURL
# 1. submit the job
curl -X POST https://api.hyper3d.com/api/v2/rodin \
  -H "Authorization: Bearer $RODIN_API_KEY" \
  -F "prompt=a weathered brass compass, game-ready prop" \
  -F "tier=Medium"

# 2. poll until status is complete
curl https://api.hyper3d.com/api/v2/status/<task_uuid> \
  -H "Authorization: Bearer $RODIN_API_KEY"
Python
import requests, time

headers = {"Authorization": f"Bearer {API_KEY}"}

resp = requests.post(
    "https://api.hyper3d.com/api/v2/rodin",
    headers=headers,
    data={"prompt": "a weathered brass compass, game-ready prop", "tier": "Medium"},
)
task_id = resp.json()["uuid"]

while True:
    status = requests.get(f"https://api.hyper3d.com/api/v2/status/{task_id}", headers=headers).json()
    if status["status"] == "complete":
        break
    time.sleep(3)

files = requests.post(
    "https://api.hyper3d.com/api/v2/download",
    headers=headers, json={"task_uuid": task_id},
).json()
Node.js
const form = new FormData();
form.append("prompt", "a weathered brass compass, game-ready prop");
form.append("tier", "Medium");

const submit = await fetch("https://api.hyper3d.com/api/v2/rodin", {
  method: "POST",
  headers: { Authorization: `Bearer ${API_KEY}` },
  body: form,
});
const { uuid } = await submit.json();

// poll /status/{uuid} until status === "complete", then:
const files = await fetch("https://api.hyper3d.com/api/v2/download", {
  method: "POST",
  headers: { Authorization: `Bearer ${API_KEY}`, "Content-Type": "application/json" },
  body: JSON.stringify({ task_uuid: uuid }),
}).then(r => r.json());
Credits & pricing

What each call actually costs

The API draws from the same credit pool as your web account - there's no separate API balance to manage. Credits are spent on generation only; checking status and downloading are always free, so you can poll as often as you like without worrying about cost.

ActionCost
Standard tiers (Extreme-Low through High)0.5 credits per generation
Extreme-High tier1.0 credit per generation
HighPack add-on (4K textures)+1 credit
Status checks & downloadsFree

Direct credits beyond your plan allowance are $1.50 each and don't expire. Full breakdown of plans and included credits is on the pricing page.

Error codes

What comes back when a call fails

Errors return a code you can branch on programmatically rather than just an HTTP status:

NO_ACTIVE_SUBSCRIPTION SUBSCRIPTION_PLAN_TOO_LOW INSUFFICIENT_FUND INVALID_REQUEST USER_NOT_FOUND GROUP_NOT_FOUND PERMISSION_DENIED UNKNOWN

SUBSCRIPTION_PLAN_TOO_LOW is the one you'll hit if you try to call the API from a Free or Creator account - upgrade to Business to clear it. INSUFFICIENT_FUND means your credit balance is short; top up or wait for the next billing cycle.

Use cases

What people build on top of the API

Batch generation

Turn a spreadsheet of names or prompts into hundreds of models unattended

DCC & engine plugins

Generate without leaving Blender, Unity or Unreal

Pipeline integration

Drop generation into an existing asset pipeline as one automated step

Studio-scale deployment

Enterprise SLA and custom endpoints for production pipelines

See a full production example in the game development workflow guide, and the Blender integration guide for the plugin side of a DCC pipeline.

See it in action

Generation pipeline walkthroughs

No dedicated API walkthrough is published yet, but these cover the same Gen-2.5 pipeline the API calls under the hood - useful for understanding what a given parameter combination actually produces.

Thumbnail: Hyper3D's Rodin Gen-2.5 Tutorial

Prompt to production-ready model

Shows the effort tiers and export options the API's tier and geometry_file_format parameters control.

Watch on YouTube ↗
Thumbnail: How to Generate 3D Models for Game Development with Hyper3D Rodin

Generation for a production pipeline

The kind of repeatable, batch-friendly workflow the API is built to automate.

Watch on YouTube ↗
Thumbnail: AI 3D Model Generator - Create Professional 3D Models With Rodin Gen 2.5

Full generation walkthrough

End-to-end view of the workspace, mirrored by the submit/poll/download flow in the API.

Watch on YouTube ↗
Thumbnail: Rodin AI Review by Hyper3D AI 2026 - Does It Actually Deliver?

Independent quality review

Output quality context for judging results coming back from an automated batch.

Watch on YouTube ↗
FAQ

Rodin API: frequently asked questions

What is the Rodin API?+

The Rodin API exposes the same Gen-2.5 generation pipeline as the web app - text-to-3D, image-to-3D and PBR texturing - over HTTP, so it can be called programmatically for batch jobs, plugins and internal pipelines instead of generating through the browser one model at a time.

Which plan do I need for API access?+

API access starts at the Business plan. Free and Creator plans can use the web app but not the API. Business includes roughly 120-240 requests per minute; Enterprise adds a custom SLA, custom endpoints and indefinite retention.

How does authentication work?+

Every request carries your API key as a Bearer token in the Authorization header. There's no separate OAuth flow - generate a key from your account once you're on a Business or Enterprise plan and attach it to each call.

Do polling and downloading cost credits?+

No. Only the generate call spends credits - 0.5 credits at standard effort tiers, 1.0 at Extreme-High, plus 1 credit for the HighPack texture add-on. Checking status and downloading results are free, and the API shares the same credit pool as the web app.

What output formats does the API support?+

Five geometry formats through one parameter: GLB (default), USDZ, FBX, OBJ and STL. Material and texture options - PBR, HD textures, delighting - are configured independently of the geometry format.