Skip to main content
API

Endpoints

Chat Completions

The most important endpoint of the innoGPT API — OpenAI-compatible and supports text, images, PDFs, streaming, and more.

You can find all endpoints by logging in to the innoGPT settings.

Endpoint: POST /api/ext/v1/chat/completions


Standard Request

curl -X POST \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  https://app.innogpt.de/api/ext/v1/chat/completions \
  -d '{
    "model": "gpt-5",
    "messages": [
      {"role": "system", "content": "Du bist hilfreich"},
      {"role": "user", "content": "Hallo!"}
    ],
    "temperature": 0.3
  }'

Streaming Request

Token-by-token responses via Server-Sent Events:

curl -N -X POST \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  https://app.innogpt.de/api/ext/v1/chat/completions \
  -d '{
    "model": "gpt-5",
    "messages": [{"role": "user", "content": "Stream bitte"}],
    "stream": true
  }'

Note: The GPT-5 series, o3-mini, and o4-mini stream automatically, even if stream: false is set.


Image input

curl -X POST \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  https://app.innogpt.de/api/ext/v1/chat/completions \
  -d '{
    "model": "gpt-5",
    "messages": [
      {
        "role": "user",
        "content": [
          {"type": "text", "text": "Was ist auf diesem Bild?"},
          {
            "type": "image_url",
            "image_url": {"url": "https://example.com/image.jpg"}
          }
        ]
      }
    ]
  }'

PDF via URL

curl -X POST \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  https://app.innogpt.de/api/ext/v1/chat/completions \
  -d '{
    "model": "gpt-5",
    "messages": [
      {
        "role": "user",
        "content": [
          {"type": "text", "text": "Fasse dieses Dokument zusammen"},
          {
            "type": "file_url",
            "file_url": {
              "url": "https://example.com/document.pdf",
              "mime_type": "application/pdf"
            }
          }
        ]
      }
    ]
  }'

PDF via multipart upload

For direct file uploads (multipart/form-data):

curl -X POST \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: multipart/form-data" \
  -F "file=@document.pdf" \
  -F 'payload={"model":"gpt-5","messages":[{"role":"user","content":"Fasse die Kernpunkte zusammen."}]}' \
  https://app.innogpt.de/api/ext/v1/chat/completions

The file is temporarily stored and processed on the server.


Embeddings

For semantic search, RAG, and classification:

curl -X POST \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  https://app.innogpt.de/api/ext/v1/embeddings \
  -d '{
    "input": ["hello world", "another text"],
    "model": "text-embedding-3-small"
  }'

Image generation

curl -X POST \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  https://app.innogpt.de/api/ext/v1/images/generations \
  -d '{
    "prompt": "ein minimalistisches App-Icon"
  }'

Important parameters

ParameterTypeDescription

model

string

Model ID (e.g., gpt-5, claude-4-5-sonnet)

messages

array

Chat history with role and content

temperature

float

0–2; lower = more deterministic

max_tokens

integer

Maximum output tokens

stream

boolean

Enable SSE streaming

tool_choice

string/object

Tool selection (see Article 6)

response_format

object

Structured outputs (e.g., JSON)