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

# Disable AI

> Disable AI replies for a specific conversation, allowing a human agent to take over

Disables AI responses for a conversation. Once disabled, the assistant will stop generating replies — any new messages in the conversation will be stored but not answered by the AI.

This is useful for **human takeover** flows: configure a mid-call tool or automation that calls this endpoint when a customer requests to speak with a human agent.

### Authentication

This endpoint requires your **Automate API key** as a Bearer token.

### Path Parameters

<ParamField path="uuid" type="string" required>
  The unique UUID identifier of the conversation
</ParamField>

### Response Fields

<ResponseField name="status" type="boolean">
  `true` when the operation was successful
</ResponseField>

<ResponseField name="ai_enabled" type="boolean">
  Will always be `false` on success
</ResponseField>

### Error Responses

<ResponseField name="status" type="boolean">
  `false` when an error occurs
</ResponseField>

<ResponseField name="error" type="string">
  Error message. Possible values:

  * `Conversation not found` — the UUID does not exist or belongs to a different account
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST "https://app.autocalls.ai/api/automate/conversations/7c9e6679-7425-40de-944b-e07fc1f90ae7/disable-ai" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```

  ```javascript JavaScript theme={null}
  const conversationId = '7c9e6679-7425-40de-944b-e07fc1f90ae7';

  const response = await fetch(
    `https://app.autocalls.ai/api/automate/conversations/${conversationId}/disable-ai`,
    {
      method: 'POST',
      headers: {
        'Authorization': 'Bearer YOUR_API_KEY',
      },
    }
  );

  const data = await response.json();
  console.log(data.ai_enabled); // false
  ```

  ```python Python theme={null}
  import requests

  conversation_id = '7c9e6679-7425-40de-944b-e07fc1f90ae7'

  response = requests.post(
      f'https://app.autocalls.ai/api/automate/conversations/{conversation_id}/disable-ai',
      headers={'Authorization': 'Bearer YOUR_API_KEY'}
  )

  data = response.json()
  print(data['ai_enabled'])  # False
  ```
</RequestExample>

<ResponseExample>
  ```json 200 Success theme={null}
  {
    "status": true,
    "ai_enabled": false
  }
  ```

  ```json 404 Not Found theme={null}
  {
    "status": false,
    "error": "Conversation not found"
  }
  ```

  ```json 401 Unauthorized theme={null}
  {
    "error": "Unauthorized"
  }
  ```
</ResponseExample>

## Human Takeover Flow

A common pattern is to configure a mid-call tool that triggers this endpoint when the customer asks to speak with a human:

1. Create a mid-call tool (e.g. `transfer_to_human`) with a webhook pointing to your ActivePieces or automation flow
2. In your automation flow, call `POST /automate/conversations/{uuid}/disable-ai` using your API key
3. Notify your support team (e.g. via Slack, email, or CRM) with the conversation UUID
4. The AI stops responding — your agent takes over by sending messages directly

To re-enable AI later, use the [Enable AI](/api-reference/conversations/enable-ai) endpoint.
