Endpoints
Opportunity, pipeline, procurement-graph, and governed intelligence APIs for discovery, CRM sync, explainability, administration, and agent workflows.
GET /api/v1/public/opportunities
Scored federal opportunities for the key's workspace, highest fit first.
| Query param | Default | Description |
|---|---|---|
limit | 20 | Results to return (1–100). |
min | 1 | Minimum fit score filter. |
cursor | — | Opaque cursor returned by the previous page. A cursor is bound to the original filters. |
{
"count": 2,
"opportunities": [
{
"id": "43eeed69-…",
"title": "Enterprise Cloud Migration under NASA SEWP V",
"agency": "NASA.GODDARD SPACE FLIGHT CENTER",
"naicsCode": "541512",
"type": "NEW_SOLICITATION",
"predicted": false,
"fitScore": 80,
"winProbability": 64,
"recommendation": "qualify",
"priority": 61,
"responseDeadline": "2026-08-01",
"link": "https://sam.gov/opp/…"
}
]
}GET /api/v1/public/opportunities/:id
A single scored opportunity by signal id. 404 if unknown.
GET /api/v1/public/pipeline
Your tracked opportunities with pursuit status — the endpoint a CRM sync pulls. Optional ?status=pursuing|watching|passed. Each item adds pursuitStatus and trackedAt to the opportunity shape above. It uses the same limit and cursor contract.
Public data resources
All list routes return count, a named result array, and pagination with limit, hasMore, and an opaque nextCursor. Sandbox keys return the identical contract with synthetic data.
| Endpoint and scope | Filters | Stable resource contract |
|---|---|---|
GET /api/v1/public/signals · signals:read | source · type | Normalized signal payload, observation/change dates, revision, strength, confidence, and source-authority provenance. |
GET /api/v1/public/forecasts · forecasts:read | stage | Published early, forecast, and recompete opportunities with agency, stage, confidence, evidence counts, classification codes, and signal window. |
GET /api/v1/public/contacts · contacts:read | status · category | Only the issuing tenant's relationship contacts, including ownership, stakeholder role, scores, next action, and communication fields. |
GET /api/v1/public/agencies · agencies:read | type · q | Canonical active agency, subagency, office, and program-office entities with public attributes. |
GET /api/v1/public/relationships · relationships:read | type | Accepted, active, non-retired procurement graph edges with resolved endpoints, confidence, effective dates, properties, source, and projection version. |
GET /api/v1/public/intelligence · intelligence:read | type · module | Only published tenant intelligence at its current version, including scores, explanation, output, citations, evidence lineage, graph hooks, and input versions. |
Procurement knowledge graph
These authenticated routes read the shared procurement intelligence plane. PostgreSQL remains the source of truth. Relationship traversals use Neo4j for lean identifiers, structural fields, temporal properties, confidence, and provenance; when that store is not connected, their response is explicit: { "configured": false }. Materialized patterns, prediction learning, recommendation lineage, outcomes, and higher-order market insights read PostgreSQL directly.
| Endpoint | Returns | Use |
|---|---|---|
GET /api/v1/graph/opportunities/:id | bounded evidence neighborhood | Agency, subagency, office, program office, program, budgets, signals including dated contract actions/modifications, solicitation, contracts with financial completeness, IDV parents, task orders, vendors and corporate roles, certification history, contacts, vehicles, Pool/Domain/Track/SIN scopes, protests, subawards, and source-backed replaced-by, related, follow-on, competing, consolidated, or split opportunities. |
GET /api/v1/vehicles | activity and IDV utilization | Named vehicle activity plus PostgreSQL-authoritative IDV ceiling, observed task-order obligations, remaining runway, utilization percentage, vendor-pool usage, data completeness, confidence, and calculation warnings. No ceiling evidence returns null runway instead of an estimate. |
GET /api/v1/graph/vendors/:id | vendor relationship graph | Agencies, subagencies, offices, and program offices served; contracts and task orders with current/all-options/ceiling values, obligations, remaining potential, modification counts, and dated action evidence; IDVs, vehicle scopes held, subaward partners, related vendors, parents, subsidiaries, business units, acquired/divested entities, corporate families, JVs, mentor-protégé agreements, renewable certification periods, contacts with dated employment history, and protest history. |
GET /api/v1/graph/agencies/:id | agency buying graph | Subagencies, offices, program offices, programs, budget lines, vendors and their corporate roles, NAICS/PSC, active opportunities, contracts and task orders with financial/action history, vehicles and Pool/Domain/Track/SIN scopes, contacts, and protests. |
GET /api/v1/graph/recompetes | materialized predictions | Likely-recompete relationships with agency, office, NAICS, PSC, incumbent UEI, expiration window, minimum value, set-aside, and confidence filters. |
GET /api/v1/graph/teaming | materialized recommendations | Potential teaming relationships filtered by opportunity, agency, NAICS, PSC, set-aside, socioeconomic status, and verified past performance. |
GET /api/v1/graph/workspace | tenant-isolated overlay | The current company's tracked agencies, watched vendors, tracked and captured opportunities, and managed partners. Private choices stay in PostgreSQL and are never copied into the shared reference graph. |
GET /api/v1/graph/workspace/entity/:id | shared entity plus private overlay | Joins one authorized workspace, member, team, or business-unit overlay to a shared reference entity at read time. Tenant-private state is never projected to Neo4j. |
GET /api/v1/graph/patterns | procurement timing patterns | Observed agency/program averages for budget → forecast → RFI → sources sought → RFP, including per-transition samples, total sample size, reliability, and the enforced 0.25 / 0.75 / 1.00 influence multiplier. |
GET /api/v1/graph/insights | higher-order market analytics | PostgreSQL-authoritative Growing Agency, Emerging Program, Vehicle Dependency, and Contract Concentration Risk records with subject, optional related entity, score, confidence, risk, explanation, evidence IDs, calculation window, model version, and generated time. Supports type, minimum score, minimum confidence, risk, and limit filters; inactive or sub-50-confidence evidence, weak samples, and ambiguous agency, vendor, or vehicle links are excluded. Obligated-value concentration is used only with complete award financial coverage; otherwise the basis is award count. |
GET /api/v1/graph/vendor-performance?limit=20 | sourced Vendor Performance Graph | PostgreSQL-authoritative vendor metrics for total awards, observed obligations, average award size, agency/office/vehicle reach, subaward and prime counts, and evidence-proven recompete wins. Financial unknowns and unproven recompetes remain null; supports a bounded 1–200 limit and does not require Neo4j. |
GET /api/v1/graph/vendors/:id/performance | one sourced vendor metric | The matching vendor-performance record by canonical graph UUID, UEI, CAGE, or canonical key. It includes calculation basis, confidence, completeness, and bounded canonical evidence IDs. |
GET /api/v1/graph/teaming-relationships?vendor=:id&limit=20 | observed historic teaming | PostgreSQL-authoritative prime-to-subcontractor aggregates from canonical accepted subawards: shared contracts, agencies, observed relationship value, value coverage, confidence, and bounded subaward evidence IDs. The optional vendor accepts canonical UUID, UEI, CAGE, or canonical key; results are bounded to 1–200 and do not require Neo4j. |
GET /api/v1/graph/contact-relationships?limit=20 | procurement contact patterns | PostgreSQL-authoritative Contact Relationship Intelligence from accepted Contact → Contract or Task Order associations: deterministic relationship strength, accepted appearance count, distinct award count, evidence-backed last-seen date, confidence, and bounded edge evidence IDs. This is procurement-pattern recognition, not a lobbying, influence, or tenant-CRM score; results are bounded to 1–200 and do not require Neo4j. |
GET /api/v1/graph/program-matches?limit=20 | governed Program profiles | PostgreSQL-authoritative Program Matching profiles: canonical Program identity, agency/office/program-office/program-code/budget scope, aliases, NAICS/PSC, source systems, semantic-profile readiness, and the latest bounded semantic-link score components. Raw embeddings and raw source-document text are never returned; results are bounded to 1–200 and do not require Neo4j. |
GET /api/v1/graph/crosswalk | governed NAICS ↔ PSC mappings | Active or inactive many-to-many mappings with PSC, NAICS, confidence, support ratio, paired/total observation counts, source systems, bounded evidence signal IDs, learned/manual origin, governance state, and model/calculation time. Supports PSC, NAICS, active, origin, minimum-confidence, and limit filters. |
POST /api/v1/graph/crosswalk | Platform Admin only | Reason-required manual verification, refinement, or deactivation of one mapping. Customer workspace ownership and Developer or Customer Service staff cannot mutate the shared internal dataset; every change is audited. |
GET /api/v1/graph/predictions/learning | prediction validation | Immutable predicted event/date, actual solicitation/date, signed error days, match criteria, correct/partial/incorrect status, and current global or agency accuracy. |
GET /api/v1/graph/recommendations/:id/explainability | ordered recommendation path | The current tenant's versioned evidence-to-opportunity path, citation anchors, explanation summary, path hash, and verified outcome links. |
GET /api/v1/graph/outcomes/:id | verified outcome lineage | Tenant-private opportunity, recommendation, proposal, executive-decision, partner, agency, vehicle, and forecast relationships into one verified outcome. |
GET/POST /api/v1/graph/correlation/reviews | Platform Admin only | Lists ambiguous signal-to-opportunity matches and records a reason-backed link, new opportunity, or rejection decision with immutable correlation history. |
POST /api/v1/graph/correlation/merge · /split · /reconcile | Platform Admin only | Governed merge/split and full or source-removal replay. Active evidence counts, publication state, projection events, and append-only audit history are recalculated transactionally. |
GET /api/v1/graph/sync/status | rebuild and reconciliation state | Durable queue, rebuild generation, orphan-retirement, integrity, and remote Neo4j reconciliation status. The API graph path requires a separately provisioned read-only identity. |
Layer 3–9 governed platform APIs
| Endpoint family | Contract | Controls |
|---|---|---|
/api/v1/intelligence/catalog · /objects · /jobs | 12 outputs · 16 engines | Versioned intelligence objects, immutable evidence, publication/review state, expiry/replacement, processing jobs, retries, dead letters, and reason-required replay. |
/api/v1/agents/registry · /runs | 10 governed agents | Versioned runs and outputs, budgets, deterministic gates, tool allowlists, interrupts, cancel/resume/replay, and structured handoffs. |
/api/v1/execution/catalog · /workflows | 23 execution components | Durable workflow versions, tasks, deadlines, dependencies, SLAs, approvals, pause/resume/cancel, compensation, retry/dead-letter/replay, and immutable transitions. |
/api/v1/workspace/catalog | 26 workspace modules | Executable route, role, maturity, evidence, mutation, state, mobile, and accessibility contract for every client-defined module. |
/api/v1/integrations/providers · /health · /mapping-rules | 28-provider launch matrix | Truthful implementation levels, authentication state, weighted health, mapping, conflict, retry/replay, alerts, and plan-aware provider access. |
/api/v1/scenarios · /executive/intelligence | 15 executive modules | Versioned what-if inputs, deterministic seeds, Monte Carlo distributions, comparison, sensitivity, decisions, strategic risk, and durable executive memory. |
/api/v1/learning/catalog · /records · /drift · /replays · /optimizations | 10 learning modules | Strict evidence-to-outcome eligibility, drift holds, holdout/challenger evaluation, historical replay, rollback, privacy thresholds, and approval-gated optimization. |