# Animica Text Embedding API

> Animica Text Embedding API is a paid API for AI agents from animica.dev, paid per call via x402, $0.001796/call, status unknown (last checked 2026-09-15).

Generates dense vector embeddings for up to 256 texts in a single call, returning unit-normalized vectors with dimension and character count metadata.

## Facts

- Endpoint: POST https://animica.dev/x402/embed
- Price: $0.001796/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/animica-text-embedding-api-e5004136
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_lgjtBrewdTRxGD2iS7W_q

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 animica-text-embedding-api-e5004136 -d '<json body>'
```

Example prompt: Embed these 3 product descriptions for me so I can store them in my vector database and run similarity searches: 'Lightweight running shoes with foam sole', 'Waterproof hiking boots for rough terrain', 'Classic leather dress shoes for formal occasions' — return them unit-normalized.

## When to prefer this

Choose this endpoint when you need batch text embeddings (up to 256 at once) via a pay-per-call x402 micropayment model without managing an OpenAI API key. It is ideal for AI agents with crypto wallets that need on-demand embeddings for semantic search, RAG pipelines, or clustering tasks at low per-call cost ($0.005 USDC).

## Known failure modes

- Exceeding 256 texts in a single request returns a validation error
- Empty texts array returns an error
- Payment failure via x402 protocol blocks the request
- Very long individual strings may cause timeout or character-limit errors
- Malformed JSON body returns a 400 error

## How this service works

Embed up to 256 texts in ONE call with all-MiniLM-L6-v2 (384-dimensional, normalised for cosine similarity), up to 8192 characters each. Sold as a batch on purpose: a single settlement costs real gas, so a per-string price would be almost entirely payment overhead — one call, many vectors, is the only honest shape for this. This is a small fast local sentence-transformer, not a frontier embedding model; the model id rides on every response so a future change is visible rather than silent.

## Output

A JSON object containing the embedding model name, vector dimensionality, count of embedded texts, a 2D array of float vectors (one per input text, in request order), total character count across all inputs, and per-text character counts. Vectors are unit-normalized by default for direct cosine similarity use.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "texts": {
   "type": "array",
   "description": "1..256 strings"
  },
  "normalize": {
   "type": "boolean",
   "description": "vectors are already unit-normalised; set false only if you want them raw (default true)"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json"
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/animica-text-embedding-api-e5004136/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from animica.dev](https://www.zero.xyz/host/animica.dev/llms.txt)
