Citiwise Plot API
The Plot API from Citiwise — 1 operation(s) for plot.
The Plot API from Citiwise — 1 operation(s) for plot.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/citiwise-in:citiwise-in-plot-api"
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.
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: Citiwise Plot API
version: '1.40'
description: Citiwise tells what UDCPR 2020 allows on a plot in Maharashtra wherever the regulations apply, which is outside Greater Mumbai and the other areas regulation 1.1(i) leaves out. It gives the FSI and built-up area, the margin on every side, the height, the building that fits, parking and approvals, each with its UDCPR clause. No sign-in is needed. Every feasibility answer includes a plain-language summary and links to the report and its PDF to hand to the user. A field the call does not read is listed in the answer under ignored, not refused. This is a feasibility assessment only; the planning authority decides.
contact:
email: hello@citiwise.in
url: https://citiwise.in/connect
termsOfService: https://citiwise.in/terms
servers:
- url: https://citiwise.in
tags:
- name: Plot
paths:
/api/plot:
post:
operationId: drawPlot
summary: 'A plot from its measurements: sides with angles or diagonals, in metres or feet'
description: 'Use this when a plot''s shape is given as measurements rather than as one area: side lengths with the angles at the corners, or with diagonals, or both, as on a hand-drawn sketch, a measurement sheet, a survey or a photo of any of them; or the corners themselves.'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
sides:
type: array
items:
type: object
properties:
length:
type:
- number
- string
- 'null'
minimum: 0
maximum: 100000.0
description: 'length of the side as written: a number in the unit given, or text such as 40''6" or 12.20 m; null for a side not measured, where angles or diagonals fix it'
beyond:
type: string
enum:
- road
- plot
- open
- nallah
- river
- rail
- shared
description: what lies beyond the side; plot for a neighbour; shared for the common wall of a semi-detached house or row houses (Table 6-D note 4, Sr. 6)
width:
type:
- number
- string
minimum: 0
maximum: 100000.0
description: 'for a road: its width, in the unit given or as text such as 30'' or 9 m'
name:
type: string
description: label, e.g. east
maxItems: 64
description: every side in order round the plot, either direction; at least one is a road
unit:
type: string
enum:
- m
- ft
description: unit of every bare number among the lengths and road widths; default m
angles:
type: array
items:
type:
- number
- string
- 'null'
minimum: 0
maximum: 360
maxItems: 64
description: interior angle in degrees at each corner; corner i is where side i begins; null where not measured
diagonals:
type: array
maxItems: 256
items:
type: object
properties:
from:
type: integer
minimum: 1
maximum: 64
to:
type: integer
minimum: 1
maximum: 64
length:
type:
- number
- string
minimum: 0
maximum: 100000.0
required:
- from
- to
- length
description: corner-to-corner distances; a plot of n sides needs n - 3, each running across the inside of the plot; lengths alone can fit more than one plot, and the answer then names the corner that needs its angle or one more diagonal
right_angles:
type: boolean
description: true when every corner of a four-sided plot is square
polygon:
type: array
items:
type: array
items:
type: number
minimum: -100000.0
maximum: 100000.0
maxItems: 2
maxItems: 64
description: the corners [x, y] instead of lengths and angles, one per side
stated_area:
type:
- number
- string
minimum: 0
maximum: 100000000.0
description: 'the area on the 7/12, property card or measurement sheet, to check against, as written: 5 guntha, 0.12.50 H.R., 5400 sq ft'
area_unit:
type: string
enum:
- m2
- sqft
- guntha
- acre
- hectare
- hr
description: unit of stated_area when it is a bare number; default m2 (sq ft with unit ft); hr is hectare-are as on a 7/12
town:
type: string
description: 'with use: also run the feasibility'
use:
type: string
enum:
- flats
- mix
- bung
- row
- shop
- office
- it
- hotel
- fuel
- school
- college
- hospital
- public
- assembly
- mangal
- parking
- warehouse
- factory
description: 'the use of the building: flats for flats; mix for flats with shops below; bung for a bungalow; row for row houses; shop for shops; office for offices; it for an IT building; hotel for a hotel; fuel for a fuel station; school for a school; college for a college; hospital for a hospital; public for a public building; assembly for a cinema, hall or mall; mangal for a mangal karyalaya; parking for a parking building; warehouse for a warehouse; factory for a factory'
zone:
type: string
enum:
- nc
- c
description: 'with town and use: nc non-congested, c congested (gaothan)'
required:
- sides
responses:
'200':
description: The plot, its checks and links.
content:
application/json:
schema:
type: object
properties:
ignored:
type: array
items:
type: string
description: the fields of the request this call did not read, in the order given; present only when there are any
ignored_note:
type: string
description: the same in a sentence, with the API's name for a field the site calls otherwise (luz is land_use)
additionalProperties: true
'422':
description: The measurements do not fix or do not agree; the message says which.
tags:
- Plot