API • Integration für jede App

Chatbot API Integration

Integrieren Sie WebChatAgent in Desktop-Apps, Terminals und interne Tools – per REST API oder WebSocket für echten Live-Chat.

Für Entwickler & Produktteams

Chat in Ihre App bringen,
ohne Widget-Zwang.

Nicht jede Umgebung ist ein Browser. Mit unserer Chatbot API bauen Sie Conversational UX direkt in Ihre Software ein – von Desktop-Clients über CLI-Tools bis zu internen Portalen.

Welche Probleme löst die Chatbot API?

Typische Hürden bei Chat-Integrationen – und warum eine API sie sauber löst.

Kein Platz für ein Website-Widget

Desktop-Anwendungen, Intranet-Tools oder Terminals brauchen eine native Integration – nicht ein eingebettetes Website-Widget.

Uneinheitliche Chat-Erlebnisse

Ohne API wird Chat schnell ein Sonderfall. Mit klaren Endpunkten integrieren Sie Chat konsistent in Ihre bestehenden Flows und UI-Komponenten.

Live-Chat erfordert Echtzeit

Wenn ein Mensch übernimmt, zählt Realtime: Status, Nachrichten und Dateien müssen sofort ankommen – dafür ist WebSocket die richtige Wahl.

Wie löst die API diese Probleme?

Einfacher Start per REST – und nahtloser Wechsel zu Live-Chat per WebSocket.

REST API für jedes Frontend

Senden Sie Nachrichten per POST an /api/chat und rendern Sie die Antwort in Ihrer UI. Ideal für Desktop, Mobile, Backoffice und CLI.

WebSocket für Live-Chat (Human takeover)

Wenn der Modus auf human wechselt, verbinden Sie sich per WebSocket und senden/empfangen Sie Nachrichten in Echtzeit – inklusive Session-Guards.

Code-Beispiele

Starten Sie in Minuten: cURL für schnelle Tests, JavaScript für produktive Integrationen.

REST API (cURL)
Schnell testen – ideal für Terminal, CI oder Debugging.
# 1) First request (no session id). Use -i to see response headers.
curl -i -X POST https://webchatagent.com/api/chat \
  -H "Content-Type: application/json" \
  -d '{
  "message": "Hello, how can you help me?",
  "chatbotId": "<your-chatbot-id>"
  }'

# 2) Reuse the X-Chat-Session-Id from the response header for the conversation.
curl -X POST https://webchatagent.com/api/chat \
  -H "Content-Type: application/json" \
  -H "X-Chat-Session-Id: <session-id-from-response>" \
  -d '{
  "message": "Continue the conversation.",
  "chatbotId": "<your-chatbot-id>"
  }'
REST API (JavaScript)
Integration in Desktop-/Web-Apps mit fetch().
async function sendChatMessage({ baseUrl, chatbotId, message, sessionId }) {
  const res = await fetch(`${baseUrl}/api/chat`, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      'X-Chat-Session-Id': sessionId || ''
    },
    body: JSON.stringify({ message, chatbotId })
  });

  const nextSessionId = res.headers.get('X-Chat-Session-Id') || sessionId || '';
  if (!res.ok) throw new Error(await res.text());
  const data = await res.json();
  // data: { reply, sources, mode, status }
  // If mode === 'human' and status === 'waiting' or 'open', switch to WebSocket
  if (data.mode === 'human' && (data.status === 'waiting' || data.status === 'open')) {
    // Switch to WebSocket for live chat
    connectToLiveChat(nextSessionId, chatbotId);
  }
  return { data, sessionId: nextSessionId };
}

Session-Handling: Wenn Sie keine X-Chat-Session-Id senden, erstellt der Server eine neue Session und gibt die Session-ID im Response-Header zurück. Speichern Sie diese und senden Sie sie bei Folgeanfragen mit.

Beispiel-Response bei Live-Chat-Wechsel: [ "reply": "...", "sources": [], "mode": "human", "status": "waiting" ] — dann auf WebSocket umschalten.

Live-Chat

Was bei Live-Chat zu beachten ist

Live-Chat läuft über WebSocket. Nach dem Connect joinen Sie mit chatbotId + sessionId und senden Nachrichten als client:message. Verarbeiten Sie nur Events Ihrer aktuellen Session.

WebSocket verbinden + joinen
Einstieg: Verbindung herstellen, Session joinen, dann Nachrichten senden.
// Use the same base URL as your REST calls (WebChatAgent domain).
const ws = new WebSocket('wss://webchatagent.com/api/livechat');
ws.onopen = () => {
  ws.send(JSON.stringify({
    type: 'client:join',
    chatbotId: '<your-chatbot-id>',
    sessionId: '<your-session-id>',
    as: 'user'
  }));
};

function sendLiveChatMessage(text) {
  ws.send(JSON.stringify({
    type: 'client:message',
    chatbotId: '<your-chatbot-id>',
    sessionId: '<your-session-id>',
    sender: 'user',
    content: text
  }));
}

ws.onmessage = (event) => {
  const data = JSON.parse(event.data || '{}');
  // data.type === 'livechat:message'
  // data.sessionId guard recommended (handle only current session)
};
Wann REST vs. WebSocket?
REST ist perfekt für Bot-Chat. WebSocket ist Pflicht, sobald Human takeover aktiv ist.

Nutzen Sie REST (/api/chat), solange der Chat im Bot-Modus läuft.

Prüfen Sie die Response: Wenn mode='human' und status='waiting' oder 'open' zurückkommt, wechseln Sie auf WebSocket (/api/livechat).

Implementieren Sie einen Session-Guard: Ignorieren Sie WebSocket-Events ohne sessionId oder mit fremder sessionId.

Typische Use Cases

Beispiele, wie Teams die API nutzen, um Support und Prozesse direkt in ihre Software zu bringen.

Desktop-App Support

In-App Hilfe, Troubleshooting und Onboarding – ohne Kontextwechsel zum Browser.

Terminal / CLI Assistenz

Antworten und Anleitungen direkt im Terminal – ideal für DevOps, IT und interne Tools.

Interne Portale & Backoffice

Self-Service für Mitarbeiter: Richtlinien, Prozesse und Wissensfragen – direkt im Intranet.

Eskalation zu Live-Chat

Automatisieren mit Bot – und bei Bedarf nahtlos an einen Menschen übergeben (WebSocket).

Bauen Sie Chat dort ein, wo Ihre Nutzer sind.

Starten Sie mit REST und erweitern Sie bei Bedarf um Live-Chat. Die API ist für produktive Integrationen gebaut – schnell, stabil und nachvollziehbar.

Account erstellen