Where the open-source database community meets: Secure your spot at PerconaLive.com

Percona Community Search API — developer docs

This page documents the public search API used by percona.community — semantic search over community blog posts, events, talks, contributors, and related pages.

It is not a product SDK portal for Percona Server, Operators, or PMM. For product documentation see docs.percona.com.

ResourceURL
OpenAPI specificationhttps://percona.community/openapi.json
AI Cataloghttps://percona.community/.well-known/ai-catalog.json
API basehttps://search.percona.community
Healthhttps://search.percona.community/health
Site search UIhttps://percona.community/search/
Agent site map (llms.txt)https://percona.community/llms.txt

Authentication

None for the public endpoints below. Do not send API keys.

Admin surfaces on search.percona.community (demo, OpenAPI UI on that host, indexing) may be protected with HTTP Basic Auth. Those are for operators, not for agents or site widgets.

Endpoints

GET /health

Liveness / readiness for the search service. Used by the site widget.

bash
curl -sS https://search.percona.community/health

POST /search

Semantic (and hybrid) search. Request body is JSON.

FieldTypeDefaultNotes
querystringrequiredNatural-language query
limitint20Max results
content_typestringomit = allOne type or comma-separated: blog, percona_blog, event, talk, contributor
min_scorefloatserver defaultCosine similarity floor
per_type_limitboolfalseLegacy: up to limit per type

Example:

bash
curl -sS -X POST https://search.percona.community/search \
  -H 'Content-Type: application/json' \
  -d '{"query":"zero downtime database migration","limit":8,"content_type":"blog,talk"}'

Each result includes url, title, content_type, excerpt, score, and optional author, date, tags, and image URLs. Full schemas live in the OpenAPI file.

CORS

The API allows browser calls from https://percona.community (and related origins configured on the server). Server-to-server calls from agents do not need CORS.

Rate limits

POST /search may be rate-limited at the reverse proxy. Prefer modest limit values and avoid tight polling loops.

Widget

The same API powers the on-site widget:

text
https://search.percona.community/community-search.js

See the search page for the interactive UI.

OpenAPI for tools

Point OpenAPI-aware clients, codegen, or agents at:

text
https://percona.community/openapi.json

The servers entry in that file targets https://search.percona.community.