# Genie Cancel Response

Launch stage: GA

`POST /api/2.0/genie/agents/{agent_id}/conversations/{conversation_id}/responses/{response_id}/cancel`

Cancels an in-flight agent-mode response. `response_id` is the id returned in the
 `response.created` event from the agent-mode responses endpoint. The response stops at
 the next agent boundary and its terminal state is returned.

API scopes: genie

## Path parameters

- `agent_id` (string, required)
  The ID of the Genie agent (synonymous with the Genie space ID).
  Example: `e1ef34712a29169db030324fd0e1df5f`
- `conversation_id` (string, required)
  The ID of the conversation containing the response.
  Example: `e1ef34712a29169db030324fd0e1df5f`
- `response_id` (string, required)
  The ID of the response to cancel (the id from the `response.created` event).
  Example: `e1ef34712a29169db030324fd0e1df5f`

## Returns

- `id` (string, optional)
  Message ID.
   Legacy identifier, use message_id instead
  Example: `e1ef34712a29169db030324fd0e1df5f`
- `space_id` (string, required)
  Genie space ID
  Example: `e1ef34712a29169db030324fd0e1df5f`
- `conversation_id` (string, required)
  Conversation ID
  Example: `e1ef34712a29169db030324fd0e1df5f`
- `user_id` (int64, optional)
  ID of the user who created the message
- `created_timestamp` (int64, optional)
  Timestamp when the message was created
- `last_updated_timestamp` (int64, optional)
  Timestamp when the message was last updated
- `status` (string, optional)
  Possible values: `FETCHING_METADATA`, `FILTERING_CONTEXT`, `ASKING_AI`, `PENDING_WAREHOUSE`, `EXECUTING_QUERY`, `FAILED`, `COMPLETED`, `SUBMITTED`, `QUERY_RESULT_EXPIRED`, `CANCELLED`
  Example: `ASKING_AI`
- `content` (string, required)
  User message content
  Example: `Biggest open opportunities`
- `attachments` (array of object, optional)
  AI-generated response to the message
  - `text` (object, optional)
    Text Attachment if Genie responds with text
     This also contains the final summary when available.
    - `content` (string, optional)
      AI generated message
    - `id` (string, optional)
    - `purpose` (string, optional)
      Purpose of this text attachment. A completed message may contain more than
       one text attachment (for example a clarifying follow-up question alongside
       the final answer); use this field to tell them apart. `TEXT_ATTACHMENT_PURPOSE_ANSWER`
       marks the final answer/summary and `FOLLOW_UP_QUESTION` marks a clarifying question.
      Possible values: `TEXT_ATTACHMENT_PURPOSE_UNSPECIFIED`, `FOLLOW_UP_QUESTION`, `TEXT_ATTACHMENT_PURPOSE_ANSWER`
  - `query` (object, optional)
    Query Attachment if Genie responds with a SQL query
    - `title` (string, optional)
      Name of the query
    - `query` (string, optional)
      AI generated SQL query
    - `description` (string, optional)
      Description of the query
    - `last_updated_timestamp` (int64, optional)
      Time when the user updated the query last
    - `parameters` (array of object, optional)
      - `keyword` (string, optional)
      - `value` (string, optional)
      - `sql_type` (string, optional)
    - `id` (string, optional)
    - `statement_id` (string, optional)
      Statement Execution API statement id. Use [Get status, manifest, and result first chunk](:method:statementexecution/getstatement) to get the full result data.
    - `query_result_metadata` (object, optional)
      Metadata associated with the query result.
      - `row_count` (int64, optional)
        The number of rows in the result set.
      - `is_truncated` (boolean, optional)
        Indicates whether the result set is truncated.
    - `thoughts` (array of object, optional, Public Preview)
      Insights into how Genie came to generate the SQL.
      - `thought_type` (string, optional, Public Preview)
        The category of this thought.
         The possible values are:
         * `THOUGHT_TYPE_DESCRIPTION`: A high-level description of how the question was interpreted.
         * `THOUGHT_TYPE_UNDERSTANDING`: How ambiguous parts of the question were resolved.
         * `THOUGHT_TYPE_DATA_SOURCING`: Which tables or datasets were identified as relevant.
         * `THOUGHT_TYPE_INSTRUCTIONS`: Which author-defined instructions were referenced.
         * `THOUGHT_TYPE_STEPS`: The logical steps taken to compute the answer.
        Possible values: `THOUGHT_TYPE_UNSPECIFIED`, `THOUGHT_TYPE_DESCRIPTION`, `THOUGHT_TYPE_UNDERSTANDING`, `THOUGHT_TYPE_DATA_SOURCING`, `THOUGHT_TYPE_INSTRUCTIONS`, `THOUGHT_TYPE_STEPS`
      - `content` (string, optional, Public Preview)
        The md formatted content for this thought.
  - `suggested_questions` (object, optional)
    Follow-up questions suggested by Genie
    - `questions` (array of string, optional)
      The suggested follow-up questions
  - `viz` (object, optional, Beta)
    Visualization generated by Genie, if requested via `enable_visualization`
    - `title` (string, optional, Beta)
      Name of the visualization
    - `query_attachment_id` (string, optional, Beta)
      The ID of the query attachment the visualization was generated from
  - `attachment_id` (string, optional)
    Attachment ID
- `query_result` (object, optional)
  The result of SQL query if the message includes a query attachment.
   Deprecated. Use `query_result_metadata` in `GenieQueryAttachment` instead.
  - `statement_id` (string, optional)
    Statement Execution API statement id. Use [Get status, manifest, and result first chunk](:method:statementexecution/getstatement) to get the full result data.
  - `row_count` (int64, optional)
    Row count of the result
  - `is_truncated` (boolean, optional)
    If result is truncated
  - `statement_id_signature` (string, optional)
    JWT corresponding to the statement contained in this result
- `error` (object, optional)
  Error message if Genie failed to respond to the message
  - `error` (string, optional)
  - `type` (string, optional)
    Possible values: `TYPE_UNSPECIFIED`, `UNEXPECTED_REPLY_PROCESS_EXCEPTION`, `GENERIC_CHAT_COMPLETION_EXCEPTION`, `CONTEXT_EXCEEDED_EXCEPTION`, `DEPLOYMENT_NOT_FOUND_EXCEPTION`, `FUNCTIONS_NOT_AVAILABLE_EXCEPTION`, `INVALID_COMPLETION_REQUEST_EXCEPTION`, `CONTENT_FILTER_EXCEPTION`, `FUNCTION_ARGUMENTS_INVALID_JSON_EXCEPTION`, `RETRYABLE_PROCESSING_EXCEPTION`, `INVALID_FUNCTION_CALL_EXCEPTION`, `LOCAL_CONTEXT_EXCEEDED_EXCEPTION`, `CHAT_COMPLETION_NETWORK_EXCEPTION`, `INVALID_CHAT_COMPLETION_JSON_EXCEPTION`, `GENERIC_CHAT_COMPLETION_SERVICE_EXCEPTION`, `WAREHOUSE_ACCESS_MISSING_EXCEPTION`, `WAREHOUSE_NOT_FOUND_EXCEPTION`, `NO_TABLES_TO_QUERY_EXCEPTION`, `SQL_EXECUTION_EXCEPTION`, `REPLY_PROCESS_TIMEOUT_EXCEPTION`, `COULD_NOT_GET_UC_SCHEMA_EXCEPTION`, `INVALID_TABLE_IDENTIFIER_EXCEPTION`, `TOO_MANY_TABLES_EXCEPTION`, `FUNCTION_ARGUMENTS_INVALID_EXCEPTION`, `GENERIC_SQL_EXEC_API_CALL_EXCEPTION`, `CHAT_COMPLETION_CLIENT_EXCEPTION`, `CHAT_COMPLETION_CLIENT_TIMEOUT_EXCEPTION`, `UNKNOWN_AI_MODEL`, `TABLES_MISSING_EXCEPTION`, `MESSAGE_DELETED_WHILE_EXECUTING_EXCEPTION`, `MESSAGE_UPDATED_WHILE_EXECUTING_EXCEPTION`, `BLOCK_MULTIPLE_EXECUTIONS_EXCEPTION`, `INVALID_CERTIFIED_ANSWER_IDENTIFIER_EXCEPTION`, `TOO_MANY_CERTIFIED_ANSWERS_EXCEPTION`, `RATE_LIMIT_EXCEEDED_GENERIC_EXCEPTION`, `RATE_LIMIT_EXCEEDED_SPECIFIED_WAIT_EXCEPTION`, `FUNCTION_CALL_MISSING_PARAMETER_EXCEPTION`, `INVALID_CERTIFIED_ANSWER_FUNCTION_EXCEPTION`, `ILLEGAL_PARAMETER_DEFINITION_EXCEPTION`, `NO_QUERY_TO_VISUALIZE_EXCEPTION`, `NO_DEPLOYMENTS_AVAILABLE_TO_WORKSPACE`, `STOP_PROCESS_DUE_TO_AUTO_REGENERATE`, `FUNCTION_ARGUMENTS_INVALID_TYPE_EXCEPTION`, `MESSAGE_CANCELLED_WHILE_EXECUTING_EXCEPTION`, `COULD_NOT_GET_MODEL_DEPLOYMENTS_EXCEPTION`, `GENERATED_SQL_QUERY_TOO_LONG_EXCEPTION`, `MISSING_SQL_QUERY_EXCEPTION`, `DESCRIBE_QUERY_UNEXPECTED_FAILURE`, `DESCRIBE_QUERY_TIMEOUT`, `DESCRIBE_QUERY_INVALID_SQL_ERROR`, `INVALID_SQL_UNKNOWN_TABLE_EXCEPTION`, `INVALID_SQL_MULTIPLE_STATEMENTS_EXCEPTION`, `INVALID_SQL_MULTIPLE_DATASET_REFERENCES_EXCEPTION`, `MESSAGE_ATTACHMENT_TOO_LONG_ERROR`, `INTERNAL_CATALOG_PATH_OVERLAP_EXCEPTION`, `INTERNAL_CATALOG_MISSING_UC_PATH_EXCEPTION`, `EXCEEDED_MAX_TOKEN_LENGTH_EXCEPTION`, `INTERNAL_CATALOG_ASSET_CREATION_ONGOING_EXCEPTION`, `INTERNAL_CATALOG_ASSET_CREATION_FAILED_EXCEPTION`, `INTERNAL_CATALOG_ASSET_CREATION_UNSUPPORTED_EXCEPTION`, `UNSUPPORTED_CONVERSATION_TYPE_EXCEPTION`, `COULD_NOT_GET_DASHBOARD_SCHEMA_EXCEPTION`
- `message_id` (string, required)
  Message ID
  Example: `e1ef34712a29169db030324fd0e1df5f`
- `feedback` (object, optional)
  User feedback for the message if provided
  - `rating` (string, optional)
    The feedback rating
    Possible values: `GENIE_FEEDBACK_RATING_UNSPECIFIED`, `POSITIVE`, `NEGATIVE`, `NONE`
  - `comment` (string, optional, Public Preview)
    Optional feedback comment text

## Response

```json
{
  "id": "e1ef34712a29169db030324fd0e1df5f",
  "space_id": "e1ef34712a29169db030324fd0e1df5f",
  "conversation_id": "e1ef34712a29169db030324fd0e1df5f",
  "user_id": 0,
  "created_timestamp": 0,
  "last_updated_timestamp": 0,
  "status": "ASKING_AI",
  "content": "Biggest open opportunities",
  "attachments": [
    {
      "text": {},
      "query": {},
      "suggested_questions": {},
      "viz": {},
      "attachment_id": "string"
    }
  ],
  "query_result": {
    "statement_id": "string",
    "row_count": 0,
    "is_truncated": true,
    "statement_id_signature": "string"
  },
  "error": {
    "error": "string",
    "type": "string"
  },
  "message_id": "e1ef34712a29169db030324fd0e1df5f",
  "feedback": {
    "rating": "string",
    "comment": "string"
  }
}
```

