How to Turn One Image Into a 3D Model With Codex and fal

How to Turn One Image Into a 3D Model With Codex and fal

Aident AI

A translucent cobalt sheet passes through an amber aperture and rises into a coral faceted form.

How to Turn One Image Into a 3D Model With Codex and fal

The safest way to turn one product image into a 3D model with Codex is to use Aident Loadout to stage the image, inspect the current fal image-to-3D models, preflight one bounded request, and generate only after reviewing the quoted cost. On August 19, 2026, the active default was Hunyuan 3D Rapid. It accepted one front-view JPG, PNG, or WebP and produced a GLB model path plus preview data.

Treat the result as a generated draft, not a scan. A single image does not reveal the back, underside, scale, wall thickness, or hidden joints. The model must infer them. This workflow is useful for product previews, scene blocking, and concept validation, but it does not establish CAD accuracy, printability, clean deformation topology, or manufacturing dimensions.

Define "Usable" Before You Generate

Write the acceptance test before spending on a model. A practical first pass might require:

  • a GLB file that opens in your target viewer;

  • a recognizable front silhouette and major proportions;

  • no detached geometry or obvious holes in visible areas;

  • plausible, explicitly unverified hidden surfaces;

  • a texture or geometry-only result that matches the intended review; and

  • a saved record of the input, model endpoint, options, quote, and seed.

If the real requirement is a watertight printable part, an animation-ready character, or a dimensionally accurate replacement component, say so now. Image-to-3D can accelerate the blockout, but the acceptance test must include the downstream checks that the generator does not perform.

Prepare a Single-Object Input

The current Hunyuan 3D Rapid contract accepts a front-view image from 128 to 5,000 pixels, up to 8 MB, in JPG, PNG, or WebP format. fal recommends keeping the object on a simple background and filling more than half of the frame.

Use this input checklist:

  1. Crop tightly around one object.

  2. Keep every outer edge visible.

  3. Use a plain background with strong subject separation.

  4. Prefer even lighting over hard shadows or blown highlights.

  5. Remove unrelated props, hands, packaging, and text.

  6. Preserve the original file separately from the prepared input.

Do not manufacture extra views and present them as evidence of hidden geometry. If real left, right, or rear photos exist, choose a model whose current schema explicitly supports those views and keep them tied to the same object.

1. Check Aident Loadout and Vault

You need Codex or another coding agent with terminal access, the public aident CLI, and enough Aident credits for one generation. Install or update Aident with this exact instruction:

Follow https://aident.ai/SETUP.md

Then check the account and connected services:

aident account auth status
aident vault status

Expected result: the account is authenticated and the fal integration is available through Aident-managed access or a ready Vault connection. Do not paste a fal API key into the prompt, repository, or shell history.

2. Stage the Image Without Publishing It

fal URL inputs must be supplied through an Aident asset or temporary-file identifier. Passing an arbitrary remote URL directly into the generation payload is rejected at the shared runtime boundary.

Ask Codex to discover the temporary file upload Action by job, inspect its schema, and create an upload URL for the exact local image:

aident capabilities search \
  --query "upload a local image to Aident temporary file storage" \
  --types '["action"]' \
  --limit 5

Copy the exact matching Action name from discovery, inspect it, and use the returned upload command. Keep the signed upload URL in an environment variable as directed by the Action rather than printing it or placing it in a script. Temporary Aident files expire automatically and are not durable publication URLs.

Expected result: one temporary file ID for the prepared image. Record that ID privately for the generation request.

3. List the Current Image-to-3D Models

Do not assume the model name, input fields, or pricing stayed the same:

aident capabilities search \
  --query "list active fal image to 3D models with pricing and input fields" \
  --types '["action"]' \
  --limit 5

Choose the read-only result that lists image-to-3D models. Inspect its schema and run it with a narrow query for Hunyuan 3D Rapid.

On August 19, 2026, the live catalog reported fal-ai/hunyuan-3d/v3.1/rapid/image-to-3d as the default. Its required field was one front image. Optional controls were:

Control

Default

Meaning

PBR materials

Off

Add metallic, roughness, and normal material data

Geometry-only

Off

Produce an untextured white model; PBR is ignored and GLB is the default

Front image

Required

JPG, PNG, or WebP, 128 to 5,000 pixels, up to 8 MB

Those are dated catalog observations, not a permanent API contract. Re-list the models immediately before every generation.

4. Inspect and Preflight the Generation

Search separately for the write Action that runs an active fal image-to-3D model. Copy its exact discovered name and inspect the live input schema.

Build the smallest useful request around the temporary file or attached asset. Keep PBR off for the first shape review:

{
  "model": "fal-ai/hunyuan-3d/v3.1/rapid/image-to-3d",
  "asset_inputs": {
    "input_image_url": "<temporary-file-id>"
  },
  "model_input": {
    "enable_pbr": false,
    "enable_geometry": false
  }
}

Run aident capabilities preflight with the exact discovered Action name and that input. A representative single-asset preflight on August 19 returned a valid estimate of 22.5 Aident credits. Your quote can differ as models, pricing, and billing policy change.

Preflight success means the request is structurally valid and priced. It does not prove that the image is a good reconstruction input or that the provider will accept it.

5. Generate Only After Reviewing the Quote

The generation Action is a provider write and can spend credits. Confirm all of these before execution:

  • the selected endpoint is still active;

  • the staged file ID belongs to the intended image;

  • PBR and geometry-only settings match the acceptance test;

  • the preflight estimate is within your approved limit; and

  • no earlier call is still pending in Aident audit history.

Then execute the exact preflighted request. If Aident returns a confirmation or acknowledgement boundary, stop and review it. Credit approval and Action risk acknowledgement are separate controls; do not reuse one as the other.

Expected result: structured output containing the generated 3D model, a preview image, available model URLs, and the generation seed. Save the durable result into your project before any temporary URL expires.

6. Review the Model From More Than the Front

Open the GLB in a viewer that can rotate the object and inspect:

  1. front silhouette and proportions;

  2. left and right profiles;

  3. inferred rear and underside geometry;

  4. detached pieces, holes, or fused thin parts;

  5. texture seams and material response; and

  6. whether the result fits the intended polygon and file-size budget.

Mark hidden surfaces as inferred in the review record. A convincing front view is not proof that the whole object is correct.

If the silhouette fails, improve the crop or subject separation before adding PBR. If the shape passes but the material does not, run one controlled PBR iteration. Change one variable per attempt so the result explains what improved.

Common Failure Modes

Symptom

Likely boundary

Safe next step

Raw image URL is rejected

URL field bypassed Aident asset materialization

Use the temporary file ID through the exact asset input mapping

Object is flattened or incomplete

Subject is small, occluded, or poorly separated

Re-crop around one fully visible object on a plain background

Back or underside is implausible

A single view contains no evidence for hidden surfaces

Add real views through a model that explicitly supports them

PBR does nothing

Geometry-only mode is enabled

Disable geometry-only before testing PBR

Cost differs from an older example

Model pricing or billing inputs changed

Re-list models and preflight the exact normalized request

CLI appears silent after dispatch

A paid provider job may still be running

Inspect aident audit recent --limit 20 before any retry

GLB looks good but fails downstream

Topology, scale, or printability was never validated

Run task-specific Blender, engine, AR, or slicer checks before calling it done

Why This Workflow Is Safer

The model-list Action separates current provider facts from old examples. Asset materialization keeps private files and provider credentials out of the payload. Preflight binds the cost estimate to one normalized request. A review-first generation limits retries, while a recorded seed and acceptance test make the result reproducible enough to diagnose.

This guide owns the single-image-to-3D task. If your intended output is a generated video instead, use the separate Seedance video workflow with Codex and fal so model fields and review criteria do not get mixed.

Give Codex One Bounded 3D Task

Open Aident Loadout, attach one prepared product image, and ask Codex to check account and Vault status, discover the current fal image-to-3D model-list and generation Actions, inspect both schemas, stage only that image, select the current default Hunyuan 3D Rapid endpoint, preflight one non-PBR request, and stop for your approval before provider execution. Success means one reviewed GLB with the input, endpoint, options, quote, seed, and hidden-surface caveat recorded, with no provider key or signed URL exposed.

Sources

Refresh this guide when Aident changes asset materialization, capability discovery, preflight, acknowledgement, or audit behavior, or when fal changes the default image-to-3D model, supported inputs, pricing, or output contract.

Home

Home

Home

Integrations

Integrations

Integrations

Vault

Vault

Vault

Audit

Audit

Audit

Arana Grande

Arana Grande

Arana Grande

Free

Free

Free

30-day audit summary

30-day audit summary

30-day audit summary

Daily action-call volume and the latest receipts from the Loadout audit trail.

Daily action-call volume and the latest receipts from the Loadout audit trail.

Daily action-call volume and the latest receipts from the Loadout audit trail.

View Audit

View Audit

View Audit

Loadout usage

Loadout usage

Loadout usage

617 action calls in the last 30 days

617 action calls in the last 30 days

617 action calls in the last 30 days

May 19 - Jun 17

May 19 - Jun 17

May 19 - Jun 17

10 active days

10 active days

10 active days

Less

Less

Less

More

More

More

Recent activity

Recent activity

Recent activity

Latest action-call receipts from connected agents

Latest action-call receipts from connected agents

Latest action-call receipts from connected agents

Apr 23, 09:23 AM

Apr 23, 09:23 AM

Apr 23, 09:23 AM

Shopify

Shopify

Shopify

Creates Or Updates An Asset For A Theme

Creates Or Updates An Asset For A Theme

Creates Or Updates An Asset For A Theme

Success

Success

Success

Apr 23, 09:21 AM

Apr 23, 09:21 AM

Apr 23, 09:21 AM

Shopify

Shopify

Shopify

Update Products Param Product Id

Update Products Param Product Id

Update Products Param Product Id

Success

Success

Success

Apr 23, 08:53 AM

Apr 23, 08:53 AM

Apr 23, 08:53 AM

Shopify

Shopify

Shopify

Update Products Param Product Id

Update Products Param Product Id

Update Products Param Product Id

Failed

Failed

Failed

Apr 22, 22:13 PM

Apr 22, 22:13 PM

Apr 22, 22:13 PM

Shopify

Shopify

Shopify

Create Product Image

Create Product Image

Create Product Image

Success

Success

Success

Apr 22, 22:12 PM

Apr 22, 22:12 PM

Apr 22, 22:12 PM

Shopify

Shopify

Shopify

Create Product Image

Create Product Image

Create Product Image

Success

Success

Success

Connected integration coverage

Connected integration coverage

Connected integration coverage

162

162

162

of 753 accessible connected

of 753 accessible connected

of 753 accessible connected

Callable actions

Callable actions

Callable actions

1,126

1,126

1,126

Vault credentials

Vault credentials

Vault credentials

8

8

8

Explore what's possible

Explore what's possible

Explore what's possible

See all Integrations

See all Integrations

See all Integrations

Google Ads

Google Ads

Google Ads

All available Goolge Ads tools via...

All available Goolge Ads tools via...

All available Goolge Ads tools via...

X (twitter)

X (twitter)

X (twitter)

All available X tools via...

All available X tools via...

All available X tools via...

Github

Github

Github

All available Github tools via...

All available Github tools via...

All available Github tools via...

Notion

Notion

Notion

All available Notion tools via...

All available Notion tools via...

All available Notion tools via...

Slack

Slack

Slack

All available Slack tools via...

All available Slack tools via...

All available Slack tools via...

Firecrawl

Firecrawl

Firecrawl

All available Firecrawl tools via...

All available Firecrawl tools via...

All available Firecrawl tools via...

753 integrations are available for loadouts.

753 integrations are available for loadouts.

753 integrations are available for loadouts.

The one tool

for every tool

your agent needs.

Give any AI agent real capabilities in seconds. Connect 27,000+ tools once, skip the setup headache, and let your agents execute.

Try Aident Loadout

Empower your Codex or OpenClaws to get real jobs done. Connect 27,000+ tools in one prompt, and let your agents deliver real results.

Try Aident Loadout

Empower your Codex or OpenClaws to get real jobs done. Connect 27,000+ tools in one prompt, and let your agents deliver real results.

Try Aident Loadout

Empower your Codex or OpenClaws to get real jobs done. Connect 27,000+ tools in one prompt, and let your agents deliver real results.