Skip to Content
DocsGetting StartedDefault Chatbot (Rosalind)

Default Insurance Chatbot (Rosalind)

Rosalind is a pre-configured insurance chatbot powered by Google’s Gemini, available to all new users as a demo endpoint during onboarding. It lets you generate tests, run evaluations, and explore results before connecting your own application.

Chat Endpoint

POST /chat

chat-request.json
{
  "message": "What is the difference between term life and whole life insurance?",
  "session_id": "optional-session-id",
  "use_case": "insurance"
}

Response:

chat-response.json
{
  "message": "Term life insurance covers you for a specific period (like 10, 20, or 30 years) and pays out only if you pass away during that term. Whole life insurance covers you for your entire life and includes a savings component that builds cash value over time.",
  "session_id": "abc123-def456-ghi789",
  "context": [
    "Term life insurance provides coverage for a specific time period",
    "Whole life insurance offers permanent coverage with cash value"
  ],
  "metadata": {
    "use_case": "insurance",
    "mode": "text"
  },
  "tool_calls": []
}

Parameters:

  • message (string, required): Your question or message to Rosalind
  • session_id (string, optional): Identifier for conversation continuity. If omitted, a new session is created
  • use_case (string, optional): The domain context. Defaults to “insurance”

Requests may include a bearer token in the Authorization: Bearer <your-api-key> header; authenticated requests get a higher rate limit. Requests without a token fall back to the public tier.

Echo use case

Setting "use_case": "echo" returns the input message verbatim, skips LLM invocation, and is exempt from rate limits. Useful for connector smoke tests, pipeline checks, and request-mapping validation.

echo-request.json
{
  "message": "ping",
  "use_case": "echo"
}

Sessions

Reuse the session_id from a response in follow-up requests to keep conversation context across turns.

  • GET /sessions/{session_id} — retrieve the conversation history for a session
  • DELETE /sessions/{session_id} — delete a session and its history

Rate Limits

Without authentication, the service allows 100 requests per day per IP address; with authentication, 1000 per day per user (configurable via CHATBOT_RATE_LIMIT). Limits reset on a fixed daily window; exceeding them returns 429 Too Many Requests.

Example

chatbot_curl.sh
# Send a message (bearer token only needed if authentication is configured)
curl -X POST https://chatbot.rhesis.ai/chat \
-H "Content-Type: application/json" \
-H "Authorization: Bearer your-secret-api-key" \
-d '{
    "message": "What is comprehensive auto insurance?",
    "use_case": "insurance"
}'

# Continue the conversation by adding the returned session_id
curl -X POST https://chatbot.rhesis.ai/chat \
-H "Content-Type: application/json" \
-H "Authorization: Bearer your-secret-api-key" \
-d '{
    "message": "How much coverage should I have?",
    "session_id": "abc123-def456-ghi789",
    "use_case": "insurance"
}'

Parameter Awareness

Rosalind is a parameter-aware endpoint: its system prompt, use case, model, temperature, and output mode are managed through Parameters & Experiments. Create a new experiment in the project and promote it to the default environment to see the chatbot pick up the new behavior after the next cache refresh. For how experiment values reach the request mapping, see Using Experiment Parameters.

Limitations

  • Domain-Specific: Rosalind answers insurance questions only and may decline off-topic queries
  • Rate Limited: Usage is restricted to prevent abuse and ensure availability
  • Session Expiry: Sessions expire after 24 hours of inactivity (default)
  • No SLA: This is a demo service without uptime guarantees

Next Steps - Create custom endpoints for your own AI services - Explore test generation to validate your LLM applications - Set up metrics to measure response quality