# Dolphin AI — Zapi reference > Dolphin 24B uncensored chat — chat completion OpenAI-compatible, support streaming SSE **Base URL:** `https://api.zpi.web.id` **Auth:** Send `x-api-key: YOUR_KEY` header on every request. Get a free key at https://zpi.web.id/dashboard/keys. **Response envelope:** `{ status, message, content }` **Rate limit:** 60 req/min on free tier. **Related:** - Detail page: https://zpi.web.id/api/ai/dolphin - Endpoint catalog: https://zpi.web.id/category/ai - Concise index: https://zpi.web.id/llms.txt - Full reference: https://zpi.web.id/llms-full.txt --- ## Dolphin AI **Category:** ai · **Slug:** `dolphin` **Detail page:** https://zpi.web.id/api/ai/dolphin Dolphin 24B uncensored chat — chat completion OpenAI-compatible, support streaming SSE **Tags:** ai, dphn, uncensored ### Chat Completion - **Method:** `POST` - **Endpoint:** `https://api.zpi.web.id/v1/ai:dolphin/chat` - **Cache TTL:** 600s **Parameters:** | Name | Type | Location | Required | Description | |------|------|----------|----------|-------------| | `messages` | array | body | yes | OpenAI-format messages array — VISION-CAPABLE. `content` bisa string biasa ATAU array content-part untuk image input: {"type":"image_url","image_url":{"url":""}}. Model bisa baca teks/isi gambar (OCR & deskripsi). URL publik di-auto-convert ke base64 (§50.3); kirim data-URI langsung juga didukung. Mendukung multi-turn & system prompt. Min 1 item, harus ada role user. | | `stream` | boolean | body | no | Stream via SSE (OpenAI delta format). Default false | | `template` | enum(logical|creative|summarize|code-beginner|code-advanced) | body | no | Style template (subtle effect). Default `logical` | **cURL:** ```bash curl -X POST "https://api.zpi.web.id/v1/ai:dolphin/chat" \ -H "x-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Baca teks persis di gambar ini, jawab teksnya saja." }, { "type": "image_url", "image_url": { "url": "https://dummyimage.com/240x80/ffffff/000000/&text=ZAPI+7" } } ] } ], "stream": true, "template": "logical" }' ``` **JavaScript / TypeScript:** ```javascript const res = await fetch("https://api.zpi.web.id/v1/ai:dolphin/chat", { method: "POST", headers: { "x-api-key": process.env.ZAPI_KEY, "Content-Type": "application/json" }, body: JSON.stringify({ "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Baca teks persis di gambar ini, jawab teksnya saja." }, { "type": "image_url", "image_url": { "url": "https://dummyimage.com/240x80/ffffff/000000/&text=ZAPI+7" } } ] } ], "stream": true, "template": "logical" }) }); const data = await res.json(); ``` **Python:** ```python import requests r = requests.post("https://api.zpi.web.id/v1/ai:dolphin/chat", headers={"x-api-key": "YOUR_API_KEY"}, json={ "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Baca teks persis di gambar ini, jawab teksnya saja." }, { "type": "image_url", "image_url": { "url": "https://dummyimage.com/240x80/ffffff/000000/&text=ZAPI+7" } } ] } ], "stream": true, "template": "logical" }) data = r.json() ``` **Example response:** ```json { "id": "chatcmpl-y1kghbw307", "model": "dolphinserver:24B", "usage": { "total_tokens": 51, "prompt_tokens": 34, "completion_tokens": 17 }, "object": "chat.completion", "choices": [ { "index": 0, "message": { "role": "assistant", "content": "Halo, saya Zapi AI, spesialis platform Public REST API buatan Zapi." }, "finish_reason": "stop" } ], "created": 1782118381 } ``` --- _Generated: 2026-08-02T14:23:01.956Z_