> ## Documentation Index
> Fetch the complete documentation index at: https://docs.deapi.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# API Overview

> Complete reference of all deAPI endpoints

All endpoints use base URL `https://api.deapi.ai` and require authentication via `Authorization: Bearer <API_KEY>` header.

<Note>
  Each generation/analysis endpoint has a corresponding `/price-calculation` endpoint to estimate costs before execution.
</Note>

## Generation

Create images, videos, audio, and embeddings from text or images.

| Method | Endpoint                                         | Description                         | Docs                                            |
| ------ | ------------------------------------------------ | ----------------------------------- | ----------------------------------------------- |
| `POST` | `/api/v1/client/txt2img`                         | Generate image from text prompt     | [→](/api/v1/generation/text-to-image)           |
| `POST` | `/api/v1/client/txt2img/price-calculation`       | Calculate text-to-image price       | [→](/api/v1/generation/text-to-image-price)     |
| `POST` | `/api/v1/client/txt2video`                       | Generate video from text prompt     | [→](/api/v1/generation/text-to-video)           |
| `POST` | `/api/v1/client/txt2video/price-calculation`     | Calculate text-to-video price       | [→](/api/v1/generation/text-to-video-price)     |
| `POST` | `/api/v1/client/img2video`                       | Generate video from image (animate) | [→](/api/v1/generation/image-to-video)          |
| `POST` | `/api/v1/client/img2video/price-calculation`     | Calculate image-to-video price      | [→](/api/v1/generation/image-to-video-price)    |
| `POST` | `/api/v1/client/aud2video`                       | Generate video from audio + prompt  | [→](/api/v1/generation/audio-to-video)          |
| `POST` | `/api/v1/client/aud2video/price-calculation`     | Calculate audio-to-video price      | [→](/api/v1/generation/audio-to-video-price)    |
| `POST` | `/api/v1/client/txt2audio`                       | Generate speech from text (TTS)     | [→](/api/v1/generation/text-to-speech)          |
| `POST` | `/api/v1/client/txt2audio/price-calculation`     | Calculate text-to-speech price      | [→](/api/v1/generation/text-to-speech-price)    |
| `POST` | `/api/v1/client/txt2embedding`                   | Generate embeddings from text       | [→](/api/v1/generation/text-to-embedding)       |
| `POST` | `/api/v1/client/txt2embedding/price-calculation` | Calculate embedding price           | [→](/api/v1/generation/text-to-embedding-price) |
| `POST` | `/api/v1/client/txt2music`                       | Generate music from text            | [→](/api/v1/generation/text-to-music)           |
| `POST` | `/api/v1/client/txt2music/price-calculation`     | Calculate text-to-music price       | [→](/api/v1/generation/text-to-music-price)     |

## Analysis

Extract text and transcriptions from images, videos, and audio.

| Method | Endpoint                                         | Description                                                  | Docs                                             |
| ------ | ------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------ |
| `POST` | `/api/v1/client/img2txt`                         | Extract text from image (OCR)                                | [→](/api/v1/analysis/image-to-text)              |
| `POST` | `/api/v1/client/img2txt/price-calculation`       | Calculate OCR price                                          | [→](/api/v1/analysis/image-to-text-price)        |
| `POST` | `/api/v1/client/vid2txt`                         | Transcribe video from URL (YouTube, X, TikTok, Twitch, Kick) | [→](/api/v1/analysis/video-to-text)              |
| `POST` | `/api/v1/client/vid2txt/price-calculation`       | Calculate video transcription price                          | [→](/api/v1/analysis/video-to-text-price)        |
| `POST` | `/api/v1/client/aud2txt`                         | Transcribe X Spaces audio                                    | [→](/api/v1/analysis/audio-to-text-spaces)       |
| `POST` | `/api/v1/client/aud2txt/price-calculation`       | Calculate X Spaces transcription price                       | [→](/api/v1/analysis/audio-to-text-spaces-price) |
| `POST` | `/api/v1/client/videofile2txt`                   | Transcribe uploaded video file                               | [→](/api/v1/analysis/upload-video-file)          |
| `POST` | `/api/v1/client/videofile2txt/price-calculation` | Calculate video file transcription price                     | [→](/api/v1/analysis/upload-video-file-price)    |
| `POST` | `/api/v1/client/audiofile2txt`                   | Transcribe uploaded audio file                               | [→](/api/v1/analysis/upload-audio-file)          |
| `POST` | `/api/v1/client/audiofile2txt/price-calculation` | Calculate audio file transcription price                     | [→](/api/v1/analysis/upload-audio-file-price)    |
| `POST` | `/api/v1/client/transcribe`                      | Unified transcription (URL or file upload)                   | [→](/api/v1/analysis/transcribe)                 |
| `POST` | `/api/v1/client/transcribe/price-calculation`    | Calculate unified transcription price                        | [→](/api/v1/analysis/transcribe-price)           |

## Transformation

Modify existing images and videos.

| Method | Endpoint                                       | Description                          | Docs                                                 |
| ------ | ---------------------------------------------- | ------------------------------------ | ---------------------------------------------------- |
| `POST` | `/api/v1/client/img2img`                       | Transform image with text prompt     | [→](/api/v1/transformation/image-to-image)           |
| `POST` | `/api/v1/client/img2img/price-calculation`     | Calculate image transformation price | [→](/api/v1/transformation/image-to-image-price)     |
| `POST` | `/api/v1/client/img-rmbg`                      | Remove image background              | [→](/api/v1/transformation/background-removal)       |
| `POST` | `/api/v1/client/img-rmbg/price-calculation`    | Calculate background removal price   | [→](/api/v1/transformation/background-removal-price) |
| `POST` | `/api/v1/client/img-upscale`                   | Upscale image resolution             | [→](/api/v1/transformation/image-upscale)            |
| `POST` | `/api/v1/client/img-upscale/price-calculation` | Calculate image upscale price        | [→](/api/v1/transformation/image-upscale-price)      |
| `POST` | `/api/v1/client/videos/replace`                | Replace character in video (animate) | [→](/api/v1/transformation/video-replace)            |
| `POST` | `/api/v1/client/videos/replace/price`          | Calculate video replace price        | [→](/api/v1/transformation/video-replace-price)      |
| `POST` | `/api/v1/client/vid-upscale`                   | Upscale video resolution             | [→](/api/v1/transformation/video-upscale)            |
| `POST` | `/api/v1/client/vid-upscale/price-calculation` | Calculate video upscale price        | [→](/api/v1/transformation/video-upscale-price)      |

## Utilities

Account management and job status tracking.

| Method | Endpoint                                     | Description                      | Docs                                   |
| ------ | -------------------------------------------- | -------------------------------- | -------------------------------------- |
| `GET`  | `/api/v1/client/balance`                     | Get current account balance      | [→](/api/v1/utilities/check-balance)   |
| `GET`  | `/api/v1/client/request-status/{request_id}` | Check job status and get results | [→](/api/v1/utilities/get-results)     |
| `GET`  | `/api/v1/client/models`                      | List all available models        | [→](/api/v1/utilities/model-selection) |

## Workflow

Typical API usage follows this pattern:

<Steps>
  <Step title="Check available models">
    Call `GET /api/v1/client/models` to get current models and their parameters.
  </Step>

  <Step title="Calculate price (optional)">
    Call the `/price-calculation` endpoint with your parameters to estimate cost.
  </Step>

  <Step title="Submit job">
    Call the main endpoint (e.g., `POST /api/v1/client/txt2img`) with your parameters. Response contains `request_id`.
  </Step>

  <Step title="Poll for results">
    Call `GET /api/v1/client/request-status/{request_id}` until `status` is `done` or `error`.
  </Step>

  <Step title="Download result">
    When `status` is `done`, use `result_url` to download your generated content.
  </Step>
</Steps>

## Response Formats

<CodeGroup>
  ```json Job Submission (txt2img, txt2video, etc.) theme={null}
  {
    "data": {
      "request_id": "c08a339c-73e5-4d67-a4d5-231302fbff9a"
    }
  }
  ```

  ```json Job Status (request-status) theme={null}
  {
    "data": {
      "status": "done",
      "progress": 100.0,
      "result_url": "https://...",
      "result": null,
      "preview": null
    }
  }
  ```

  ```json Balance theme={null}
  {
    "balance": 19.72
  }
  ```

  ```json Models List theme={null}
  {
    "data": {
      "data": [
        {
          "name": "Flux.1 schnell",
          "slug": "Flux1schnell",
          "inference_types": ["txt2img"],
          "info": { ... }
        }
      ]
    }
  }
  ```

  ```json Error (4xx/5xx) theme={null}
  {
    "data": null,
    "message": "Error description",
    "errors": [],
    "statusCode": 401
  }
  ```
</CodeGroup>

<Note>
  Response structure varies by endpoint. See individual endpoint documentation for exact schemas.
</Note>

See [Errors](/api/v1/errors) for detailed error handling documentation.
