Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/casaintelligence-com-au:casaintelligence-com-au-casa-daily-feasibility-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Casa Intelligence Engine Casa Daily Feasibility API
description: Proprietary data ingestion, analysis, and prediction engine for Queensland property development intelligence.
version: 2.0.0
tags:
- name: casa-daily-feasibility
paths:
/api/v1/cd-feasibility/compose:
post:
tags:
- casa-daily-feasibility
summary: Compose Feasibility
operationId: compose_feasibility_api_v1_cd_feasibility_compose_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/FeasibilityComposeRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/FeasibilityComposeResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
/api/v1/cd-feasibility/compose-pdf:
post:
tags:
- casa-daily-feasibility
summary: Compose Feasibility Pdf
description: 'Compile the assembled feasibility into a Typst PDF and return bytes.
Uses the bespoke ``casa_daily_v2_feasibility.typ`` template — built
for this exact payload shape with embedded site-analysis SVG, AICR
breakdown, comparable approvals table, predicted-conditions table,
financial variables snapshot, and the Casa Planner upsell section.
Fetches the cached site-analysis SVG for the property (if available)
and writes it as ``site_analysis.svg`` in the render dir so the
template''s ``image()`` call resolves it.
Auto-generates AI narrative sections (executive_summary,
site_assessment, infrastructure_charges_commentary,
comparable_approvals_commentary, casa_planner_pathway,
financial_outlook) via Sonnet so each PDF reads in real planner
voice with the data woven into the prose, rather than as a sparse
fact-table.'
operationId: compose_feasibility_pdf_api_v1_cd_feasibility_compose_pdf_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/FeasibilityPDFRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
/api/v1/cd-feasibility/map-bundle/{property_id}:
get:
tags:
- casa-daily-feasibility
summary: Get Map Bundle
description: 'Spatial bundle for the Casa Daily listing-page interactive map.
Returns the parcel boundary, nearby DAs (within 2km), overlay flags
as polygons (when geometry available), and comparable sales pins —
all as GeoJSON the front-end MapLibre layer can render directly.
Each helper runs in its own session so a sparse-data query failure
doesn''t poison the others (same isolation pattern as /compose).'
operationId: get_map_bundle_api_v1_cd_feasibility_map_bundle__property_id__get
security:
- APIKeyHeader: []
parameters:
- name: property_id
in: path
required: true
schema:
type: string
title: Property Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/MapBundleResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/cd-feasibility/parcel-only/{property_id}:
get:
tags:
- casa-daily-feasibility
summary: Get Parcel Only
description: 'Fast parcel + centroid lookup with empty DA/sales/overlay sets.
Use this when the full /map-bundle endpoint is too slow (cold pool,
GIST contention). The user gets a real map with the parcel outline
+ property centre, just no nearby pins. The front-end shows a "DA
history loading…" hint that resolves once /map-bundle eventually
succeeds (or stays empty if it doesn''t).'
operationId: get_parcel_only_api_v1_cd_feasibility_parcel_only__property_id__get
security:
- APIKeyHeader: []
parameters:
- name: property_id
in: path
required: true
schema:
type: string
title: Property Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/MapBundleResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/cd-feasibility/map-bounds:
get:
tags:
- casa-daily-feasibility
summary: Get Map Bounds
description: 'Return all DAs + comparable sales whose centroids fall inside the
bounding box [w, s, e, n]. Used by the listing-page map for
viewport-driven pin loading — the user pans / zooms and we refetch
the visible slice (same pattern as the Town Planner workspace map).
Bounds are degrees (WGS84). Limits are conservative defaults that
keep the response under ~200KB; the endpoint sets `truncated_das` /
`truncated_sales` flags so the client can warn the user when they''ve
zoomed out past the available depth.'
operationId: get_map_bounds_api_v1_cd_feasibility_map_bounds_get
security:
- APIKeyHeader: []
parameters:
- name: s
in: query
required: true
schema:
type: number
title: S
- name: w
in: query
required: true
schema:
type: number
title: W
- name: n
in: query
required: true
schema:
type: number
title: N
- name: e
in: query
required: true
schema:
type: number
title: E
- name: da_limit
in: query
required: false
schema:
type: integer
default: 800
title: Da Limit
- name: sales_limit
in: query
required: false
schema:
type: integer
default: 400
title: Sales Limit
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/MapBoundsResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/cd-feasibility/overlay-query:
get:
tags:
- casa-daily-feasibility
summary: Overlay Query
description: 'Reverse-lookup what zone + overlays apply at the given point.
Strategy: find the ci_properties row whose cadastral boundary
contains the click point; surface its zone_code + overlays as the
answer. If no parcel covers the point (out of cadastral coverage),
return null property and empty overlays so the front-end can show
"out of indexed coverage".'
operationId: overlay_query_api_v1_cd_feasibility_overlay_query_get
security:
- APIKeyHeader: []
parameters:
- name: lat
in: query
required: true
schema:
type: number
title: Lat
- name: lng
in: query
required: true
schema:
type: number
title: Lng
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/OverlayQueryResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/cd-feasibility/artefact-pdf:
post:
tags:
- casa-daily-feasibility
summary: Compose Artefact Pdf
description: 'Compile a Casa Planner artefact into a Typst PDF.
Casa Daily generates the artefact CONTENT via Sonnet (in
`generate_artefact_action`) and persists section data to
`cd_project_artefacts.content`. When the user clicks Export PDF
or asks Casa AI to compile the artefact, Casa Daily POSTs that
content here for Typst rendering.'
operationId: compose_artefact_pdf_api_v1_cd_feasibility_artefact_pdf_post
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ArtefactPDFRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- APIKeyHeader: []
components:
schemas:
MapBoundsResponse:
properties:
bounds:
additionalProperties:
type: number
type: object
title: Bounds
nearby_das:
additionalProperties: true
type: object
title: Nearby Das
comparable_sales:
additionalProperties: true
type: object
title: Comparable Sales
truncated_das:
type: boolean
title: Truncated Das
truncated_sales:
type: boolean
title: Truncated Sales
degraded:
type: boolean
title: Degraded
default: false
warnings:
items:
type: string
type: array
title: Warnings
default: []
type: object
required:
- bounds
- nearby_das
- comparable_sales
- truncated_das
- truncated_sales
title: MapBoundsResponse
FeasibilityComposeResponse:
properties:
payload:
$ref: '#/components/schemas/FeasibilityComposePayload'
type: object
required:
- payload
title: FeasibilityComposeResponse
MapBundleResponse:
properties:
property:
additionalProperties: true
type: object
title: Property
parcel:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Parcel
nearby_das:
additionalProperties: true
type: object
title: Nearby Das
overlays:
items:
additionalProperties: true
type: object
type: array
title: Overlays
comparable_sales:
additionalProperties: true
type: object
title: Comparable Sales
informational_only:
type: boolean
title: Informational Only
default: true
type: object
required:
- property
- nearby_das
- overlays
- comparable_sales
title: MapBundleResponse
description: Single payload powering the listing-page interactive map.
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
type: object
required:
- loc
- msg
- type
title: ValidationError
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
ArtefactPDFRequest:
properties:
artefact_type:
type: string
title: Artefact Type
description: 'One of: pre_da_letter | planning_report | rfi_response'
title:
type: string
maxLength: 300
title: Title
summary:
anyOf:
- type: string
- type: 'null'
title: Summary
sections:
items:
additionalProperties: true
type: object
type: array
title: Sections
project_name:
type: string
maxLength: 200
title: Project Name
user_full_name:
anyOf:
- type: string
- type: 'null'
title: User Full Name
user_email:
anyOf:
- type: string
- type: 'null'
title: User Email
property:
additionalProperties: true
type: object
title: Property
da_number:
anyOf:
- type: string
- type: 'null'
title: Da Number
council_officer_name:
anyOf:
- type: string
- type: 'null'
title: Council Officer Name
version:
type: integer
title: Version
default: 1
disclaimer:
anyOf:
- type: string
- type: 'null'
title: Disclaimer
type: object
required:
- artefact_type
- title
- project_name
title: ArtefactPDFRequest
description: 'Compile a Casa Planner artefact (pre-DA letter, planning report,
RFI response) into a Typst PDF using the matching v2 template.'
FeasibilityPDFRequest:
properties:
payload:
$ref: '#/components/schemas/FeasibilityComposePayload'
project_name:
type: string
maxLength: 200
title: Project Name
user_full_name:
anyOf:
- type: string
- type: 'null'
title: User Full Name
user_email:
anyOf:
- type: string
- type: 'null'
title: User Email
ai_narrative:
additionalProperties: true
type: object
title: Ai Narrative
description: 'AI-generated narrative sections keyed by name: executive_summary, site_assessment, casa_planner_pathway, etc.'
casa_planner_section:
additionalProperties: true
type: object
title: Casa Planner Section
description: The Casa Planner upsell block — likelihood, required docs, consultant pack, cost-to-DA, marketing CTA. Optional but expected for the launch pitch.
variables_snapshot:
additionalProperties: true
type: object
title: Variables Snapshot
description: User-edited financial variables sheet at PDF compile time (purchase_price, unit_count, build_cost_per_unit, etc.)
variables_outputs:
additionalProperties: true
type: object
title: Variables Outputs
description: Computed financial outputs from the variables sheet (profit, margin_pct, total_project_cost, breakeven_sale_price_per_unit, etc.)
dev_type:
anyOf:
- type: string
- type: 'null'
title: Dev Type
unit_count:
anyOf:
- type: integer
- type: 'null'
title: Unit Count
type: object
required:
- payload
- project_name
title: FeasibilityPDFRequest
description: 'Casa Daily sends the full assembled payload it intends to print.
The user may have edited inputs in the variables-sheet card before
clicking ''Generate feasibility report'', so the source of truth for
the PDF is the post-edit payload, not the original /compose response.
The AI narrative comes from Casa Daily''s curated chat synthesis —
it''s NOT regenerated server-side here so the PDF matches what the
user saw on screen.'
OverlayQueryResponse:
properties:
lat:
type: number
title: Lat
lng:
type: number
title: Lng
property:
anyOf:
- additionalProperties: true
type: object
- type: 'null'
title: Property
zone_code:
anyOf:
- type: string
- type: 'null'
title: Zone Code
zone_name:
anyOf:
- type: string
- type: 'null'
title: Zone Name
overlays:
items:
additionalProperties: true
type: object
type: array
title: Overlays
planning_scheme:
anyOf:
- type: string
- type: 'null'
title: Planning Scheme
informational_only:
type: boolean
title: Informational Only
default: true
disclaimer:
type: string
title: Disclaimer
default: Informational only — overlay flags drawn from Casa Intelligence's indexed cadastral data. Council mapping is the source of truth; verify before relying on for any commercial or regulatory decision.
type: object
required:
- lat
- lng
- property
- zone_code
- zone_name
- overlays
- planning_scheme
title: OverlayQueryResponse
FeasibilityComposeRequest:
properties:
property_id:
type: string
title: Property Id
description: ci_properties.id (UUID)
dev_type:
type: string
title: Dev Type
description: 'Development outcome — one of: subdivision, townhouse, duplex, mcu, kdr_single. Drives proposed_lots/dwellings defaults and the application_type categorisation.'
unit_count:
type: integer
maximum: 50.0
minimum: 1.0
title: Unit Count
description: Number of lots / dwellings proposed.
default: 1
proposed_gfa_m2:
anyOf:
- type: integer
- type: 'null'
title: Proposed Gfa M2
description: Optional GFA. Casa Daily can let the user override.
proposed_height_m:
anyOf:
- type: number
- type: 'null'
title: Proposed Height M
user_id:
anyOf:
- type: string
- type: 'null'
title: User Id
description: Casa Daily user UUID for attribution / cost tracking.
type: object
required:
- property_id
- dev_type
title: FeasibilityComposeRequest
FeasibilityComposePayload:
properties:
property:
additionalProperties: true
type: object
title: Property
feasibility:
additionalProperties: true
type: object
title: Feasibility
infrastructure_charges:
additionalProperties: true
type: object
title: Infrastructure Charges
predicted_conditions:
items:
additionalProperties: true
type: object
type: array
title: Predicted Conditions
assessment_levels:
items:
additionalProperties: true
type: object
type: array
title: Assessment Levels
timeline:
additionalProperties: true
type: object
title: Timeline
nearby_das:
items:
additionalProperties: true
type: object
type: array
title: Nearby Das
da_pathway:
additionalProperties: true
type: object
title: Da Pathway
required_documents:
items:
additionalProperties: true
type: object
type: array
title: Required Documents
consultant_package:
additionalProperties: true
type: object
title: Consultant Package
informational_only:
type: boolean
title: Informational Only
default: true
disclaimer:
type: string
title: Disclaimer
default: Informational only — not financial, taxation, or planning advice. Verify all numbers with your accountant, lender, surveyor, and council assessment officer before relying on them for any commercial decision.
type: object
required:
- property
- feasibility
- infrastructure_charges
- predicted_conditions
- assessment_levels
- timeline
- nearby_das
- da_pathway
- required_documents
- consultant_package
title: FeasibilityComposePayload
description: The full deterministic payload Casa Daily renders as inline cards.
securitySchemes:
HTTPBearer:
type: http
scheme: bearer
APIKeyHeader:
type: apiKey
in: header
name: X-API-Key