Download OpenAPI specification:Download
API definitions for Content AI services. To configure a client to access these APIs, visit the Adobe Developer Console
and add the "AEM Content AI Services" card to your project.
Note : The use of these APIs is subject to co-innovation arrangements with Adobe or licensing once available for public use. Please contact your Adobe representative for more details.
The Configurations API
serves as the central configuration hub and entry point for Content AI.
This API enables organizations to define end-to-end workflows that govern content acquisition, processing, indexing, and generative AI behavior,
providing comprehensive control over how sites are discovered, content is ingested into Content AI indexes, and how generative search responses are constructed.
Key Features:
Site Acquisition Configuration: Defines comprehensive workflows for site discovery and content acquisition (of content not already managed by AEM), including crawling parameters, source identification, and content ingestion pipelines that systematically process websites and feed content into the Content AI indexing infrastructure.
AI Answers Behavior Configuration: Controls all aspects of AI Answers API behavior, including prompt engineering, response generation parameters, retrieval strategies, and AI model configurations that determine how natural language queries are processed and answered.
Multi-Step Workflow Orchestration:
Manages sophisticated 4-step pipelines
encompassing discovery
(site crawling), parser
(content extraction),
index
(content organization), and generative
(AI configuration) steps, enabling end-to-end content processing automation.
Solution-Wide Configuration Management: Acts as the foundational configuration layer that orchestrates multiple Content AI services, enabling organizations to build comprehensive content intelligence solutions by defining how different services interact and collaborate within the ecosystem.
Configuration Versioning and Lifecycle Management: Supports configuration versioning, updates through JSON Patch operations, and complete lifecycle management, ensuring organizations can evolve their Content AI configurations while maintaining stability.
Retrieve latest configurations
If-None-Match | string The For more details, please head over to RFC9110. |
Successful response containing configuration list.
Not Modified
Unauthorized
Forbidden
Unacceptable. Indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.
The server encountered an unexpected error. Retrying the request after a certain time could help.
The service is temporarily unavailable. Please try again later.
Example response for listing all configurations
{- "items": [
- {
- "uid": "75ff59f7-4610-43bb-acd1-3043bd6fdb40",
- "versionId": "49737ba0-7bee-4089-ad92-717064cb38e1",
- "steps": [
- {
- "id": "1280196b-32ba-425d-b1a4-62888824731c",
- "type": "index",
- "name": "e2e-website-basic-index-demo",
- "indexProperties": {
- "vectorSpaces": {
- "semantic-vector": {
- "description": "Semantic search space for text content",
- "default": false
}
}, - "lexicalSpaces": {
- "fulltext-title": {
- "description": "Full-text search on title",
- "default": false
}, - "fulltext-description": {
- "description": "Full-text search on description",
- "default": false
}, - "fulltext-geography": {
- "description": "Full-text search on geography",
- "default": false
}, - "fulltext-text": {
- "description": "Full-text search on text",
- "default": true
}, - "fulltext-source": {
- "description": "Full-text search on source",
- "default": false
}
}
}
}, - {
- "id": "b51c33fb-21fc-4b7c-a0eb-fc10a7504cea",
- "type": "discovery",
- "sourceId": "e2e-demo-111608082025",
- "discoveryProperties": {
- "type": "website",
- "includePdfs": true
}, - "schedule": {
- "cronSchedule": "0 2 * * *",
- "enabled": true
}
}, - {
- "id": "48b5bc1b-77cb-4f0b-bcdf-2edc1535cfba",
- "type": "generative",
- "name": "example-assitant",
- "description": "AI assistant for customer support queries",
- "prompts": {
- "system": "You are a helpful AI Assistant powering the search experience.\nYou will answer questions using the provided context.\n",
- "user": "Please answer the following question: {question}\nContext: {context}\n"
}, - "chainType": "stuff"
}
], - "updatedAt": "2025-08-11T13:48:55.300+00:00",
- "archived": false
}, - {
- "uid": "b46b8bc6-e398-5837-973e-d6b031081760",
- "versionId": "7d3463de-gc6d-54f6-b6ad-d36g35973a83",
- "steps": [
- {
- "id": "239127c-43cb-536e-c2b5-73999935842d",
- "type": "index",
- "name": "blog-content-index"
}, - {
- "id": "c62d44gc-32gd-5c8d-b1fc-gd21b8615dfb",
- "type": "discovery",
- "sourceId": "blog-demo-222719092026",
- "discoveryProperties": {
- "type": "website",
- "includePdfs": false
}, - "schedule": {
- "cronSchedule": "0 3 * * *",
- "enabled": true
}
}, - {
- "id": "d73e55hd-43he-6d9e-c2gd-he32c9726egc",
- "type": "generative",
- "name": "blog-assistant",
- "description": "AI assistant for blog content queries",
- "prompts": {
- "system": "You are a helpful AI Assistant for blog content.\nAnswer questions based on the provided blog context.\n",
- "user": "Please answer the following question about our blog: {question}\nContext: {context}\n"
}
}
], - "updatedAt": "2025-08-11T14:30:22.150+00:00",
- "archived": false
}
]
}
Accepts a list of configuration step values and creates a new configuration version.
Configuration steps to be created.
required | Array of objects (Step) non-empty |
Successful response with the configuration details.
Bad Request. The Problem Details object will provide more information about the exact cause.
Unauthorized
Forbidden
Unacceptable. Indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.
Unsupported Media Type. When provided as a response to a PATCH
request,
the response will provide an Accept-Patch
response header to notify
the client what patch document media types are supported.
The server encountered an unexpected error. Retrying the request after a certain time could help.
The service is temporarily unavailable. Please try again later.
Basic configuration request with index, discovery, and generative steps
{- "steps": [
- {
- "type": "index",
- "name": "e2e-website-basic-index-demo"
}, - {
- "type": "discovery",
- "sourceId": "e2e-demo-111608082025",
- "discoveryProperties": {
- "type": "website",
- "includePdfs": true
}, - "schedule": {
- "cronSchedule": "0 2 * * *",
- "enabled": true
}
}
]
}
Response for creating a basic configuration with index, discovery, and generative steps
{- "uid": "75ff59f7-4610-43bb-acd1-3043bd6fdb40",
- "versionId": "6c2352cd-fb5c-43e5-a59c-c25f24862c72",
- "steps": [
- {
- "id": "1280196b-32ba-425d-b1a4-62888824731c",
- "type": "index",
- "name": "e2e-website-basic-index-demo",
- "indexProperties": {
- "vectorSpaces": {
- "semantic-vector": {
- "description": "Semantic search space for text content",
- "default": false
}
}, - "lexicalSpaces": {
- "fulltext-title": {
- "description": "Full-text search on title",
- "default": false
}, - "fulltext-description": {
- "description": "Full-text search on description",
- "default": false
}, - "fulltext-geography": {
- "description": "Full-text search on geography",
- "default": false
}, - "fulltext-text": {
- "description": "Full-text search on text",
- "default": true
}, - "fulltext-source": {
- "description": "Full-text search on source",
- "default": false
}
}
}
}, - {
- "id": "b51c33fb-21fc-4b7c-a0eb-fc10a7504cea",
- "type": "discovery",
- "sourceId": "e2e-demo-111608082025",
- "discoveryProperties": {
- "type": "website",
- "includePdfs": true
}, - "schedule": {
- "cronSchedule": "0 2 * * *",
- "enabled": true
}
}, - {
- "id": "48b5bc1b-77cb-4f0b-bcdf-2edc1535cfba",
- "type": "generative",
- "name": "example-assitant",
- "description": "AI assistant for customer support queries",
- "prompts": {
- "system": "You are a helpful AI Assistant powering the search experience.\nYou will answer questions using the provided context.\n",
- "user": "Please answer the following question: {question}\nContext: {context}\n"
}, - "chainType": "stuff"
}
], - "updatedAt": "2025-08-11T13:48:55.300+00:00",
- "archived": false
}
Retrieve a configuration by its unique identifier, showing the latest version of the configuration.
If-None-Match | string The For more details, please head over to RFC9110. |
Successful response containing configuration details
Not Modified
Bad Request. The Problem Details object will provide more information about the exact cause.
Unauthorized
Forbidden
Not Found
Unacceptable. Indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.
The server encountered an unexpected error. Retrying the request after a certain time could help.
The service is temporarily unavailable. Please try again later.
Example response for getting a single configuration by UID
{- "uid": "75ff59f7-4610-43bb-acd1-3043bd6fdb40",
- "versionId": "49737ba0-7bee-4089-ad92-717064cb38e1",
- "steps": [
- {
- "id": "1280196b-32ba-425d-b1a4-62888824731c",
- "type": "index",
- "name": "e2e-website-basic-index-demo"
}, - {
- "id": "b51c33fb-21fc-4b7c-a0eb-fc10a7504cea",
- "type": "discovery",
- "sourceId": "e2e-demo-111608082025",
- "discoveryProperties": {
- "type": "website",
- "includePdfs": true
}, - "schedule": {
- "cronSchedule": "0 2 * * *",
- "enabled": true
}
}, - {
- "id": "48b5bc1b-77cb-4f0b-bcdf-2edc1535cfba",
- "type": "generative",
- "name": "example-assitant",
- "description": "AI assistant for customer support queries",
- "prompts": {
- "system": "You are a helpful AI Assistant powering the search experience.\nYou will answer questions using the provided context.\n",
- "user": "Please answer the following question: {question}\nContext: {context}\n"
}, - "chainType": "stuff"
}
], - "updatedAt": "2025-08-11T13:48:55.300+00:00",
- "archived": true,
- "archivedAt": "2025-08-11T13:48:55.300+00:00"
}
Accepts a modified configuration object to update an existing configuration. Use this endpoint when you have many updates and can provide the full configuration object. This replaces the entire configuration with the provided data.
If-Match required | string The For more details, please head over to RFC9110. |
Configuration object containing the updated configuration details.
Successful response with the configuration details.
Bad Request. The Problem Details object will provide more information about the exact cause.
Unauthorized
Forbidden
Not Found
Unacceptable. Indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.
Precondition Failed
Unsupported Media Type. When provided as a response to a PATCH
request,
the response will provide an Accept-Patch
response header to notify
the client what patch document media types are supported.
Precondition Required
The server encountered an unexpected error. Retrying the request after a certain time could help.
The service is temporarily unavailable. Please try again later.
PUT request to update a configuration with modified cron schedule and generative step description
{- "steps": [
- {
- "id": "d4c0fede-7bdf-4611-b551-73356d2f9c9a",
- "type": "index",
- "name": "e2e-website-basic-index-demo",
- "indexProperties": {
- "vectorSpaces": {
- "semantic-vector": {
- "description": "Semantic search space for text content",
- "default": false
}
}, - "lexicalSpaces": {
- "fulltext-title": {
- "description": "Full-text search on title",
- "default": false
}, - "fulltext-description": {
- "description": "Full-text search on description",
- "default": false
}, - "fulltext-geography": {
- "description": "Full-text search on geography",
- "default": false
}, - "fulltext-text": {
- "description": "Full-text search on text",
- "default": true
}, - "fulltext-source": {
- "description": "Full-text search on source",
- "default": false
}
}
}
}, - {
- "id": "eb132a76-a54c-4d7a-9cd2-b19454db1e46",
- "type": "discovery",
- "sourceId": "e2e-demo-111608082025",
- "discoveryProperties": {
- "type": "website",
- "includePdfs": true
}, - "schedule": {
- "cronSchedule": "0 4 * * *",
- "enabled": true
}
}, - {
- "type": "generative",
- "id": "48b5bc1b-77cb-4f0b-bcdf-2edc1535cfba",
- "name": "example-assitant",
- "description": "Enhanced AI assistant for customer support and technical queries",
- "prompts": {
- "system": "You are a helpful AI Assistant powering the search experience.\nYou will answer questions using the provided context.\nProvide detailed and accurate responses.\n",
- "user": "Please answer the following question: {question}\nContext: {context}\n"
}, - "chainType": "stuff"
}
]
}
Response for PUT request updating a configuration
{- "uid": "75ff59f7-4610-43bb-acd1-3043bd6fdb40",
- "versionId": "8a8471cf-8cff-519a-be03-828175dc49f2",
- "steps": [
- {
- "id": "17b5b9bd-3291-4bf7-8c9e-3624d2afa365",
- "type": "index",
- "name": "e2e-website-basic-index-demo",
- "indexProperties": {
- "vectorSpaces": {
- "semantic-vector": {
- "description": "Semantic search space for text content",
- "default": false
}
}, - "lexicalSpaces": {
- "fulltext-title": {
- "description": "Full-text search on title",
- "default": false
}, - "fulltext-description": {
- "description": "Full-text search on description",
- "default": false
}, - "fulltext-geography": {
- "description": "Full-text search on geography",
- "default": false
}, - "fulltext-text": {
- "description": "Full-text search on text",
- "default": true
}, - "fulltext-source": {
- "description": "Full-text search on source",
- "default": false
}
}
}
}, - {
- "id": "d8ac87c2-4a45-4cc2-998c-664132904bbe",
- "type": "discovery",
- "sourceId": "e2e-demo-111608082025",
- "discoveryProperties": {
- "type": "website",
- "includePdfs": true
}, - "schedule": {
- "cronSchedule": "0 4 * * *",
- "enabled": true
}
}, - {
- "type": "generative",
- "id": "c03b81a7-7ee0-40e8-85fc-76c99016d422",
- "name": "example-assitant",
- "description": "Enhanced AI assistant for customer support and technical queries",
- "prompts": {
- "system": "You are a helpful AI Assistant powering the search experience.\nYou will answer questions using the provided context.\nProvide detailed and accurate responses.\n",
- "user": "Please answer the following question: {question}\nContext: {context}\n"
}, - "chainType": "stuff"
}
], - "updatedAt": "2025-08-13T13:03:52.925+00:00",
- "archived": false
}
Accepts a list of JSON Patch operations for fine-grained updates to an existing configuration. Use this endpoint when you need to make specific, targeted changes without replacing the entire object. Supports standard JSON Patch operations like replace, add, etc.
If-Match required | string The For more details, please head over to RFC9110. |
Configuration object containing the updated configuration details.
Successful response with the configuration details.
Bad Request. The Problem Details object will provide more information about the exact cause.
Unauthorized
Forbidden
Not Found
Unacceptable. Indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.
Precondition Failed
Unsupported Media Type. When provided as a response to a PATCH
request,
the response will provide an Accept-Patch
response header to notify
the client what patch document media types are supported.
Precondition Required
The server encountered an unexpected error. Retrying the request after a certain time could help.
The service is temporarily unavailable. Please try again later.
PATCH request to partially update a configuration using JSON Patch operations
[- {
- "op": "replace",
- "path": "/steps/1/schedule/cronSchedule",
- "value": "0 5 * * *"
}, - {
- "op": "replace",
- "path": "/steps/2/description",
- "value": "Enhanced AI assistant for customer support and technical queries"
}, - {
- "op": "replace",
- "path": "/steps/2/prompts/system",
- "value": "You are a helpful AI Assistant powering the search experience.\nYou will answer questions using the provided context.\nProvide detailed and accurate responses."
}, - {
- "op": "replace",
- "path": "/archived",
- "value": true
}
]
Response for PATCH request updating a configuration
{- "uid": "75ff59f7-4610-43bb-acd1-3043bd6fdb40",
- "versionId": "49737ba0-7bee-4089-ad92-717064cb38e1",
- "steps": [
- {
- "id": "a86e608e-2867-4957-bf68-87db5dbcfde2",
- "type": "index",
- "name": "e2e-website-basic-index-demo",
- "indexProperties": {
- "vectorSpaces": {
- "semantic-vector": {
- "description": "Semantic search space for text content",
- "default": false
}
}, - "lexicalSpaces": {
- "fulltext-title": {
- "description": "Full-text search on title",
- "default": false
}, - "fulltext-description": {
- "description": "Full-text search on description",
- "default": false
}, - "fulltext-geography": {
- "description": "Full-text search on geography",
- "default": false
}, - "fulltext-text": {
- "description": "Full-text search on text",
- "default": true
}, - "fulltext-source": {
- "description": "Full-text search on source",
- "default": false
}
}
}
}, - {
- "id": "c07cbc77-8b66-4539-be19-70edf1674804",
- "type": "discovery",
- "sourceId": "e2e-demo-111608082025",
- "discoveryProperties": {
- "type": "website",
- "includePdfs": true
}, - "schedule": {
- "cronSchedule": "0 5 * * *",
- "enabled": true
}
}, - {
- "type": "generative",
- "id": "12b23939-40f8-4271-871c-4364c8a88304",
- "name": "example-assitant",
- "description": "Enhanced AI assistant for customer support and technical queries",
- "prompts": {
- "system": "You are a helpful AI Assistant powering the search experience.\nYou will answer questions using the provided context.\nProvide detailed and accurate responses.\n",
- "user": "Please answer the following question: {question}\nContext: {context}\n"
}, - "chainType": "stuff"
}
], - "updatedAt": "2025-08-13T13:03:52.925+00:00",
- "archived": true,
- "archivedAt": "2025-08-13T13:03:52.925+00:00"
}
The Indexes API
provides endpoints that facilitate interaction with the search infrastructure for a given tenant.
It enables clients to discover available indexes managed by Content AI and retrieve configuration information about each index.
This information supports effective query creation and efficient data retrieval from the search endpoint.
Key Features:
List Available Indexes:
Get a complete list of all Content AI
indexes that are currently available for the provided tenant.
This feature helps users identify data sources for search operations.
List Index Configuration:
Retrieve configuration of a specified index, including various vector and lexical spaces
that are defined along with their description.
This information is essential for constructing queries to the search API. Users can use the descriptions provided to decide which space
to use in their queries.
Lists all indexes.
If-None-Match | string The For more details, please head over to RFC9110. |
OK
Not Modified
Unauthorized
Forbidden
Unacceptable. Indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.
The server encountered an unexpected error. Retrying the request after a certain time could help.
The service is temporarily unavailable. Please try again later.
Example of a response to get the list of indexes in the system.
{- "indexes": [
- {
- "name": "content-ai-articles-index"
}, - {
- "name": "content-ai-blogs-index"
}, - {
- "name": "content-ai-qna-index"
}
]
}
Gets an abstracted configuration of the index
If-None-Match | string The For more details, please head over to RFC9110. |
OK
Not Modified
Unauthorized
Forbidden
Not Found
Unacceptable. Indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.
The server encountered an unexpected error. Retrying the request after a certain time could help.
The service is temporarily unavailable. Please try again later.
Example of a response to get an index config. This can be used to get the descriptions of the various spaces configured for the index.
{- "vectorSpaces": {
- "semantic-search-title": {
- "description": "vector space used to enrich the title using the text-embedding-ada-002 model",
- "default": false
}, - "semantic-search-description": {
- "description": "vector space used to enrich the description using the text-embedding-ada-002 model",
- "default": true
}
}, - "lexicalSpaces": {
- "fulltext-title-description-concat": {
- "description": "lexical space used for fulltext search on a concatenation of title and description",
- "default": true
}
}
}
The AI Search API
enables powerful retrieval of content across one or more indexes for a given tenant.
It supports a wide range of modern information retrieval needs through fulltext, semantic, and hybrid (composed) queries.
With support for complex filtering, flexible query composition, and advanced search parameters,
this API provides users with the tools needed for sophisticated and efficient data discovery.
Key Features:
Multiple Query Types:
Supports semantic
, fulltext
, and filter
queries individually or in combination, allowing retrieval by meaning, keywords, or structured criteria.
Query Composition: Enables hybrid searches by composing multiple queries—such as combining filters with fulltext and vector searches—for highly precise and relevant results. Vector and fulltext queries can also be combined to leverage the strengths of both approaches.
Flexible Filtering: Allows users to define filter groups, apply filters alone, or combine filters as pre-filters within either a vector or a fulltext query for targeted results.
Search Features:
Includes cursor-based pagination
for efficient navigation through large result sets, and sorting to order results as needed (e.g., by score, timestamp etc).
Vector Query Enhancements: For vector-based (semantic) queries, supports retrieval of both original documents and chunked (subdocument) representations for greater result detail.
Multi-Index Search: Enables searching across multiple indexes simultaneously, maximizing coverage and simplifying cross-dataset discovery.
Configurable Vector and Lexical Spaces:
Users can explicitly select which vector (semantic)
or lexical (fulltext) space
within an index to use for each query,
supporting rapid A/B testing
and comparative evaluation of different configurations. This is a very powerful feature that gives the ability to evaluate
and fine-tune various parts of the Index configuration in parallel.
Search for content using hybrid, vector, filter or fulltext search.
Content AI search query
required | object (ContentAISearchIndexConfig) |
required | object (ContentAIQuery) |
object (ContentAIQueryOptions) |
OK
Bad Request. The Problem Details object will provide more information about the exact cause.
Unauthorized
Forbidden
Unacceptable. Indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.
Unsupported Media Type. When provided as a response to a PATCH
request,
the response will provide an Accept-Patch
response header to notify
the client what patch document media types are supported.
Unprocessable Entity. The server understands the patch document and the syntax of the patch document appears to be valid, but the server is incapable of processing the request. This might include attempts to modify a resource in a way that would cause the resource to become invalid.
Too Many Requests
The server encountered an unexpected error. Retrying the request after a certain time could help.
The service is temporarily unavailable. Please try again later.
This example demonstrates query composition with vector and fulltext queries. The query is executed across 2 indexes. It combines a vector search for the phrase "What are the benefits of electric cars" with a fulltext search for the word "recycled". The queries are executed under OR operator which means results from both the queries would be returned based on relative order.
{- "searchIndexConfig": {
- "indexes": [
- {
- "name": "content-ai-articles-index"
}, - {
- "name": "content-ai-blogs-index"
}
]
}, - "query": {
- "type": "composite",
- "operator": "OR",
- "queries": [
- {
- "type": "vector",
- "text": "What are the benefits of electric cars",
- "options": {
- "numCandidates": 3,
- "boost": 1
}
}, - {
- "type": "fulltext",
- "text": "recycled",
- "options": {
- "lexicalSpaceSelection": {
- "space": "fulltext"
}, - "boost": 1.5
}
}
]
}, - "queryOptions": {
- "pagination": {
- "limit": 1
}, - "sort": [
- {
- "orderBy": "width asc",
- "lexicalSpaceSelection": {
- "space": "fulltext-title-description-concat"
}
}, - {
- "orderBy": "height desc",
- "lexicalSpaceSelection": {
- "space": "semantic-search-title"
}
}
]
}
}
Example of a Content AI Response for a search query.
{- "totalResults": 5,
- "results": [
- {
- "id": "doc_1",
- "index": "content-ai-articles-index",
- "score": 0.7514963709,
- "data": {
- "title": "The Benefits of Electric Cars",
- "description": "This document talks about the advantages of electric cars, like how they reduce pollution and save money on fuel. It also mentions some challenges, such as the need for charging stations.",
- "tags": [
- "pollution",
- "electric"
],
}, - "chunks": [ ]
}
], - "cursor": "WzAuMDAxNDk2MzcwOSwibXNjX2ZhbnRhc2lhX21lZGl0ZXJyYW5lYW5fXzV3cCJd"
}
The AI Answers API
provides AI-powered natural language response generation using advanced Retrieval-Augmented Generation (RAG) mechanisms.
This API transforms user queries and contextual metadata into comprehensive, brand-customized answers by leveraging hybrid search capabilities
to retrieve relevant content and generate contextually appropriate responses through configurable prompt instructions.
Key Features:
RAG-Powered Response Generation:
Utilizes sophisticated Retrieval-Augmented Generation (RAG)
techniques that combine the user's natural language query
with metadata to locate and retrieve the most relevant excerpts from site pages before generating comprehensive, contextually accurate answers.
Hybrid Search Integration:
Leverages Content AI services' powerful hybrid search capabilities
that combine semantic understanding with metadata-based
composition, ensuring retrieved content is both semantically relevant and contextually appropriate for the user's specific needs.
Dual Response Modes:
Supports both blocking (synchronous)
and streaming (SSE)
response patterns, enabling flexible integration approaches—
from simple request-response workflows to real-time streaming experiences that provide progressive answer generation.
Brand Customization Support:
Enables configurable prompt instructions
that allow organizations to customize the tone, style, and approach of generated responses,
ensuring answers align with brand voice, compliance requirements, and specific organizational communication standards.
Contextual Metadata Processing:
Accepts flexible metadata
parameters that enhance query understanding and content retrieval precision,
supporting geography-specific responses, user role-based filtering, and other contextual customizations.
Citation and Follow-up Generation:
Automatically generates source citations
from retrieved documents and suggests relevant follow-up questions
,
providing users with transparency into answer sources and natural conversation continuation pathways.
QMA Tracking Integration:
Creates unique QMA (Query/Metadata/Answer)
identifiers for each interaction, enabling seamless integration
with feedback collection systems and comprehensive analytics tracking across the generative search ecosystem.
Submit a blocking generative query request with contextual metadata
Successful search response
Bad Request. The Problem Details object will provide more information about the exact cause.
Unauthorized
Forbidden
The configuration uid or integrator id is not found.
Unacceptable. Indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.
Unsupported Media Type. When provided as a response to a PATCH
request,
the response will provide an Accept-Patch
response header to notify
the client what patch document media types are supported.
The server encountered an unexpected error. Retrying the request after a certain time could help.
The service is temporarily unavailable. Please try again later.
{- "query": "How do I create a new project?",
- "integratorId": "stable-uid"
}
{- "query": "string",
- "result": "",
- "links": [ ],
- "questions": [ ],
- "type": "start",
- "qmaId": "string"
}
Submit a streaming generative query request with contextual metadata
Successful generative search response
Bad Request. The Problem Details object will provide more information about the exact cause.
Unauthorized
Forbidden
The configuration uid or integrator id is not found.
Unacceptable. Indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.
Unsupported Media Type. When provided as a response to a PATCH
request,
the response will provide an Accept-Patch
response header to notify
the client what patch document media types are supported.
The server encountered an unexpected error. Retrying the request after a certain time could help.
The service is temporarily unavailable. Please try again later.
{- "query": "How do I create a new project?",
- "integratorId": "stable-uid"
}
{- "query": "string",
- "result": "",
- "links": [ ],
- "questions": [ ],
- "type": "start",
- "qmaId": "string"
}
The Feedback API
provides endpoints that enable end-users to provide structured feedback on generative search results.
This API captures user satisfaction through boolean ratings (like/dislike) and optional detailed reasoning, creating a critical
feedback loop for improving the quality of AI-generated answers over time.
Key Features:
Binary Feedback Collection:
Captures user satisfaction as a simple boolean value (liked: true/false
), easily mappable to common UI patterns
like thumbs up/down, like/dislike buttons etc.
Detailed Reasoning Capture:
Accepts optional reason
parameter allowing users to provide specific explanations for their feedback,
enabling deeper understanding of why answers were considered helpful or inadequate.
QMA Context Association:
Links feedback directly to specific QMA (Query/Metadata/Answer)
combinations, ensuring that user ratings
are associated with the exact context of the original user query, provided metadata, and generated response
from the generative search API.
Evaluation Engine Integration: Serves as the foundational data source for building sophisticated evaluation engines that analyze feedback patterns to identify areas for improvement in answer quality, relevance, and user satisfaction across different query types and contexts.
This operation allows the end-user to update the user rating of a feedback entry stored in the feedback collection.
If-Match required | string The For more details, please head over to RFC9110. |
OK — returns the updated feedback
Bad Request. The Problem Details object will provide more information about the exact cause.
Unauthorized
Forbidden
Not Found
Unacceptable. Indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.
Precondition Failed
Precondition Required
The server encountered an unexpected error. Retrying the request after a certain time could help.
{- "liked": false,
- "reason": "The answer is not relevant to my question."
}
{- "liked": false,
- "reason": "The answer is not relevant to my question."
}
This operation allows the end-user to create the user rating of a feedback entry stored in the feedback collection.
OK — returns the created feedback
Bad Request. The Problem Details object will provide more information about the exact cause.
Unauthorized
Forbidden
Not Found
Unacceptable. Indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.
The server encountered an unexpected error. Retrying the request after a certain time could help.
{- "liked": false,
- "reason": "The answer is not relevant to my question."
}
{- "liked": false,
- "reason": "The answer is not relevant to my question."
}