> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nivara.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Covita Alpha v0.1 API Reference

> Complete API reference for the Covita Alpha v0.1 application.

<Callout type="info" emoji="ℹ️">
  This documentation provides comprehensive details about all available endpoints, request parameters, and response formats for the Covita Alpha v0.1 API.
</Callout>

## 🌐 Base URL

<div className="p-4 border rounded-md bg-gray-50 dark:bg-gray-800">
  All API endpoints are relative to the base URL:
  <code className="px-2 py-1 font-mono bg-gray-100 dark:bg-gray-700 rounded">[https://covita.nivara.io](https://covita.nivara.io)</code>
</div>

## 🤖 Chatbot API

The Chatbot API provides three main endpoints:

### Send Message

`POST /v1/send_message`

Sends a message to the chatbot and receives a response.

**Request Parameters:**

* `text` (string, required): The message text
* `user_type` (string, optional, default: "Patient"): User type, one of: "Patient", "Doctor", "Coach"
* `model_id` (string, optional, default: "openai"): Model to use, one of: "openai", "gemini"

### Get Conversation History

`GET /v1/conversation_history`

Retrieves the conversation history for a given user type.

**Query Parameters:**

* `user_type` (string, required): User type
* `model_id` (string, required): Model ID

### Reset Conversation History

`GET /v1/reset_conversation_history`

Resets the conversation history for a given user type.

**Query Parameters:**

* `user_type` (string, required): User type
* `model_id` (string, required): Model ID

## ⚠️ Error Handling

The API uses standard HTTP status codes to indicate the success or failure of requests.

| Status Code | Description      |
| ----------- | ---------------- |
| 200         | Success          |
| 201         | Created          |
| 400         | Bad Request      |
| 401         | Unauthorized     |
| 403         | Forbidden        |
| 404         | Not Found        |
| 422         | Validation Error |
| 500         | Server Error     |

<Callout type="warning" emoji="🚨">
  When an error occurs, the response will include details about what went wrong in a standardized format.
</Callout>

```json theme={null}
{
  "status": 400,
  "code": "INVALID_PARAMETERS",
  "message": "The request contains invalid parameters",
  "details": {
    "field": "email",
    "issue": "Must be a valid email address"
  }
}
```

### Validation Errors

For validation errors (status code 422), the response format follows this structure:

```json theme={null}
{
  "detail": [
    {
      "loc": ["body", "field_name"],
      "msg": "error message",
      "type": "error_type"
    }
  ]
}
```
