AI Support Guide

Simpli Reply

Context-aware AI draft response generator for customer support.

When an agent opens a ticket, Reply generates a context-aware draft response grounded in conversation history and your knowledge base. The agent reviews, tweaks, and sends — cutting response time without sacrificing quality.

Simpli Reply generates draft responses for support conversations, matching your team's tone and style. Agents review and edit before sending.

Configuration

VariableDefaultDescription
APP_PORT8000Server port
LITELLM_MODELopenai/gpt-5-miniLLM model for draft generation
CORS_ORIGINS*Allowed CORS origins (comma-separated)

Start the server

simpli-reply serve

API endpoints

All endpoints are under the /api/v1 prefix.

POST /api/v1/draft

Generate a draft reply for a conversation.

Request:

{
  "ticket_id": "T-123",
  "conversation": [
    {"role": "customer", "content": "I was charged twice for my subscription"},
    {"role": "agent", "content": "I'm sorry to hear that. Let me look into this."},
    {"role": "customer", "content": "It's been 3 days and I still see both charges"}
  ],
  "style": "friendly",
  "language": "en"
}

The role field accepts values from the AuthorType enum: customer, agent, or system.

Response:

{
  "draft_id": "d-abc123",
  "draft": "I completely understand your frustration. I've escalated this to our billing team and they'll process the refund within 24 hours. You should see it reflected in your account by tomorrow.",
  "confidence": 0.82,
  "suggested_template": null,
  "language": "en"
}

POST /api/v1/feedback

Submit feedback on a generated draft to improve future suggestions.

{
  "draft_id": "d-abc123",
  "accepted": true,
  "edited_text": null
}

GET /api/v1/styles

List available tone/style profiles.

Returns profiles like friendly (warm and approachable) and formal (professional and structured).

GET /health

Health check.

Integration example

import httpx

client = httpx.Client(base_url="http://localhost:8000")

# Generate a draft
draft = client.post("/api/v1/draft", json={
    "ticket_id": "T-456",
    "conversation": [
        {"role": "customer", "content": "How do I export my data?"},
    ],
}).json()

print(draft["draft"])

# Send feedback after agent reviews
client.post("/api/v1/feedback", json={
    "draft_id": draft["draft_id"],
    "accepted": True,
})

Next steps

On this page