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

# Introduction

> Getting started with the Easy-Peasy.AI API

## Overview

The Easy-Peasy.AI API lets you programmatically access our AI-powered tools:

* **Presets** — Discover available text generation templates and their input fields
* **Text Generation** — Generate blog posts, social media captions, emails, marketing copy, and more using 50+ templates
* **Image Generation** — Create AI images with 40+ models including DALL-E 3, Midjourney, FLUX.2, Imagen 4, and more
* **Video Generation** — Generate AI videos with 40+ models including Veo 3.1, Kling 3.0, Sora 2, and more
* **Transcription** — Transcribe audio files with speaker detection and enhanced quality
* **Text-to-Speech** — Convert text to natural-sounding speech with 150+ voices
* **Chat Completions** — OpenAI-compatible chat completions endpoint (works with OpenAI SDK)
* **Bots** — Chat with your custom AI bots via API

<Card title="Using an AI agent?" icon="plug" href="/mcp/introduction">
  Easy-Peasy.AI also runs an [MCP server](/mcp/introduction) at `https://easy-peasy.ai/mcp` — connect Claude, Cursor, Windsurf, or any MCP client without writing API code.
</Card>

## Authentication

All API requests require your API key in the `x-api-key` header (except TTS Config/Voices which are public).

```bash theme={null}
curl -X POST https://easy-peasy.ai/api/generate \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{"preset": "custom-generator", "keywords": "Hello world"}'
```

<Card title="Get your API key" icon="key" href="https://easy-peasy.ai/settings/api">
  Generate an API key from your Easy-Peasy.AI settings page.
</Card>

## Base URL

All API requests are made to:

```
https://easy-peasy.ai
```

The **Bots API** uses a separate base URL:

```
https://bots.easy-peasy.ai
```

## Typical Workflow

1. **Discover presets** — Call `GET /api/presets` to list available templates
2. **Get field requirements** — Call `GET /api/presets/{slug}` to see what fields a preset needs
3. **Generate content** — Call `POST /api/generate` with the preset slug and required fields

## Endpoints

<Columns cols={2}>
  <Card title="List Presets" icon="list" href="/api-reference/endpoint/list-presets">
    Discover available text generation templates.
  </Card>

  <Card title="Get Preset Details" icon="circle-info" href="/api-reference/endpoint/get-preset">
    Get input fields and constraints for a preset.
  </Card>

  <Card title="Generate Text" icon="pen" href="/api-reference/endpoint/generate">
    Generate content using any preset.
  </Card>

  <Card title="Generate Image" icon="image" href="/api-reference/endpoint/generate-image">
    Create AI images with 40+ models.
  </Card>

  <Card title="Generate Video" icon="video" href="/api-reference/endpoint/generate-video">
    Generate AI videos with 40+ models.
  </Card>

  <Card title="Create Transcription" icon="microphone" href="/api-reference/endpoint/create-transcription">
    Transcribe audio files to text.
  </Card>

  <Card title="Text-to-Speech" icon="volume-high" href="/api-reference/endpoint/generate-tts">
    Convert text to natural speech.
  </Card>

  <Card title="Chat Completions" icon="comments" href="/api-reference/endpoint/chat-completions">
    OpenAI-compatible chat completions endpoint.
  </Card>

  <Card title="Chat with Bot" icon="robot" href="/api-reference/endpoint/chat-with-bot">
    Interact with your custom AI bots via API.
  </Card>

  <Card title="MCP Server" icon="plug" href="/mcp/introduction">
    Connect AI agents with the Model Context Protocol.
  </Card>
</Columns>
