For AI agents
There is no public API.
No deployed API endpoint, no key, no address that answers a query. A read API does exist - dwelldelta-platform ships a versioned /v1/ server, released at v0.8.0 and covered by tests - but it refuses any non-loopback bind, so it answers on 127.0.0.1 and nowhere else. If you came
here to point an agent at something, stop — there is nothing to point it at. What exists is
a design review of what an agent-facing interface would have to get right, and a measured
list of the places this product's own data would get it wrong today.
Checked, not assumed
What was searched for and not found
Each of these was looked for by name across all eight repositories in the project on 2026-08-04. The list is published because the usual way a machine learns a capability is missing is by calling it and failing.
llms.txt,llms-full.txtThe cheapest discovery artifact there isAbsentopenapi.jsonNo document, marked planned or otherwiseAbsentqueryables.json,sources.jsonNo served vocabulary, no served source listAbsentmcp.json, any MCP serverNeither stdio nor HTTPAbsent- Any PUBLIC read endpoint/v1/ answers on loopback only; no public address existsNot deployed
- Any API key, meter or quotaNothing to issue, nothing to countAbsent
- Any watch or subscriptionNo registration, no delivery, no retryAbsent
- Any host, DNS record or pipeline that serves property dataThe board has never been served anywhere but a loopback addressAbsent
This page deliberately publishes no request format, no response envelope and no machine-readable artifact of any kind. A specification is something an agent acts on, and a specification published ahead of the thing it describes is the exact failure this project was built to avoid.
The argument
The schema is the interface
For a human interface, a schema sits behind labels, tooltips, autocomplete, validation messages and a support page. An ambiguous field name costs a support ticket.
For an agent interface there is nothing between the schema and the user. Field names are the labels. Enum values are the dropdown. The error string is the help text, and it is read exactly once, by a machine, with no ability to ask a follow-up question.
From the design review, on why naming is the whole documentation budget
The failure that follows is not the loud one. An invalid query is cheap: it fails, and the caller retries. The expensive failure is valid and wrong — a query that answers a narrower question than the one that was asked, with no signal that it did, and no reason to retry. That is the answer that ends up in somebody's investment memo.
Measured against our own data
Eight ways this product would answer wrongly
The review tested its argument against the corpora that actually ship, by executing them. These are defects in DwellDelta, found by DwellDelta's own review, listed here rather than fixed quietly and mentioned never.
- New Zealand prices are denominated AUDAll eight NZ subjects. An agent totalling an ANZ portfolio produces one confident number wrong by the exchange rate, and nothing in the data contradicts it.Measured
- Two state vocabularies that share one valueThe corpus says
present,provisional,absent; the contract sayspresent,missing,suppressedand three more. A caller asking formissinggets zero rows and reports “no coverage” where there is coverage.Measured - Metric names that cannot be expressed as contract identifiersUnderscore-bearing names fail the contract's own identifier pattern, so the larger corpus cannot be addressed at all.Measured
valuemeans four different thingsDollars, dollars per week, a count and a percentage share one field. A filter for “at most 900” matches a $900 house and a $900-a-week rental together.Measured- Timestamps are UTC-only in an Australian productA legitimate local-time instant is ten hours from what the corpus stores, which silently moves a window boundary by a day.Measured
- Two number representations, neither labelledOne corpus ships decimal strings with a declared rounding method; the other ships floats. The same delta computed two ways gives two answers.Measured
- Both served measures are past their expiryWhich means the flagship corpus currently answers “stale” to everything — the correct answer, and the kind of correct answer this project exists to give.Measured
- The change field cannot be re-derived from the history beside it191 of 192 metric records carry a change figure matching none of the 1-, 6-, 12- or 24-month changes computable from the history shipped with them.Measured
The last one is the one that matters. A change monitor whose change field cannot be reproduced from its own history has given away the only thing it sells, and the defect is one an implementer walks into rather than one an agent trips over. It has to be derived, renamed with its basis, or not served at all — and that is not settled.
Design position
Four rules, if it is ever built
These are the conclusions the review reached. They describe how such an interface would have to behave, not how anything behaves today.
- Repairable in one hopA refusal names the field, a stable reason, and the legal values inline. “Invalid request” costs a retry loop and teaches nothing.
- Never narrower than it looksIf any part of a request could not be evaluated, the whole answer is refused with the part named — rather than a partial result that reads complete.
- Counts, not silenceRows withheld for licence or coverage reasons are counted in the reply. “Three matched, seven withheld” must be distinguishable from “three matched”.
- The vocabulary is served, not documentedA closed list a caller can read beats prose in a file a caller never opens.
One boundary that is not a pricing question
Provenance describes data; it never returns it
The review holds one line firmly, and it is a design constraint rather than a commercial preference: anything describing sources, licences, coverage and limitations stays free and unmetered, and never returns an observation value. The moment a provenance response carries values, it is a bulk extraction channel and any meter behind it is decorative.
A related licence fact, which is the one commercial statement on this site that can be made safely: a NonCommercial source can never enter a paid tier, and moving it to a free tier is not a remedy. NonCommercial attaches to the purpose of the use, not to the price charged for it. That is a compliance boundary, and it does not move because a business model would prefer it to.
Known limits
What this page is not
- Not a specification. Nothing here is callable, and no format is published.
- Not a roadmap. No item above is planned, in progress, scheduled or dated, and the project's roadmap records none of it as planned work.
- Not a statement of who this product is for. That an agent-facing interface should be the primary surface is a view recorded in one review; it is not a decision anything in this project has ratified.
- Not a pricing page. Metering needs a counter, and no counter exists — a service that cannot count cannot charge by volume, whatever anyone intends.
The eight defects above were found by executing the product's own modules, not by reading its documentation — including the documentation that was itself wrong.