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

# Chat App API

> API for Chatbot and Agent apps, covering chat messages, conversation management, file uploads, and voice

[Chatbot apps](/en/2.7.x/use/build/chatbot) (`chat` mode) and [Agent apps](/en/2.7.x/use/build/agent) (`agent-chat` mode) share the same endpoints to send messages, manage conversations, handle files, and retrieve app settings. Only the streamed reply differs: Chatbot apps stream the reply as `message` events, while Agent apps stream `agent_thought` and `agent_message` events.

<Info>
  Authentication, the base URL, and the `user` field that scopes end-user data are covered in [Get Started](/en/2.7.x/develop/api/guides/get-started) and [End User Identity](/en/2.7.x/develop/api/guides/end-user-identity).
</Info>

## Send Messages and Stream Replies

* **[Send Chat Message](/en/2.7.x/develop/api/chat-messages/send-chat-message)**: send a query to your Chatbot or Agent app. Blocking mode returns the full reply once it finishes; Agent apps support streaming mode only.
* **[Stop Chat Message Generation](/en/2.7.x/develop/api/chat-messages/stop-chat-message-generation)**: interrupt a streaming reply before it finishes.
* **[Get Next Suggested Questions](/en/2.7.x/develop/api/chat-messages/get-next-suggested-questions)**: propose follow-up questions after a reply completes, based on the conversation so far.

## Manage Conversations

Conversations created through the API stay isolated from conversations started in the app's web app.

* **[List Conversations](/en/2.7.x/develop/api/conversations/list-conversations)**: the current user's conversations, ordered by most recent activity.
* **[List Conversation Messages](/en/2.7.x/develop/api/conversations/list-conversation-messages)**: one conversation's message history, for a scrolling chat UI.
* **[Rename Conversation](/en/2.7.x/develop/api/conversations/rename-conversation)**: set or auto-generate a display name.
* **[Delete Conversation](/en/2.7.x/develop/api/conversations/delete-conversation)**: remove a conversation.

## Handle Files

* **[Upload File](/en/2.7.x/develop/api/files/upload-file)**: upload an image, document, audio, or video file for [Send Chat Message](/en/2.7.x/develop/api/chat-messages/send-chat-message) to reference. Files are scoped to the uploading end user.

## Transcribe and Synthesize Speech

* **[Convert Audio to Text](/en/2.7.x/develop/api/audio/convert-audio-to-text)**: transcribe an uploaded audio file (MP3, M4A, WAV, AMR, or MPGA, up to 30 MB) so end users can speak their input instead of typing it.
* **[Convert Text to Audio](/en/2.7.x/develop/api/audio/convert-text-to-audio)**: synthesize a reply back into speech.

## Retrieve App Info and Settings

* **[Get App Info](/en/2.7.x/develop/api/applications/get-app-info)**: the app's name, description, and tags.
* **[Get App Parameters](/en/2.7.x/develop/api/applications/get-app-parameters)**: the fields your calls send in `inputs` (names, types, defaults) plus the app's feature switches—the basis for building requests or a client UI.
* **[Get App Meta](/en/2.7.x/develop/api/applications/get-app-meta)**: tool icons and other configuration metadata.

## Collect Feedback

* **[Submit Message Feedback](/en/2.7.x/develop/api/feedback/submit-message-feedback)**: end users rate a reply as `like` or `dislike`, with an optional text comment.
