AI RAG Knowledge Base Chat API

Build private document knowledge bases and answer with citations

Knowledge Base RAG Streaming

API features

Private knowledge bases from five document formats

Upload PDF, TXT, Markdown, HTML, and DOCX files for product guides, policies, support content, and internal documentation.

Evidence-based answers with citations

Generate answers from the uploaded content and return the supporting document passages for review and display.

Knowledge bases for each business context

Separate content by product, project, customer, or tenant while using one consistent API contract.

OpenAI-compatible JSON and real-time SSE

Use familiar chat completion responses for regular requests or stream answer text as it is generated.

Client-controlled multi-turn context

Send the complete conversation history your application wants the answer to consider on every request.

Replace and delete documents

Refresh a same-name document safely or remove a document when its content is no longer needed.

API Document

HTTP Protocol:HTTPS

HTTP Method:POST

HTTP Endpoint:https://api.gugudata.io/ai/knowledge-bases/{knowledge_base_id}/chat/completions

Response Type:application/json; charset=utf-8

DEMO Endpoint:https://api.gugudata.io/ai/knowledge-bases/default/chat/completions/demo

Live Demo:Try Interactive Demo

Postman Collection:Run in Postman

API Request Parameters

NameTypeIs RequiredDefault ValueRemark
knowledge_base_id string truedefault Knowledge base identifier in the URL path.
appkey string trueYOUR_APPKEY API key used to authenticate the request.
model string falsegugudata-knowledge-chat OpenAI Chat Completions compatible model name.
messages array<object> true[{"role":"user","content":"What does the documentation say?"}] Complete client-managed conversation context with 1 to 20 system, user, or assistant messages.
thread_id string false Optional request correlation identifier; it does not restore server-side history.
tenant_id string falsedefault Customer-defined knowledge base grouping; defaults to default.
stream boolean falsefalse Return real-time Server-Sent Events when true.
top_k integer false6 Number of retrieved source passages from 1 to 12.

Upload Knowledge Base Documents

Upload documents and build a private knowledge base.

HTTP Endpoint:POST https://api.gugudata.io/ai/knowledge-bases/{knowledge_base_id}/documents

NameTypeIs RequiredRemark
knowledge_base_id string true Knowledge base identifier; default may be used.
appkey string true API key used to authenticate the request.
files array<file> true PDF, TXT, Markdown, HTML, or DOCX documents; up to 5 files and 20 MB per file.
tenant_id string false Customer-defined business grouping; defaults to default.
metadata object false Customer-defined metadata as a JSON object up to 8 KiB.
replace_existing boolean false Replace an existing document with the same name when true.

Delete Knowledge Base Document

Delete one document and its searchable content from a private knowledge base.

HTTP Endpoint:DELETE https://api.gugudata.io/ai/knowledge-bases/{knowledge_base_id}/documents/{document_id}

NameTypeIs RequiredRemark
knowledge_base_id string true Knowledge base identifier.
document_id string true Document identifier returned by the upload operation.
appkey string true API key used to authenticate the request.
tenant_id string false Customer-defined knowledge base grouping; defaults to default.

API Response Parameters

NameTypeRemark
id string Chat completion response identifier.
message_id string Identifier for the generated answer.
object string OpenAI-compatible response object type.
thread_id string Request correlation identifier returned to the client.
choices[0].message.content string Answer generated from uploaded documents.
sources array<object> Document passages cited by the answer.
usage object Usage summary for the request.

API Response Status Codes

Status CodeExplanation of Status CodeRemarks
200Request processed successfully.Some endpoints expose a separate application-level status field in the response body, such as `dataStatus.statusCode`.
400Invalid request parameters or request format.Check required fields, data types, and request body format.
401Missing or unknown application key.Provide a valid `appkey` with the request.
403The application key is recognized but access is not allowed.The key may be expired, inactive, or not permitted for the requested API.
429Request rate or trial usage limit exceeded.Reduce request frequency and retry with backoff. If a trial allowance is exhausted, check Trial Keys for remaining requests and subscribe to continue.
500Internal service error.Retry later or contact support if the error persists.
503Upstream service unavailable.Retry later; the requested upstream dependency is temporarily unavailable.

Remote MCP

AI client access

Use this API through GuGuData Remote MCP

Connect your AI client once, authorize in the browser, and the client can use the GuGuData API tools available to your account. You do not need to paste an appkey into the MCP client.

Endpoint https://mcp.gugudata.io/mcp
Open MCP Guide
Generic MCP configuration
{
  "mcpServers": {
    "gugudata": {
      "url": "https://mcp.gugudata.io/mcp",
      "transportType": "streamable-http"
    }
  }
}

Code Snippets

Frequently asked questions

Common questions about request limits, trials, renewal, and cancellation.

What does the 5 requests per second limit mean?

It is a request-rate limit, not a concurrency allowance. Keep your request rate at or below 5 per second. If the service returns a rate-limit response, reduce the frequency and retry with backoff.

Is total paid usage limited?

There is no total request cap during an active paid subscription and no usage-based overage charge.

How does the free trial work?

Each account can receive a limited trial key. Requests are shared across APIs in the same category. Check Trial Keys for the exact allowance and remaining requests.

How do renewal and cancellation work?

The plan renews annually until canceled. Manage or cancel the renewal from Dashboard → Orders & Billing. Access continues through the paid period after cancellation. See the Terms of Service for the current refund policy. If the billing portal is unavailable, contact support.

Technical support

Need help choosing an API or getting started?

[email protected]

Service terms

Read our service terms and privacy policy before subscribing.