canonical: https://jentic.com/apis/amazonaws.com/kendra

# AWS Amazon Kendra

Jentic publishes the only available OpenAPI specification for Amazon Kendra, keeping it validated and agent-ready. Amazon Kendra is a managed enterprise search service that ingests documents from S3, SharePoint, Confluence, Salesforce, ServiceNow, and many other sources, then answers natural-language queries with passage-level results. Its 65 endpoints cover index lifecycle, data source connectors, query and suggestion APIs, FAQ ingestion, access control mappings for tenant-aware results, query suggestions, and featured-results experiences. Kendra is a frequent retrieval layer for enterprise RAG pipelines that need permission-aware document search.

## For AI agents

Run natural-language enterprise search across documents in S3, SharePoint, Confluence, and other sources with passage-level answers and access controls.

## Scope

Does not handle web crawling of public sites, vector index management, or LLM generation - use for permission-aware enterprise document search and retrieval only.

## Capabilities

- Provision Kendra indexes via CreateIndex
- Connect data sources such as S3, SharePoint, and Confluence with CreateDataSource
- Submit natural-language queries against an index with the Query operation
- Ingest FAQ files for direct answer surfacing
- Manage access control list mappings for permission-aware search results
- Configure query suggestions and featured results sets
- Index custom documents directly via BatchPutDocument

## Use cases

### Enterprise Document Search

Provide employees with natural-language search across internal documents stored in many systems. Amazon Kendra connects to S3, SharePoint, Confluence, and Salesforce, indexes the content with semantic understanding, and returns ranked answers, document excerpts, and relevant passages. The Query API supports filters, sorting, and access control so each user sees only documents they are entitled to view.

Example prompt: Submit the query 'what is our parental leave policy' against index 12345-abcde and return the top three excerpts

### RAG Retrieval Layer

Use Kendra as the retrieval layer for retrieval-augmented generation pipelines that feed an LLM with permission-aware passages. The Query API and the Retrieve API return relevant text spans tagged with their source URI and access tokens, so the application can stitch them into a prompt and cite results back. Kendra's deep relevance ranking and ACL inheritance reduce the engineering effort compared to building an embedding pipeline from scratch.

Example prompt: Call the Retrieve operation for query 'database migration runbook' against index 12345-abcde with userContext groups ['platform']

### Customer Support Knowledge Base

Power a self-service support experience by indexing product manuals, help-centre articles, and FAQs. Kendra's FAQ ingestion lets you upload curated question and answer files that surface as direct answers when a user query matches. The Suggestions API offers autocomplete based on actual queries, helping users land on the right article quickly.

Example prompt: Create an FAQ named 'billing-faq' on index 12345-abcde from S3 file s3://docs/faqs/billing.csv with role arn:aws:iam::123:role/kendra-faq

### AI Agent Knowledge Retrieval

AI agents call Amazon Kendra through Jentic to ground answers in authoritative enterprise documents before responding. The agent searches Jentic for the right Kendra operation, loads the schema, and submits a query alongside user context tokens for ACL filtering. This adds factual grounding to agent answers without exposing AWS credentials to the agent runtime.

Example prompt: Search Jentic for 'enterprise document search', load the Query schema, and run query 'expense report deadline' against index 12345-abcde

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /#X-Amz-Target=AWSKendraFrontendService.CreateIndex | Create a Kendra index |
| POST | /#X-Amz-Target=AWSKendraFrontendService.CreateDataSource | Create a data source connector |
| POST | /#X-Amz-Target=AWSKendraFrontendService.Query | Run a natural-language query |
| POST | /#X-Amz-Target=AWSKendraFrontendService.Retrieve | Retrieve passages for RAG pipelines |
| POST | /#X-Amz-Target=AWSKendraFrontendService.BatchPutDocument | Index custom documents directly |
| POST | /#X-Amz-Target=AWSKendraFrontendService.CreateFaq | Create an FAQ from a curated file |

## Key resources

- **Indexes** — Create, update, list, and delete Kendra indexes
- **Data Sources** — Connect and sync content from S3, SharePoint, Confluence, and other sources
- **Queries** — Submit natural-language queries and retrieve ranked answers
- **FAQs** — Upload curated question and answer files for direct surfacing
- **Featured Results and Suggestions** — Configure curated results and autocomplete suggestions

## Why Jentic

- **Setup:** Wiring the Amazon Kendra API by hand means building AWS Signature Version 4 signing, selecting the right regional host from kendra.{region}.amazonaws.com, setting the X-Amz-Target header on every call, and handling AWS throttling and retries yourself. Through Jentic you install once, import Amazon Kendra from the API Directory, store the AWS access key and secret once, and your agent calls it.
- **Permission scoping:** Kendra is an X-Amz-Target RPC API where the index id and query travel in the request body, so limit the agent to the operations it needs, such as Query or Retrieve for read-only search. You choose the operations it may call, so destructive ones like DeleteIndex or DeleteDataSource are not included unless you add them.
- **Credential handling:** Your AWS access key and secret for Kendra are stored once, encrypted, by your own Jentic One instance and signed with SigV4 at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'search enterprise documents with natural language' or 'retrieve passages for a rag pipeline', and Jentic returns the matching Kendra operation with its input schema so the agent calls the right endpoint without reading the AWS reference.

## Related APIs

- **Amazon Comprehend** — Natural language processing for text analysis
- **Amazon Elasticsearch Service** — Managed Elasticsearch and OpenSearch clusters
- **Amazon Textract** — Extract text, forms, and tables from scanned documents
- **Amazon SageMaker** — Build, train, and host machine learning models

## FAQ

### Why is there no official OpenAPI spec for Amazon Kendra?

AWS does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call Amazon Kendra via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the Amazon Kendra API use?

Amazon Kendra uses AWS Signature Version 4 (SigV4) HMAC request signing. Each call must be signed with an access key, secret key, and optional session token scoped to Kendra IAM permissions. Through Jentic, credentials are stored encrypted in the vault and signing happens at execution time.

### Can I use Amazon Kendra as the retrieval layer for an LLM?

Yes. The Retrieve operation is designed for retrieval-augmented generation. It returns longer passages with source attribution rather than the short excerpts returned by Query, which makes it well suited for stitching grounded context into LLM prompts.

### How do I run a natural-language query through Jentic?

Search Jentic for 'enterprise document search', load the schema for the Query operation, submit your IndexId and QueryText, then read the ResultItems list for ranked answers and excerpts. Jentic handles SigV4 signing automatically.

### What are the rate limits for the Amazon Kendra API?

Per-region quotas apply, including a default queries-per-second limit per index that varies by edition (Developer vs Enterprise) and additional limits on data source sync jobs and document ingestion. Check the Kendra service quotas in the AWS console for the values in your account.

### Can Amazon Kendra enforce document-level permissions?

Yes. Pass UserContext with user and group tokens on every Query or Retrieve call, and ensure the indexed documents carry _user_id and _group_ids metadata or are sourced through connectors that propagate ACLs. Kendra filters results so each user only sees documents they are entitled to view.

### Is Amazon Kendra free to use?

No. Kendra is billed per index hour with separate Developer and Enterprise editions and additional charges for connector sync jobs and document storage. Use the AWS pricing page to estimate cost based on your index size and query volume.

### Can I limit what my agent is allowed to do with the Amazon Kendra API?

Yes. Because you run Jentic One yourself, your own rules decide which of Kendra's X-Amz-Target operations the agent may call, so you can allow just read-only search actions like Query and Retrieve while leaving destructive ones such as DeleteIndex and DeleteDataSource out entirely. The index id and query text travel in the request body, and your AWS access key and secret are stored by your own instance and signed at execution time, so they never reach the agent's prompt or logs. You add each operation to the agent's allowed set deliberately, giving the operator control over exactly what it can do against your Kendra indexes.
