Skip to content

Context documents

Context documents are files you upload so Prokure has more to work with than the structured company profile — a capability statement, a security clearance summary, anything that helps explain who you are and what you do. Prok uses them for two things: drafting proposals, and judging fit when it scores a new opportunity.

profile:write is required. The request is multipart/form-data, one file per request:

Terminal window
curl -X POST "https://app.prokure.ca/api/v1/knowledge/docs" \
-H "Authorization: Bearer $PROKURE_API_KEY" \
-F "title=Capability statement"

title is optional and defaults to the filename. A successful upload returns 202 immediately — the document is not usable yet:

{ "id": "5e2f5b3a-...", "status": "processing" }
Limit Value
File types PDF, DOCX, TXT, MD
Size 15 MB per file
Documents per account 50

A file outside these is rejected before anything is stored: 415 for an unsupported extension, 413 for size, 409 (context_doc_cap_reached) for the 50-document cap.

Prokure extracts the document’s text, then chunks and indexes it in the background. GET /api/v1/knowledge/docs reports where each one is:

status Meaning
processing Extraction or indexing is still running.
ready Indexed and in use.
failed The first processing attempt went wrong — see ingest_error.

A ready document can also carry a non-null ingest_error: a later background refresh failed after the document was already indexed. Nothing is taken offline by a failed refresh — the last successfully processed version stays in use for drafting and match scoring, and the note clears on the next refresh that completes.

A document that yields no readable text fails immediately at upload time (422, empty_document or unreadable_document) and is never stored. One that extracts fine but is unusually long can still fail during background processing if it produces more than 400 chunks; ingest_error explains the limit and asks you to split it and re-upload. Poll the list while any document shows processing — most finish well under a minute.

A context document is not inert reference material. The moment one finishes processing, it becomes part of both proposal drafting and match scoring for every opportunity Prokure evaluates from then on. A document that speaks to requirements Prokure previously had no evidence for can change an opportunity’s score, and can be enough to pull a solicitation that was previously screened out into your next digest. If you want to see the effect, check your recent scores and your next digest after an upload — uploading is not a passive filing step.

DELETE /api/v1/knowledge/docs/{id} requires profile:write:

Terminal window
curl -X DELETE "https://app.prokure.ca/api/v1/knowledge/docs/$ID" \
-H "Authorization: Bearer $PROKURE_API_KEY"

Deletion is immediate and removes the document’s influence going forward — Prokure stops drawing on it for both drafting and scoring. It does not retroactively change a verdict already reached, but opportunities it had been feeding into are re-scored shortly after.