From 7307938896ffd06b5981991a0b8ed1526848ebb0 Mon Sep 17 00:00:00 2001 From: niall-trinder Date: Wed, 25 Feb 2026 16:15:25 +0000 Subject: [PATCH 1/2] feat: Add ai_topics schema to conversation response Add ai_topics, ai_topic, and ai_subtopic component schemas to document the new AI-generated topic/subtopic data on conversation responses. Co-Authored-By: Claude Opus 4.6 (1M context) --- descriptions/0/api.intercom.io.yaml | 69 +++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) diff --git a/descriptions/0/api.intercom.io.yaml b/descriptions/0/api.intercom.io.yaml index 8d08f5b..5397ec0 100644 --- a/descriptions/0/api.intercom.io.yaml +++ b/descriptions/0/api.intercom.io.yaml @@ -6175,6 +6175,7 @@ paths: data: [] total_count: 0 has_more: false + ai_topics: ai_agent: ai_agent_participated: false schema: @@ -6413,6 +6414,7 @@ paths: data: [] total_count: 0 has_more: false + ai_topics: ai_agent: ai_agent_participated: false conversation_parts: @@ -6660,6 +6662,7 @@ paths: data: [] total_count: 0 has_more: false + ai_topics: ai_agent: ai_agent_participated: false conversation_parts: @@ -6766,6 +6769,7 @@ paths: data: [] total_count: 0 has_more: false + ai_topics: ai_agent: ai_agent_participated: false conversation_parts: @@ -7084,6 +7088,7 @@ paths: data: [] total_count: 0 has_more: false + ai_topics: ai_agent: ai_agent_participated: false schema: @@ -7186,6 +7191,7 @@ paths: data: [] total_count: 0 has_more: false + ai_topics: ai_agent: ai_agent_participated: false conversation_parts: @@ -7262,6 +7268,7 @@ paths: data: [] total_count: 0 has_more: false + ai_topics: ai_agent: ai_agent_participated: false conversation_parts: @@ -7350,6 +7357,7 @@ paths: data: [] total_count: 0 has_more: false + ai_topics: ai_agent: ai_agent_participated: false conversation_parts: @@ -7429,6 +7437,7 @@ paths: data: [] total_count: 0 has_more: false + ai_topics: ai_agent: ai_agent_participated: false conversation_parts: @@ -7629,6 +7638,7 @@ paths: data: [] total_count: 0 has_more: false + ai_topics: ai_agent: ai_agent_participated: false conversation_parts: @@ -7705,6 +7715,7 @@ paths: data: [] total_count: 0 has_more: false + ai_topics: ai_agent: ai_agent_participated: false conversation_parts: @@ -7781,6 +7792,7 @@ paths: data: [] total_count: 0 has_more: false + ai_topics: ai_agent: ai_agent_participated: false conversation_parts: @@ -7857,6 +7869,7 @@ paths: data: [] total_count: 0 has_more: false + ai_topics: ai_agent: ai_agent_participated: false conversation_parts: @@ -8344,6 +8357,7 @@ paths: data: [] total_count: 0 has_more: false + ai_topics: ai_agent: ai_agent_participated: false conversation_parts: @@ -16071,6 +16085,58 @@ components: nullable: true content_sources: "$ref": "#/components/schemas/content_sources_list" + ai_subtopic: + title: AI Subtopic + type: object + description: An AI-generated subtopic under a topic. + properties: + type: + type: string + description: Always ai_subtopic. + example: ai_subtopic + name: + type: string + description: The name of the subtopic. + example: Payment Issues + id: + type: integer + description: The ID of the subtopic. + example: 42 + nullable: true + ai_topic: + title: AI Topic + type: object + description: An AI-generated topic assigned to the conversation. + properties: + type: + type: string + description: Always ai_topic. + example: ai_topic + topic_name: + type: string + description: The name of the AI-generated topic. + example: Billing + subtopics: + type: array + description: The subtopics under this topic. + items: + $ref: '#/components/schemas/ai_subtopic' + ai_topics: + title: AI Topics + type: object + x-tags: + - AI Topics + description: AI-generated topics and subtopics for the conversation. + properties: + type: + type: string + description: Always ai_topics. + example: ai_topics + topics: + type: array + description: The list of AI-generated topics for this conversation. + items: + $ref: '#/components/schemas/ai_topic' app: title: App type: object @@ -18117,6 +18183,9 @@ components: "$ref": "#/components/schemas/conversation_parts" linked_objects: "$ref": "#/components/schemas/linked_object_list" + ai_topics: + "$ref": "#/components/schemas/ai_topics" + nullable: true ai_agent_participated: type: boolean description: Indicates whether the AI Agent participated in the conversation. From c73f1ef20555d26e383f174e030a5f8eafe1313a Mon Sep 17 00:00:00 2001 From: niall-trinder Date: Thu, 26 Feb 2026 11:46:31 +0000 Subject: [PATCH 2/2] fix: Remove incorrect nullable annotations from ai_subtopic.id and ai_topics ai_subtopic.id is always present, and ai_topics returns {} not null. Co-Authored-By: Claude Opus 4.6 (1M context) --- descriptions/0/api.intercom.io.yaml | 2 -- 1 file changed, 2 deletions(-) diff --git a/descriptions/0/api.intercom.io.yaml b/descriptions/0/api.intercom.io.yaml index 5397ec0..b1fce8c 100644 --- a/descriptions/0/api.intercom.io.yaml +++ b/descriptions/0/api.intercom.io.yaml @@ -16102,7 +16102,6 @@ components: type: integer description: The ID of the subtopic. example: 42 - nullable: true ai_topic: title: AI Topic type: object @@ -18185,7 +18184,6 @@ components: "$ref": "#/components/schemas/linked_object_list" ai_topics: "$ref": "#/components/schemas/ai_topics" - nullable: true ai_agent_participated: type: boolean description: Indicates whether the AI Agent participated in the conversation.