# API reference

## Core
- [List Models](https://www.spicyapi.com/docs/api/list-models.md): `GET /v1/models`, List every model available to your account.
- [Get Account](https://www.spicyapi.com/docs/api/get-account.md): `GET /v1/account`, Read your balance and account status.
- [Erase an End User](https://www.spicyapi.com/docs/api/erase-end-user.md): `DELETE /v1/end-users/{user}`, Erase what was generated for one of your users, for their privacy requests.

## Images
- [Create Image](https://www.spicyapi.com/docs/api/create-image.md): `POST /v1/images/generations`, Generate images from a text prompt.
- [Edit Image](https://www.spicyapi.com/docs/api/edit-image.md): `POST /v1/images/edits`, Edit an image you generated earlier, guided by a prompt. One to six outputs per call.
- [List Images](https://www.spicyapi.com/docs/api/list-images.md): `GET /v1/images`, List the images your account has generated.
- [List Styles](https://www.spicyapi.com/docs/api/list-styles.md): `GET /v1/styles`, The art styles for `style` on image and video generation. No key needed.
- [List Image Actions](https://www.spicyapi.com/docs/api/list-image-actions.md): `GET /v1/images/actions`, The ready-made explicit stills for `action` on `spicy-image-action-1`. No key needed.

## Moderation
- [Check a Prompt](https://www.spicyapi.com/docs/api/moderations.md): `POST /v1/moderations`, Run a prompt or conversation through the same screen the generation endpoints use, without generating.
- [Report a Wrong Decline](https://www.spicyapi.com/docs/api/moderation-appeals.md): `POST /v1/moderations/appeals`, Tell us a declined request should have been allowed.

## Characters
- [Create Character](https://www.spicyapi.com/docs/api/create-character.md): `POST /v1/characters`, Save a reusable identity from your own generated images, to get the same person again across images, edits and video.
- [Import Character](https://www.spicyapi.com/docs/api/import-character.md): `POST /v1/characters/import`, Bring an existing AI-generated character over from your own platform. Only for verified businesses with an open import window.
- [List Characters](https://www.spicyapi.com/docs/api/list-characters.md): `GET /v1/characters`, Your saved characters, newest first.
- [Delete Character](https://www.spicyapi.com/docs/api/delete-character.md): `DELETE /v1/characters/{id}`, Remove a saved character. Its reference sheet stays in your image library.
- [Add Character View](https://www.spicyapi.com/docs/api/add-character-view.md): `POST /v1/characters/{id}/views`, Add one of your own images of this person from another angle (from behind, a pose, a close-up), so the body stays the same in every shot.
- [Delete Character View](https://www.spicyapi.com/docs/api/delete-character-view.md): `DELETE /v1/characters/{id}/views/{view_id}`, Remove a body view from a character. The image stays in your library.

## Audio
- [Create Speech](https://www.spicyapi.com/docs/api/create-speech.md): `POST /v1/audio/speech`, Turn text into speech. Returns a durable audio URL you can pass straight to video generation as `audio_url`, or streams the audio as it is synthesized.
- [Create Transcription](https://www.spicyapi.com/docs/api/create-transcription.md): `POST /v1/audio/transcriptions`, Turn speech into text: voice notes, clips and call recordings.
- [Create Voice](https://www.spicyapi.com/docs/api/create-voice.md): `POST /v1/voices`, Clone a voice from one of your clips with the speaker's consent (voice design is paused). Custom voices are spoken by `spicy-voice-1-custom`.
- [List Voices](https://www.spicyapi.com/docs/api/list-voices.md): `GET /v1/voices`, Every preset voice with the models that speak it, then your designed and cloned voices, newest first.
- [Delete Voice](https://www.spicyapi.com/docs/api/delete-voice.md): `DELETE /v1/voices/{id}`, Delete one of your designed or cloned voices.
- [Upload Audio](https://www.spicyapi.com/docs/api/upload-audio.md): `POST /v1/audio`, Upload a short audio clip for lip-sync and audio-guided video. The clip is transcribed and screened before it can be used.
- [List Audio](https://www.spicyapi.com/docs/api/list-audio.md): `GET /v1/audio`, Your audio clips, uploaded and generated, newest first.
- [Delete Audio](https://www.spicyapi.com/docs/api/delete-audio.md): `DELETE /v1/audio/{id}`, Forget a clip so it can no longer be used as a video input.

## Video
- [Create Video](https://www.spicyapi.com/docs/api/create-video.md): `POST /v1/videos/generations`, Start a video generation. Returns a task to poll.
- [Get Video Task](https://www.spicyapi.com/docs/api/get-video-task.md): `GET /v1/videos/tasks/{id}`, Check a video task and collect the finished clip.
- [Edit Video](https://www.spicyapi.com/docs/api/create-video-edit.md): `POST /v1/videos/edits`, Edit a clip you generated from a prompt (outfit, style, lighting, props), or transfer a clip's motion onto the person in one of your images. Returns a task to poll.
- [List Motions](https://www.spicyapi.com/docs/api/list-motions.md): `GET /v1/videos/motions`, The curated motion clips for motion transfer on `spicy-animate-1`. No key needed.
- [List Actions](https://www.spicyapi.com/docs/api/list-actions.md): `GET /v1/videos/actions`, The ready-made sex acts for `action` on `spicy-motion-3` and `spicy-motion-3-fast`. No key needed.

## Chat
- [Create Chat Completion](https://www.spicyapi.com/docs/api/chat-completions.md): `POST /v1/chat/completions`, OpenAI-compatible uncensored chat and role-play, with streaming.

## Embeddings
- [Create Embeddings](https://www.spicyapi.com/docs/api/create-embeddings.md): `POST /v1/embeddings`, Turn text, or images from your own library, into vectors for memory, search, recommendations and near-duplicate detection. OpenAI-compatible.

## Live calls
- [Create Live Call Session](https://www.spicyapi.com/docs/api/create-realtime-session.md): `POST /v1/realtime/sessions`, Start a live voice call with a companion: returns a one-time WebSocket URL your client (a browser too) connects to, without ever seeing your API key.
- [Live Call WebSocket](https://www.spicyapi.com/docs/api/realtime-websocket.md): `GET /v1/realtime`, The call itself: a WebSocket (wss://) opened with the session ticket. Send microphone audio, receive the persona's voice and transcripts as JSON events.

OpenAPI 3.1: https://www.spicyapi.com/openapi.json. Everything in one file: https://www.spicyapi.com/llms-full.txt.
