---
title: "POST /v1/embeddings"
method: POST
path: "/v1/embeddings"
---

# POST /v1/embeddings

`POST /v1/embeddings`

Create embeddings for text using OpenAI-compatible and alternative embedding models

## Request body

- EmbeddingRequest
  - `input` union, required — Text to embed - single string or array of up to 2048 strings
    - string — Single text string to embed
    - string[] — Array of text strings to embed (max 2048)
  - `model` string, required — ID of the embedding model to use
  - `encoding_format` 'float' | 'base64' — Format for embeddings
  - `dimensions` integer — Reduce embedding dimensions (only for supported models)
  - `user` string — Optional identifier for tracking usage

## Response `200`

Embedding response

- EmbeddingResponse
  - `object` string, required — Always 'list' for embeddings
  - `data` object[], required — Array of embedding objects
    - `object` string, required — Always 'embedding'
    - `index` integer, required — Index of this embedding in the batch
    - `embedding` union, required
      - number[] — Embedding vector as array of floats
      - string — Base64-encoded embedding vector
  - `model` string, required — Model used for embeddings
  - `usage` object, required
    - `prompt_tokens` integer, required — Number of tokens in the input
    - `total_tokens` integer, required — Total tokens processed

## Other responses

- `400` — Bad Request - Invalid parameters
- `401` — Unauthorized - Invalid or missing API key
- `429` — Rate limit exceeded
- `500` — Internal Server Error

---

[API](https://skmtc.dev/nano-gpt/apis/nanogpt-api.md) · [All operations](https://skmtc.dev/nano-gpt/apis/nanogpt-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/nano-gpt/nanogpt-api/revisions/584e96d146b0/schema)
