Heppu APIv2.heppu.ai/api

Knowledge explained

What your workers know. Push sources, we chunk, embed and index them.

Knowledge lives in collections. A collection is assigned to one or more workers. A source is one document inside a collection: a product page, a price list, a policy, a car listing. You push the text, we do the rest.

Do thisEndpoint
Push or update one sourcePOST /v1/kb/sources
Push up to 50 at oncePOST /v1/kb/sources/batch
See what's indexedGET /v1/kb/sources
Remove sourcesDELETE /v1/kb/sources

Create the collection in the dashboard first (Knowledge, New collection) and grab its id from the URL.

How sync works

You give every source an externalId, your id for it. Same externalId in the same collection means update. We hash the content, so re-posting identical text is a no-op and costs nothing.

POST same externalId, same content    → 200 unchanged
POST same externalId, new content     → 200 processing (reindex)
POST new externalId                   → 201 processing

Processing is async. Status goes pendingprocessingcompleted | failed. Usually seconds, sometimes a minute for big documents. Poll the list with status=failed after a sync if you want to be sure.

externalId is unique per collection, not per org. The same upstream id can live in two collections.

Validity windows

Sources can carry validFrom and validUntil. A worker won't use a source outside its window. Good for seasonal pricing, campaign terms, listings that expire. Mark superseded content as contentRole: "historical" if you want the worker to know it existed but not quote it as current.

Limits

Content per source500 000 characters
Title500 characters
externalId255 characters
Batch size50 sources
Delete batch100 externalIds

On this page