Skip to content

Understanding match scores

Every matched opportunity carries a score, Prokure’s confidence that the solicitation is worth your time. The min_score filter accepts 0–100, so that is the range to design for. The field is nullable: an opportunity that has not been scored reports null, so guard before you compare.

score_source tells you what the score was computed from, and it matters more than the number alone:

Value Means
pdf_verdict Prokure read the solicitation documents.
metadata_verdict Prokure had only the notice text.
dimensional A score that predates the current verdict model.

A metadata_verdict score is a judgement made on less material than a pdf_verdict one. Treat the two differently if you are automating a decision.

Each list item carries the written explanation behind the verdict and a summary of what the notice is procuring, so a list view can show the reasoning without a call per opportunity. GET /api/v1/opportunities/{id} holds the rest of what the score was made of: the individual dimensions it draws on and the signals Prokure extracted from the solicitation. Every one of those fields is nullable, so treat a missing sub-score as “not reported” rather than as zero.

To ask a question the explanation does not answer, see Asking Prok about an opportunity.

source_status is separate from your account’s workflow status. A notice can be cancelled or complete at its source while retaining its previous score, feedback, and archive state. Those records remain available as history; a high historical score does not make a closed notice actionable.

Non-active notices are excluded from new automated recommendations and draft generation. Source status reflects updates Prokure has received, not a live check of every notice. active is the default where no other source state has been recorded; verify the original notice before acting.

estimated_value is almost always null. None of the portal feeds publish a contract value, so it is only populated when the value appeared in text Prokure could parse. Do not build a report that assumes it is present.