# Vimmerse Image Credit Estimator

> Vimmerse Image Credit Estimator is a paid API for AI agents from agents.vimmerse.net, paid per call via MPP, price unknown, status unknown (last checked 2026-10-30).

Returns the exact credit cost of an image generation request (by app, model option, quantity, and prompt) without actually generating anything.

## Facts

- Endpoint: POST https://agents.vimmerse.net/v2/image/estimate-credits?utm_source=zero.xyz
- Price: price unknown
- Payment: MPP
- Status: unknown
- Last checked: 2026-10-30
- Activations on Zero: 0
- Provider: agents.vimmerse.net
- Website: https://agents.vimmerse.net
- Canonical page: https://www.zero.xyz/c/agents-vimmerse-net-vimmerse-image-credit-estimator-8a6dec09
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_FV8LsqOXohjIvUrAmrEZT

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability agents-vimmerse-net-vimmerse-image-credit-estimator-8a6dec09 -d '<json body>'
```

Example prompt: Before I generate 3 images using Vimmerse's text-to-image route with the NanoBanana option, can you check exactly how many credits that would cost for a prompt like 'stylized product photo of sneakers on a white background'?

## When to prefer this

Use this endpoint whenever you need to preview the credit cost of an image generation request before committing — especially useful for budget validation in automated pipelines, comparing costs across model options or app_name routes, or letting users approve spending before execution. Prefer this over the actual generation endpoints when the goal is purely cost estimation with no side effects.

## Known failure modes

- Invalid or unknown `option` value returns a 422 or error response
- Missing required `option` field causes a validation error
- `quantity` outside the range 1–4 returns a validation error
- Invalid `app_name` string may return an error or default to text-to-image
- Network timeout on the POST request
- Malformed JSON body returns a 400 Bad Request

## How this service works

Returns how many credits an image generation request would charge for the given `app_name`, `option`, `quantity`, and optional `prompt`, **without** creating an asset.

Uses the same billing rules as **POST /v2/image/** generation routes. Send **Content-Type: application/json**.

### Example

```python
import requests

url = "https://api.vimmerse.net/v2/image/estimate-credits"
headers = {"Content-Type": "application/json"}
payload = {
    "app_name": "text-to-image",
    "option": "NanoBanana",
    "quantity": 2,
    "prompt": "Product photo of running shoes on a gradient background",
}

response = requests.post(url, headers=headers, json=payload, timeout=30)
response.raise_for_status()
print(response.json())
```

## Output

A JSON object containing `total_credits` (integer showing how many credits the request would consume) and `breakdown` (an object with step-by-step pricing components explaining how the total was calculated), without creating any asset or charging any credits.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "title": "EstimateImageCreditsRequest",
 "required": [
  "option"
 ],
 "properties": {
  "option": {
   "type": "string",
   "title": "Generation Option",
   "description": "Model/tool `option` on the target image endpoint (e.g. NanoBanana, AutoI)."
  },
  "prompt": {
   "type": "string",
   "title": "Prompt",
   "default": "",
   "description": "Used for length-based pricing when applicable."
  },
  "app_name": {
   "type": "string",
   "title": "App Name",
   "default": "text-to-image",
   "description": "Internal route id stored on the asset record (same as the target POST /image/* route). Available values: `text-to-image` (default), `image-to-image`, `reimagine`, `face-swap`, `replace-bg`, `edit-image`, `image-elements`, `try-on`, `scene-image`, `upload-image` (0 credits)."
  },
  "quantity": {
   "type": "integer",
   "title": "Quantity",
   "default": 1,
   "maximum": 4,
   "minimum": 1
  }
 },
 "description": "Body for POST /image/estimate-credits (pricing fields shared across image generation routes)."
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "title": "EstimateAssetCreditsResponse",
 "required": [
  "total_credits",
  "breakdown"
 ],
 "properties": {
  "breakdown": {
   "type": "object",
   "title": "Breakdown",
   "description": "Step-by-step pricing components.",
   "additionalProperties": true
  },
  "total_credits": {
   "type": "integer",
   "title": "Total Credits",
   "description": "Total credits that would be charged."
  }
 },
 "description": "Credit estimate for asset generation (anonymous; no user balance)."
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/agents-vimmerse-net-vimmerse-image-credit-estimator-8a6dec09/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from agents.vimmerse.net](https://www.zero.xyz/host/agents.vimmerse.net/llms.txt)
