360° Panorama Generation API

Call one REST endpoint to generate a seamless 360° panorama from a text prompt or reference photos — get back a permanently hosted equirectangular image plus a shareable interactive viewer URL. Built for apps, games, virtual tours, and any pipeline that needs 360° image generation on demand.

Text to 360 Panorama API

Turn a text prompt into a 360° panorama in three REST calls — no SDK to install, no queue to manage yourself.

Create a panorama task

POST /api/v1/panoramas with a prompt and a resolution (1k, 2k, or 4k). Credits are reserved immediately and the endpoint responds with 202 Accepted and a task id — the panorama generation API runs the render in the background.

Poll for the result

GET /api/v1/panoramas/{id} every few seconds until status flips to succeeded (or failed). Generation takes tens of seconds, so this panorama API is task-based by design — safe to call from serverless functions with short timeouts.

Use the output

On success the response includes image_url — a permanent, hosted equirectangular PNG — and viewer_url, a ready-to-share interactive 360° viewer page. Embed the viewer, download the image, or feed the URL into your own render pipeline.

Create a task with a single POST request:

curl -X POST https://panoramagenerator.com/api/v1/panoramas \
  -H "Authorization: Bearer sk-..." \
  -H "Content-Type: application/json" \
  -d '{"prompt": "sunset over a tropical beach, palm trees", "resolution": "2k"}'

Image to Panorama: Convert Photos via API

Prefer to start from a real photo instead of a prompt? The same panorama generation API accepts reference images and extends them into a full 360° scene.

Upload up to three reference photos with a POST to /api/v1/images (JPEG, PNG, or WebP, up to 10MB each) and the endpoint returns permanent image_urls. Pass those URLs into /api/v1/panoramas as image_urls alongside an optional short prompt to steer the result — the reference photo carries most of the signal, so the prompt can be brief or omitted entirely. Already hosting the source photo somewhere public and https:// reachable? Skip the upload step and point image_urls straight at it. This is the same photo-to-panorama pipeline behind our Photo to 360° Converter, exposed as a plain REST call so you can convert a batch of property photos, product shots, or travel pictures into panoramas from a script or CI job instead of clicking through a browser tool.

AI 360 Image Generation for Apps, Games & VR

One panorama generation API, wired into whatever renders 360° content in your product.

Virtual tours & real estate apps

Generate a walkable-feeling 360° backdrop for a listing, showroom, or venue in seconds — no photographer or 360° camera needed for placeholder or concept scenes.

Games & game engines

Call the API from a build pipeline or level-design tool to generate skyboxes and background panoramas on demand, then wire the equirectangular output into Unity, Unreal, or your own renderer.

VR / AR experiences

Feed the returned equirectangular image straight into a WebXR or native VR viewer as an immersive environment — handy for prototyping scenes before commissioning real 360° photography.

Mobile & web apps

Add AI 360 image generation as a feature inside your own product — the async task API and plain JSON responses drop into any backend language, no browser SDK required.

E-commerce & product visualization

Generate a 360° environment around a product render for a configurator or listing page, then drop in the hosted viewer_url as a ready-made embed.

Automation & bulk generation

Script batch generation for a content pipeline — a CMS job, a marketing tool, or a design system that needs many panoramas without a human touching a UI.

Skybox & HDRI Pipelines

The panorama API is also the generation core behind two more specialized pipelines, for when a plain equirectangular panorama isn't quite the format you need.

If you're comparing this to a skybox ai api like Blockade Labs, the same /api/v1/panoramas endpoint is the foundation both our dedicated Skybox Generator (game-engine-ready cubemaps and seamless 360° wraps) and our AI HDRI Generator (Radiance .hdr export for Blender, Unreal, and Unity lighting) build on. Call the panorama API directly when a 2:1 equirectangular PNG and a hosted viewer URL are all your pipeline needs. Radiance .hdr export is currently a web-app-only feature — it is not yet part of API v1 — so for an .hdr file today, generate through the AI HDRI Generator in the browser and use the panorama API for everything upstream of that step.

Skybox Generator

Game-ready 360° skyboxes and in-browser cubemap conversion, for engines that expect six cube faces instead of one equirectangular image.

AI HDRI Generator

The same generation core exported as a Radiance .hdr container for physically based lighting in Blender, Unreal, and Unity — see AI HDRI Generator.

API Pricing in Credits

The panorama API bills against the same credit balance as the web app — no separate API plan, no per-call invoice.

1K

1024 × 512

4 credits

2K

2048 × 1024

6 credits

4K

3840 × 1920

10 credits

Credits are reserved the moment a task is created and refunded automatically if generation ends up failed — a broken task never costs you anything. Check your remaining balance anytime with GET /api/v1/credits. API keys are available on any paid plan; see pricing for current credit bundles.

Rate Limits & Error Codes

Real HTTP status codes plus stable, machine-readable error codes, so you can build actual retry logic instead of guessing.

Write requests

10 / minute per API key — applies to POST /panoramas and POST /images.

Read requests

60 / minute per API key — applies to GET /panoramas/{id} and GET /credits.

Concurrent tasks

5 panorama tasks in processing at once per account, shared across all of that account's API keys.

StatusCodeMeaning
400invalid_requestMalformed JSON, more than 3 image_urls, a bad image URL, an invalid resolution, or a prompt under 3 characters with no image_urls.
401invalid_api_keyMissing or invalid Bearer API key (the x-api-key header works too).
402insufficient_creditsNot enough credits for the requested resolution — purchase more and retry.
404not_foundNo task exists with this id for the authenticated account.
429rate_limitedPer-minute rate limit exceeded — retry after the seconds given in the retry-after header.
429too_many_active_tasksThe account already has 5 tasks processing — wait for one to finish; no retry-after header is sent.
502upstream_errorThe upstream generation provider errored or timed out — safe to retry.
500internal_errorUnexpected server error — safe to retry with backoff.

Panorama API FAQ

How do I generate a 360° panorama with an API?

Send a POST request to /api/v1/panoramas with a text prompt and a resolution (1k, 2k, or 4k). It reserves credits immediately and returns a task id with status processing. Poll GET /api/v1/panoramas/{id} every few seconds until status is succeeded, then read image_url and viewer_url from the response. The quickstart section above has a full curl example.

Is there an API for AI 360 image generation?

Yes. The panorama generation API exposes the same AI 360 image generation engine as a plain REST endpoint, so you can call it from a backend, CI job, or automation script instead of a browser UI. If you're a non-developer looking for a point-and-click AI 360 image generator instead, use the web app at 360 Image Maker.

How do I convert a photo to a 360 panorama programmatically?

Upload up to 3 reference photos with POST /api/v1/images (JPEG, PNG, or WebP, up to 10MB each) to get back permanent image_urls, or point straight at your own https:// photo URL. Pass image_urls into POST /api/v1/panoramas along with an optional short prompt — the photo carries most of the signal, so the prompt can be brief or omitted. This is the same pipeline behind Photo to 360° Converter, available as a REST call for scripts and pipelines.

How much does the panorama API cost?

The API bills the same credits as the web app: 4 credits at 1K, 6 at 2K, and 10 at 4K resolution. There's no separate API subscription — any paid plan unlocks API keys. See pricing for current credit bundle prices.

What resolution and format are the generated panoramas?

Every panorama is a 2:1 equirectangular image at your chosen resolution — 1K, 2K, or 4K — hosted at a permanent image_url, plus a shareable viewer_url for the interactive 360° viewer. Radiance .hdr export is a separate, web-app-only feature for now (see the AI HDRI Generator) and isn't part of API v1.

Do failed generations cost credits?

No. Credits are reserved when the task is created and refunded automatically the moment a task's status becomes failed — you're only charged for panoramas that actually succeed.

Related tools

Start generating 360° panoramas programmatically

Free credits on signup let you try the web app first; any paid plan unlocks API keys for the panorama generation API.

View pricing