Skip to main content
All endpoints are GET, require the x-api-key header, and return data scoped to your key’s environment. Paths are relative to the base URL.

Summary

GET /data/quota is documented on the Rate limits & quotas page.

Pagination

List endpoints accept the standard pagination query parameters: Paginated responses wrap the items with a pagination object:
total is the total number of matching items across all pages — keep requesting with an increasing offset until offset + items.length >= total.

Projects

GET /data/projects

Lists the environment’s projects, newest first. Query parameters: limit, offset, and optional status — one of PENDING, IN_PROGRESS, DEFECTS_CORRECTION, COMPLETED, PRE_CONTRACT, NOT_YET_SECURED. Response — items is an array of project summaries:
All fields other than id, name, project_reference and archived are nullable.

GET /data/projects/:id

Returns a single project. Responds 404 if the project does not exist in your environment. Response — all project summary fields above, plus:
All additional detail fields are nullable.

GET /data/projects/:id/risk-assessments

Returns the project’s initial risk assessments (assessment sets with their risk items), newest first. Responds 404 if the project is not in your environment. Response — an array (not paginated):
current_status, value and score are nullable.

GET /data/projects/:id/appraisals

Returns the project’s development appraisal lines in display order. Responds 404 if the project is not in your environment. Response — an array (not paginated):
budget, out_turn, facility and last_modified_date are nullable.

Benchmarks

GET /data/benchmarks

Lists the environment’s benchmark snapshots. Query parameters: limit, offset, and optional projectId to filter to a single project (which must be in your environment). Response:
type is STANDARD or COMPOSITE. All value fields (bcis, model_value, model_value_lower, model_value_upper, source_health, community_value) are nullable.

Reports

GET /data/reports

Lists the environment’s report metadata. Query parameters: limit, offset. Response:

GET /data/reports/:id

Returns report detail. Responds 404 if the report is not in your environment. Response — all report metadata fields above, plus risk_statuses:
description, legend and legend_colour are nullable.

Community

Community endpoints require the explicitly-granted data:community scope. Responses are always anonymised aggregates — no raw community project rows are ever returned, and grouped buckets below the k-anonymity floor (min_group_size) are omitted entirely.

GET /data/community/analytics

Anonymised analytics for the communities your environment belongs to. Response:

GET /data/community/benchmarks

Anonymised community benchmark aggregates by building function. Response:
omitted_buckets is the number of buckets excluded because they fell below the k-anonymity floor. All averaged/median fields are nullable.