> For the complete documentation index, see [llms.txt](https://docs.digit.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.digit.org/local-governance/access/local-governance-stack/property-tax/property-tax-architecture/property-tax-apis.md).

# Property Tax APIs

## Create New Property

## Creates new property.

> Creates new property with basic information related to land and owner information. Can be integrated with other modules like Water and Sewerage or Trade License to act as base entity against which water connection or trade license can be issued

```json
{"openapi":"3.0.0","info":{"title":"eGov Property Registry System.","version":"1.0.0"},"tags":[{"name":"Property","description":""}],"servers":[{"url":"https://virtserver.swaggerhub.com/egovernmets-faundation/PT-2.0/1.0.0","description":"SwaggerHub API Auto Mocking","variables":{}},{"url":"https://egov-micro-dev.egovernments.org","variables":{}}],"paths":{"/property/_create":{"post":{"tags":["Property"],"summary":"Creates new property.","description":"Creates new property with basic information related to land and owner information. Can be integrated with other modules like Water and Sewerage or Trade License to act as base entity against which water connection or trade license can be issued","operationId":"Createsnewproperty.","parameters":[],"requestBody":{"description":"Details for the new property + RequestHeader meta data.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PropertyRequest"}}},"required":true},"responses":{"201":{"description":"Property created sucessfully","headers":{},"content":{"text/plain":{"schema":{"type":"object","description":"Property created sucessfully"}}}},"400":{"description":"Property(s) creation failed"}},"deprecated":false}}},"components":{"schemas":{"PropertyRequest":{"title":"PropertyRequest","type":"object","properties":{"RequestHeader":{"$ref":"#/components/schemas/RequestHeader"},"Property":{"$ref":"#/components/schemas/Property"}},"description":"Contract class to receive request. Array of Property items  are used in case of create . Where as single Property item is used for update"},"RequestHeader":{"title":"RequestHeader","required":["ts","action","msgId"],"type":"object","properties":{"apiInfo":{"$ref":"#/components/schemas/ApiInfo"},"deviceDetail":{"$ref":"#/components/schemas/DeviceDetail"},"ts":{"type":"integer","description":"time in epoch","format":"int64"},"action":{"maxLength":32,"type":"string","description":"API action to be performed like _create, _update, _search (denoting POST, PUT, GET) or _oauth etc"},"key":{"maxLength":256,"type":"string","description":"API key (API key provided to the caller in case of server to server communication)"},"msgId":{"maxLength":256,"type":"string","description":"Unique request message id from the caller"},"requesterId":{"maxLength":256,"type":"string","description":"UserId of the user calling"},"authToken":{"type":"string","description":"//session/jwt/saml token/oauth token - the usual value that would go into HTTP bearer token"},"userInfo":{"$ref":"#/components/schemas/UserInfo"},"correlationId":{"type":"string"},"signature":{"type":"string","description":"Hash describing the current RequestHeader"}},"description":"RequestHeader should be used to carry meta information about the requests to the server as described in the fields below. All eGov APIs will use requestHeader as a part of the request body to carry this meta information. Some of this information will be returned back from the server as part of the ResponseHeader in the response body to ensure correlation."},"ApiInfo":{"title":"ApiInfo","type":"object","properties":{"id":{"maxLength":64,"minLength":2,"type":"string","description":"The id of the API being called"},"version":{"maxLength":64,"minLength":2,"type":"string","description":"The version of the API"},"path":{"type":"string","description":"The URI of the API"}},"description":"Info of the API being called"},"DeviceDetail":{"title":"DeviceDetail","type":"object","properties":{"id":{"type":"string","description":"The id of the device which is trying to accessed"},"signature":{"type":"string","description":"The electronic signature of the device"}},"description":"Contains information about the device used to access the api"},"UserInfo":{"title":"UserInfo","required":["tenantId","userName","primaryrole"],"type":"object","properties":{"tenantId":{"type":"string","description":"Unique Identifier of the tenant to which user primarily belongs"},"uuid":{"type":"string","description":"System Generated User id of the authenticated user."},"userName":{"type":"string","description":"Unique user name of the authenticated user"},"password":{"type":"string","description":"password of the user."},"idToken":{"type":"string","description":"This will be the OTP."},"mobile":{"type":"string","description":"mobile number of the autheticated user"},"email":{"type":"string","description":"email address of the authenticated user"},"primaryrole":{"type":"array","items":{"$ref":"#/components/schemas/Primaryrole"},"description":"List of all the roles for the primary tenant"},"additionalroles":{"type":"array","items":{"$ref":"#/components/schemas/Additionalrole"},"description":"array of additional tenantids authorized for the authenticated user"}},"description":"This is acting ID token of the authenticated user on the server. Any value provided by the clients will be ignored and actual user based on authtoken will be used on the server."},"Primaryrole":{"title":"Primaryrole","required":["code","tenantId"],"type":"object","properties":{"name":{"maxLength":64,"type":"string","description":"Unique name of the role"},"code":{"maxLength":64,"type":"string","description":"Unique code of the role"},"tenantId":{"maxLength":64,"type":"string","description":"The tenantId for which the role is available"},"description":{"type":"string","description":"brief description of the role"}},"description":"minimal representation of the Roles in the system to be carried along in UserInfo with RequestHeader meta data. Actual authorization service to extend this to have more role related attributes"},"Additionalrole":{"title":"Additionalrole","required":["tenantId","roles"],"type":"object","properties":{"tenantId":{"type":"string","description":"tenantid for the tenant"},"roles":{"type":"array","items":{"$ref":"#/components/schemas/Primaryrole"},"description":"Roles assigned for a particular tenant - array of role codes/names"}},"description":"User role carries the tenant related role information for the user. A user can have multiple roles per tenant based on the need of the tenant. A user may also have multiple roles for multiple tenants."},"Property":{"title":"Property","required":["tenantId","address","propertyType","owners","source"],"type":"object","properties":{"id":{"maxLength":64,"minLength":1,"type":"string","description":"Unique Identifier of the Property for internal reference."},"propertyId":{"maxLength":64,"minLength":1,"type":"string","description":"Unique Identifier of the Property."},"tenantId":{"maxLength":256,"minLength":2,"type":"string","description":"tenant id of the Property"},"surveyId":{"maxLength":256,"minLength":2,"type":"string","description":"survey id of the Property"},"accountId":{"maxLength":64,"minLength":1,"type":"string","description":"UUID of the user to which the property will be associated"},"oldPropertyId":{"maxLength":256,"minLength":1,"type":"string","description":"Old upic no of the Property. ULBs have the existing property in their system/manual records with their identification number, they want to continue the old reference number in this case the same identification number will be captured here."},"status":{"$ref":"#/components/schemas/Status"},"address":{"$ref":"#/components/schemas/Address"},"acknowldgementIds":{"maxLength":64,"minLength":1,"type":"string","description":"Acknowldgement number given to citizen on submitting the application for creation or modification of the property."},"propertyType":{"maxLength":64,"type":"string","description":"Type of a property like Private, Vacant Land, State Government, Central Government etc."},"ownershipCategory":{"maxLength":64,"type":"string","description":"The type of ownership of the property."},"owners":{"type":"array","items":{"$ref":"#/components/schemas/OwnerInfo"},"description":"Property owners, these will be citizen users in system."},"institution":{"$ref":"#/components/schemas/Institution"},"creationReason":{"$ref":"#/components/schemas/CreationReason"},"noOfFloors":{"type":"integer","description":"no of floors in the property","format":"int64"},"landArea":{"type":"number","description":"Land area of the property in sq ft"},"superBuiltUpArea":{"type":"number","description":"super builtup area of the complete property"},"source":{"$ref":"#/components/schemas/Source"},"channel":{"$ref":"#/components/schemas/Channel"},"documents":{"type":"array","items":{"$ref":"#/components/schemas/Document"},"description":"The documents attached by owner for exemption."},"unit":{"$ref":"#/components/schemas/Unit"},"additionalDetails":{"type":"object","description":"The json (array of '#/definitions/Factor')"}}},"Status":{"title":"Status","enum":["ACTIVE","INACTIVE"],"type":"string","description":"status of the Property"},"Address":{"title":"Address","required":["tenantId","locality"],"type":"object","properties":{"tenantId":{"type":"string","description":"Unique Identifier of the tenant to which user primarily belongs"},"doorNo":{"type":"string","description":"House number or door number."},"plotNo":{"type":"string","description":"Plot number of the house."},"id":{"type":"string","description":"System generated id for the address"},"landmark":{"type":"string","description":"additional landmark to help locate the address"},"city":{"type":"string","description":"City of the address. Can be represented by the tenantid itself"},"district":{"type":"string","description":"The district in which the property is located"},"region":{"type":"string","description":"The Region in which the property is located"},"state":{"type":"string","description":"The State in which the property is located"},"country":{"type":"string","description":"The country in which the property is located"},"pincode":{"type":"string","description":"PIN code of the address. Indian pincodes will usually be all numbers."},"additionDetails":{"type":"string","description":"more address detail as may be needed"},"buildingName":{"maxLength":64,"minLength":2,"type":"string","description":"Name of the building"},"street":{"maxLength":64,"minLength":2,"type":"string","description":"Street Name"},"locality":{"$ref":"#/components/schemas/Locality"},"geoLocation":{"$ref":"#/components/schemas/GeoLocation"}},"description":"Representation of a address. Indiavidual APIs may choose to extend from this using allOf if more details needed to be added in their case."},"Locality":{"title":"Locality","required":["code","name"],"type":"object","properties":{"code":{"type":"string","description":"code of the boundary."},"name":{"type":"string","description":"name of the boundary."},"label":{"type":"string","description":"localized label for the boundry."},"latitude":{"type":"string","description":"latitude of the boundary."},"longitude":{"type":"string","description":"longitude of the boundary."},"children":{"type":"array","items":{"$ref":"#/components/schemas/Locality"},"description":""},"materializedPath":{"type":"string","description":"materialized path of the boundary - this would be of the format tenantid.[code] from parentt till teh current boundary"}}},"GeoLocation":{"title":"GeoLocation","type":"object","properties":{"latitude":{"type":"number","description":"latitude of the address"},"longitude":{"type":"number","description":"longitude of the address"},"additionalDetails":{"type":"object","description":"Json object to capture any extra information which is not accommodated by model"}}},"OwnerInfo":{"title":"OwnerInfo","required":["name","mobileNumber","gender","fatherOrHusbandName","relationship"],"type":"object","properties":{"name":{"maxLength":256,"type":"string","description":"The name of the owner."},"mobileNumber":{"maxLength":256,"type":"string","description":"MobileNumber of the owner."},"gender":{"maxLength":256,"type":"string","description":"Gender of the owner."},"fatherOrHusbandName":{"maxLength":256,"type":"string","description":"Father or Husband name of the owner."},"correspondenceAddress":{"maxLength":1024,"type":"string","description":"The current address of the owner for correspondence."},"isPrimaryOwner":{"type":"boolean","description":"The owner is primary or not"},"ownerShipPercentage":{"type":"number","description":"Ownership percentage."},"ownerType":{"maxLength":256,"type":"string","description":"Type of owner, based on this option Exemptions will be applied. This is master data defined in mdms."},"institutionId":{"maxLength":64,"type":"string","description":"The id of the institution if the owner is the authorized person for one"},"documents":{"type":"array","items":{"$ref":"#/components/schemas/Document"},"description":"The documents attached by owner for exemption."},"relationship":{"$ref":"#/components/schemas/Relationship"},"additionalDetails":{"type":"object","description":"Json object to capture any extra information which is not accommodated of model"}}},"Document":{"title":"Document","type":"object","properties":{"id":{"maxLength":64,"type":"string","description":"system id of the Document."},"documentType":{"type":"string","description":"unique document type code, should be validated with document type master"},"fileStore":{"type":"string","description":"File store reference key."},"documentUid":{"maxLength":64,"type":"string","description":"The unique id(Pancard Number,Adhar etc.) of the given Document."},"additionalDetails":{"type":"object","description":"Json object to capture any extra information which is not accommodated by model"}},"description":"This object holds list of documents attached during the transaciton for a property"},"Relationship":{"title":"Relationship","enum":["FATHER","HUSBAND"],"type":"string","description":"The relationship of gaurdian."},"Institution":{"title":"Institution","type":"object","properties":{"id":{"maxLength":64,"type":"string","description":"Unique Identifier of the Institution(UUID)."},"tenantId":{"maxLength":256,"type":"string","description":"tenant id of the Property"},"type":{"maxLength":64,"type":"string","description":"Institution type."},"designation":{"maxLength":64,"type":"string","description":"Designation of the person creating/updatingentity on behalf of the institution"},"nameOfAuthorizedPerson":{"maxLength":256,"type":"string","description":"Name of the person who is taking action on behalf of institution"},"additionalDetails":{"type":"object","description":"Json object to capture any extra information which is not accommodated by model"}}},"CreationReason":{"title":"CreationReason","enum":["NEWPROPERTY","SUBDIVISION"],"type":"string","description":"New property comes into system either property is newly constructed or existing property got sub divided. Here the reason for creation will be captured."},"Source":{"title":"Source","enum":["MUNICIPAL_RECORDS","FIELD_SURVEY"],"type":"string","description":"Source of a constructionDetail data. The constructionDetail will be created in a system based on the data avaialble in their manual records or during field survey. There can be more from client to client."},"Channel":{"title":"Channel","enum":["SYSTEM","CFC_COUNTER","CITIZEN","DATA_ENTRY","MIGRATION"],"type":"string","description":"constructionDetail details can be created from different channels Eg. System (properties created by ULB officials), CFC Counter (From citizen faciliation counters) etc. Here we are defining some known channels, there can be more client to client."},"Unit":{"title":"Unit","type":"object","properties":{"id":{"type":"string","description":"Unique Identifier of the Unit(UUID)."},"tenantId":{"maxLength":256,"minLength":2,"type":"string","description":"tenant id of the Property"},"floorNo":{"maxLength":64,"minLength":1,"type":"string","description":"floor number of the Unit"},"unitType":{"type":"string","description":"Unit type is master data."},"usageCategory":{"maxLength":64,"minLength":1,"type":"string","description":"This is about the usage of the property like Residential, Non-residential, Mixed(Property witch is gettiong used for Residential, Non-residential purpose)"},"occupancyType":{"$ref":"#/components/schemas/OccupancyType2"},"occupancyDate":{"type":"integer","description":"Date on which unit is occupied.","format":"int64"},"constructionDetail":{"$ref":"#/components/schemas/ConstructionDetail"},"additionalDetails":{"type":"object","description":"Json object to capture any extra information which is not accommodated by model"}}},"OccupancyType2":{"title":"OccupancyType2","enum":["OWNER","TENANT"],"type":"string","description":"Value denoting if the unit is rented or occupied by owner"},"ConstructionDetail":{"title":"ConstructionDetail","type":"object","properties":{"id":{"maxLength":64,"type":"string","description":"id of the property with which the constructionDetail is associated."},"carpetArea":{"type":"number","description":"Total built up area in sq ft(built-up area = carpet area + areas covered by walls)"},"builtUpArea":{"type":"number","description":"Total built up area in sq ft(built-up area = carpet area + areas covered by walls)"},"plinthArea":{"type":"number","description":"Area of the extension builtup of the Unit, Like balcony, sitouts."},"superBuiltUpArea":{"type":"number","description":"Total built up area in sq ft(built-up area + Common area = Super built-up area)"},"constructionType":{"maxLength":64,"minLength":1,"type":"string","description":"Construction type is defined in MDMS ConstructionTypeMaster."},"constructionDate":{"type":"integer","description":"The date when the property was constructed","format":"int64"},"dimensions":{"type":"object","description":"The dimensions of the plot or building or any unit"},"auditDetails":{"$ref":"#/components/schemas/AuditDetails"},"additionalDetails":{"type":"object","description":"The json (array of '#/definitions/Factor')"}},"description":"Construction/constructionDetail details are captured here. Detail information of the constructionDetail including floor wise usage and area are saved as seperate units .For each financial year construction details may change. constructionDetail object is required for tax calculation"},"AuditDetails":{"title":"AuditDetails","type":"object","properties":{"createdBy":{"type":"string","description":"username (preferred) or userid of the user that created the object"},"lastModifiedBy":{"type":"string","description":"username (preferred) or userid of the user that last modified the object"},"createdTime":{"type":"integer","description":"epoch of the time object is created","format":"int64"},"lastModifiedTime":{"type":"integer","description":"epoch of the time object is last modified","format":"int64"}},"description":"Collection of audit related fields used by most models"}}}}
```

## Update Existing Property

## Update existing property.

> Updates a given \`Property\` with newer details.

```json
{"openapi":"3.0.0","info":{"title":"eGov Property Registry System.","version":"1.0.0"},"tags":[{"name":"Property","description":""}],"servers":[{"url":"https://virtserver.swaggerhub.com/egovernmets-faundation/PT-2.0/1.0.0","description":"SwaggerHub API Auto Mocking","variables":{}},{"url":"https://egov-micro-dev.egovernments.org","variables":{}}],"paths":{"/property/_update":{"post":{"tags":["Property"],"summary":"Update existing property.","description":"Updates a given `Property` with newer details.","operationId":"Updateexistingproperty.","parameters":[],"requestBody":{"description":"Request header for the property Request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PropertyRequest"}}},"required":true},"responses":{"200":{"description":"Update Property successful","headers":{},"content":{"text/plain":{"schema":{"type":"object","description":"Update Property successful"}}}},"400":{"description":"Update Property failed"}},"deprecated":false}}},"components":{"schemas":{"PropertyRequest":{"title":"PropertyRequest","type":"object","properties":{"RequestHeader":{"$ref":"#/components/schemas/RequestHeader"},"Property":{"$ref":"#/components/schemas/Property"}},"description":"Contract class to receive request. Array of Property items  are used in case of create . Where as single Property item is used for update"},"RequestHeader":{"title":"RequestHeader","required":["ts","action","msgId"],"type":"object","properties":{"apiInfo":{"$ref":"#/components/schemas/ApiInfo"},"deviceDetail":{"$ref":"#/components/schemas/DeviceDetail"},"ts":{"type":"integer","description":"time in epoch","format":"int64"},"action":{"maxLength":32,"type":"string","description":"API action to be performed like _create, _update, _search (denoting POST, PUT, GET) or _oauth etc"},"key":{"maxLength":256,"type":"string","description":"API key (API key provided to the caller in case of server to server communication)"},"msgId":{"maxLength":256,"type":"string","description":"Unique request message id from the caller"},"requesterId":{"maxLength":256,"type":"string","description":"UserId of the user calling"},"authToken":{"type":"string","description":"//session/jwt/saml token/oauth token - the usual value that would go into HTTP bearer token"},"userInfo":{"$ref":"#/components/schemas/UserInfo"},"correlationId":{"type":"string"},"signature":{"type":"string","description":"Hash describing the current RequestHeader"}},"description":"RequestHeader should be used to carry meta information about the requests to the server as described in the fields below. All eGov APIs will use requestHeader as a part of the request body to carry this meta information. Some of this information will be returned back from the server as part of the ResponseHeader in the response body to ensure correlation."},"ApiInfo":{"title":"ApiInfo","type":"object","properties":{"id":{"maxLength":64,"minLength":2,"type":"string","description":"The id of the API being called"},"version":{"maxLength":64,"minLength":2,"type":"string","description":"The version of the API"},"path":{"type":"string","description":"The URI of the API"}},"description":"Info of the API being called"},"DeviceDetail":{"title":"DeviceDetail","type":"object","properties":{"id":{"type":"string","description":"The id of the device which is trying to accessed"},"signature":{"type":"string","description":"The electronic signature of the device"}},"description":"Contains information about the device used to access the api"},"UserInfo":{"title":"UserInfo","required":["tenantId","userName","primaryrole"],"type":"object","properties":{"tenantId":{"type":"string","description":"Unique Identifier of the tenant to which user primarily belongs"},"uuid":{"type":"string","description":"System Generated User id of the authenticated user."},"userName":{"type":"string","description":"Unique user name of the authenticated user"},"password":{"type":"string","description":"password of the user."},"idToken":{"type":"string","description":"This will be the OTP."},"mobile":{"type":"string","description":"mobile number of the autheticated user"},"email":{"type":"string","description":"email address of the authenticated user"},"primaryrole":{"type":"array","items":{"$ref":"#/components/schemas/Primaryrole"},"description":"List of all the roles for the primary tenant"},"additionalroles":{"type":"array","items":{"$ref":"#/components/schemas/Additionalrole"},"description":"array of additional tenantids authorized for the authenticated user"}},"description":"This is acting ID token of the authenticated user on the server. Any value provided by the clients will be ignored and actual user based on authtoken will be used on the server."},"Primaryrole":{"title":"Primaryrole","required":["code","tenantId"],"type":"object","properties":{"name":{"maxLength":64,"type":"string","description":"Unique name of the role"},"code":{"maxLength":64,"type":"string","description":"Unique code of the role"},"tenantId":{"maxLength":64,"type":"string","description":"The tenantId for which the role is available"},"description":{"type":"string","description":"brief description of the role"}},"description":"minimal representation of the Roles in the system to be carried along in UserInfo with RequestHeader meta data. Actual authorization service to extend this to have more role related attributes"},"Additionalrole":{"title":"Additionalrole","required":["tenantId","roles"],"type":"object","properties":{"tenantId":{"type":"string","description":"tenantid for the tenant"},"roles":{"type":"array","items":{"$ref":"#/components/schemas/Primaryrole"},"description":"Roles assigned for a particular tenant - array of role codes/names"}},"description":"User role carries the tenant related role information for the user. A user can have multiple roles per tenant based on the need of the tenant. A user may also have multiple roles for multiple tenants."},"Property":{"title":"Property","required":["tenantId","address","propertyType","owners","source"],"type":"object","properties":{"id":{"maxLength":64,"minLength":1,"type":"string","description":"Unique Identifier of the Property for internal reference."},"propertyId":{"maxLength":64,"minLength":1,"type":"string","description":"Unique Identifier of the Property."},"tenantId":{"maxLength":256,"minLength":2,"type":"string","description":"tenant id of the Property"},"surveyId":{"maxLength":256,"minLength":2,"type":"string","description":"survey id of the Property"},"accountId":{"maxLength":64,"minLength":1,"type":"string","description":"UUID of the user to which the property will be associated"},"oldPropertyId":{"maxLength":256,"minLength":1,"type":"string","description":"Old upic no of the Property. ULBs have the existing property in their system/manual records with their identification number, they want to continue the old reference number in this case the same identification number will be captured here."},"status":{"$ref":"#/components/schemas/Status"},"address":{"$ref":"#/components/schemas/Address"},"acknowldgementIds":{"maxLength":64,"minLength":1,"type":"string","description":"Acknowldgement number given to citizen on submitting the application for creation or modification of the property."},"propertyType":{"maxLength":64,"type":"string","description":"Type of a property like Private, Vacant Land, State Government, Central Government etc."},"ownershipCategory":{"maxLength":64,"type":"string","description":"The type of ownership of the property."},"owners":{"type":"array","items":{"$ref":"#/components/schemas/OwnerInfo"},"description":"Property owners, these will be citizen users in system."},"institution":{"$ref":"#/components/schemas/Institution"},"creationReason":{"$ref":"#/components/schemas/CreationReason"},"noOfFloors":{"type":"integer","description":"no of floors in the property","format":"int64"},"landArea":{"type":"number","description":"Land area of the property in sq ft"},"superBuiltUpArea":{"type":"number","description":"super builtup area of the complete property"},"source":{"$ref":"#/components/schemas/Source"},"channel":{"$ref":"#/components/schemas/Channel"},"documents":{"type":"array","items":{"$ref":"#/components/schemas/Document"},"description":"The documents attached by owner for exemption."},"unit":{"$ref":"#/components/schemas/Unit"},"additionalDetails":{"type":"object","description":"The json (array of '#/definitions/Factor')"}}},"Status":{"title":"Status","enum":["ACTIVE","INACTIVE"],"type":"string","description":"status of the Property"},"Address":{"title":"Address","required":["tenantId","locality"],"type":"object","properties":{"tenantId":{"type":"string","description":"Unique Identifier of the tenant to which user primarily belongs"},"doorNo":{"type":"string","description":"House number or door number."},"plotNo":{"type":"string","description":"Plot number of the house."},"id":{"type":"string","description":"System generated id for the address"},"landmark":{"type":"string","description":"additional landmark to help locate the address"},"city":{"type":"string","description":"City of the address. Can be represented by the tenantid itself"},"district":{"type":"string","description":"The district in which the property is located"},"region":{"type":"string","description":"The Region in which the property is located"},"state":{"type":"string","description":"The State in which the property is located"},"country":{"type":"string","description":"The country in which the property is located"},"pincode":{"type":"string","description":"PIN code of the address. Indian pincodes will usually be all numbers."},"additionDetails":{"type":"string","description":"more address detail as may be needed"},"buildingName":{"maxLength":64,"minLength":2,"type":"string","description":"Name of the building"},"street":{"maxLength":64,"minLength":2,"type":"string","description":"Street Name"},"locality":{"$ref":"#/components/schemas/Locality"},"geoLocation":{"$ref":"#/components/schemas/GeoLocation"}},"description":"Representation of a address. Indiavidual APIs may choose to extend from this using allOf if more details needed to be added in their case."},"Locality":{"title":"Locality","required":["code","name"],"type":"object","properties":{"code":{"type":"string","description":"code of the boundary."},"name":{"type":"string","description":"name of the boundary."},"label":{"type":"string","description":"localized label for the boundry."},"latitude":{"type":"string","description":"latitude of the boundary."},"longitude":{"type":"string","description":"longitude of the boundary."},"children":{"type":"array","items":{"$ref":"#/components/schemas/Locality"},"description":""},"materializedPath":{"type":"string","description":"materialized path of the boundary - this would be of the format tenantid.[code] from parentt till teh current boundary"}}},"GeoLocation":{"title":"GeoLocation","type":"object","properties":{"latitude":{"type":"number","description":"latitude of the address"},"longitude":{"type":"number","description":"longitude of the address"},"additionalDetails":{"type":"object","description":"Json object to capture any extra information which is not accommodated by model"}}},"OwnerInfo":{"title":"OwnerInfo","required":["name","mobileNumber","gender","fatherOrHusbandName","relationship"],"type":"object","properties":{"name":{"maxLength":256,"type":"string","description":"The name of the owner."},"mobileNumber":{"maxLength":256,"type":"string","description":"MobileNumber of the owner."},"gender":{"maxLength":256,"type":"string","description":"Gender of the owner."},"fatherOrHusbandName":{"maxLength":256,"type":"string","description":"Father or Husband name of the owner."},"correspondenceAddress":{"maxLength":1024,"type":"string","description":"The current address of the owner for correspondence."},"isPrimaryOwner":{"type":"boolean","description":"The owner is primary or not"},"ownerShipPercentage":{"type":"number","description":"Ownership percentage."},"ownerType":{"maxLength":256,"type":"string","description":"Type of owner, based on this option Exemptions will be applied. This is master data defined in mdms."},"institutionId":{"maxLength":64,"type":"string","description":"The id of the institution if the owner is the authorized person for one"},"documents":{"type":"array","items":{"$ref":"#/components/schemas/Document"},"description":"The documents attached by owner for exemption."},"relationship":{"$ref":"#/components/schemas/Relationship"},"additionalDetails":{"type":"object","description":"Json object to capture any extra information which is not accommodated of model"}}},"Document":{"title":"Document","type":"object","properties":{"id":{"maxLength":64,"type":"string","description":"system id of the Document."},"documentType":{"type":"string","description":"unique document type code, should be validated with document type master"},"fileStore":{"type":"string","description":"File store reference key."},"documentUid":{"maxLength":64,"type":"string","description":"The unique id(Pancard Number,Adhar etc.) of the given Document."},"additionalDetails":{"type":"object","description":"Json object to capture any extra information which is not accommodated by model"}},"description":"This object holds list of documents attached during the transaciton for a property"},"Relationship":{"title":"Relationship","enum":["FATHER","HUSBAND"],"type":"string","description":"The relationship of gaurdian."},"Institution":{"title":"Institution","type":"object","properties":{"id":{"maxLength":64,"type":"string","description":"Unique Identifier of the Institution(UUID)."},"tenantId":{"maxLength":256,"type":"string","description":"tenant id of the Property"},"type":{"maxLength":64,"type":"string","description":"Institution type."},"designation":{"maxLength":64,"type":"string","description":"Designation of the person creating/updatingentity on behalf of the institution"},"nameOfAuthorizedPerson":{"maxLength":256,"type":"string","description":"Name of the person who is taking action on behalf of institution"},"additionalDetails":{"type":"object","description":"Json object to capture any extra information which is not accommodated by model"}}},"CreationReason":{"title":"CreationReason","enum":["NEWPROPERTY","SUBDIVISION"],"type":"string","description":"New property comes into system either property is newly constructed or existing property got sub divided. Here the reason for creation will be captured."},"Source":{"title":"Source","enum":["MUNICIPAL_RECORDS","FIELD_SURVEY"],"type":"string","description":"Source of a constructionDetail data. The constructionDetail will be created in a system based on the data avaialble in their manual records or during field survey. There can be more from client to client."},"Channel":{"title":"Channel","enum":["SYSTEM","CFC_COUNTER","CITIZEN","DATA_ENTRY","MIGRATION"],"type":"string","description":"constructionDetail details can be created from different channels Eg. System (properties created by ULB officials), CFC Counter (From citizen faciliation counters) etc. Here we are defining some known channels, there can be more client to client."},"Unit":{"title":"Unit","type":"object","properties":{"id":{"type":"string","description":"Unique Identifier of the Unit(UUID)."},"tenantId":{"maxLength":256,"minLength":2,"type":"string","description":"tenant id of the Property"},"floorNo":{"maxLength":64,"minLength":1,"type":"string","description":"floor number of the Unit"},"unitType":{"type":"string","description":"Unit type is master data."},"usageCategory":{"maxLength":64,"minLength":1,"type":"string","description":"This is about the usage of the property like Residential, Non-residential, Mixed(Property witch is gettiong used for Residential, Non-residential purpose)"},"occupancyType":{"$ref":"#/components/schemas/OccupancyType2"},"occupancyDate":{"type":"integer","description":"Date on which unit is occupied.","format":"int64"},"constructionDetail":{"$ref":"#/components/schemas/ConstructionDetail"},"additionalDetails":{"type":"object","description":"Json object to capture any extra information which is not accommodated by model"}}},"OccupancyType2":{"title":"OccupancyType2","enum":["OWNER","TENANT"],"type":"string","description":"Value denoting if the unit is rented or occupied by owner"},"ConstructionDetail":{"title":"ConstructionDetail","type":"object","properties":{"id":{"maxLength":64,"type":"string","description":"id of the property with which the constructionDetail is associated."},"carpetArea":{"type":"number","description":"Total built up area in sq ft(built-up area = carpet area + areas covered by walls)"},"builtUpArea":{"type":"number","description":"Total built up area in sq ft(built-up area = carpet area + areas covered by walls)"},"plinthArea":{"type":"number","description":"Area of the extension builtup of the Unit, Like balcony, sitouts."},"superBuiltUpArea":{"type":"number","description":"Total built up area in sq ft(built-up area + Common area = Super built-up area)"},"constructionType":{"maxLength":64,"minLength":1,"type":"string","description":"Construction type is defined in MDMS ConstructionTypeMaster."},"constructionDate":{"type":"integer","description":"The date when the property was constructed","format":"int64"},"dimensions":{"type":"object","description":"The dimensions of the plot or building or any unit"},"auditDetails":{"$ref":"#/components/schemas/AuditDetails"},"additionalDetails":{"type":"object","description":"The json (array of '#/definitions/Factor')"}},"description":"Construction/constructionDetail details are captured here. Detail information of the constructionDetail including floor wise usage and area are saved as seperate units .For each financial year construction details may change. constructionDetail object is required for tax calculation"},"AuditDetails":{"title":"AuditDetails","type":"object","properties":{"createdBy":{"type":"string","description":"username (preferred) or userid of the user that created the object"},"lastModifiedBy":{"type":"string","description":"username (preferred) or userid of the user that last modified the object"},"createdTime":{"type":"integer","description":"epoch of the time object is created","format":"int64"},"lastModifiedTime":{"type":"integer","description":"epoch of the time object is last modified","format":"int64"}},"description":"Collection of audit related fields used by most models"}}}}
```

## Fetch Properties List

## Get the list of properties defined in the system.

> Get the properties list based on the input parameters.<br>

```json
{"openapi":"3.0.0","info":{"title":"eGov Property Registry System.","version":"1.0.0"},"tags":[{"name":"Property","description":""}],"servers":[{"url":"https://virtserver.swaggerhub.com/egovernmets-faundation/PT-2.0/1.0.0","description":"SwaggerHub API Auto Mocking","variables":{}},{"url":"https://egov-micro-dev.egovernments.org","variables":{}}],"paths":{"/property/_search":{"post":{"tags":["Property"],"summary":"Get the list of properties defined in the system.","description":"Get the properties list based on the input parameters.\n","operationId":"Getthelistofpropertiesdefinedinthesystem.","parameters":[{"name":"tenantId","in":"query","description":"Unique id for a tenant.","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"name","in":"query","description":"Name of owner whose property is to be searched.","style":"form","explode":true,"schema":{"type":"string","nullable":true}},{"name":"ids","in":"query","description":"List of system generated ids of properties.","style":"form","explode":true,"schema":{"type":"string"}},{"name":"constructionDetailNumbers","in":"query","description":"List of constructionDetailNumbers to search.","style":"form","explode":true,"schema":{"maxLength":128,"minLength":4,"type":"string"}},{"name":"oldpropertyids","in":"query","description":"List of oldPropertyIds to search..","style":"form","explode":true,"schema":{"maxLength":128,"minLength":4,"type":"string"}},{"name":"mobileNumber","in":"query","description":"MobileNumber of owner whose property is to be searched.","style":"form","explode":true,"schema":{"type":"integer","format":"int64"}},{"name":"fromDate","in":"query","description":"Fetches properties with created time after fromDate.","style":"form","explode":true,"schema":{"type":"number","format":"double"}},{"name":"toDate","in":"query","description":"Fetches properties with created time till toDate.","style":"form","explode":true,"schema":{"type":"number","format":"double"}}],"requestBody":{"description":"RequestHeader meta data.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestHeader"}}},"required":true},"responses":{"200":{"description":"Successful response","headers":{},"content":{"text/plain":{"schema":{"type":"object","description":"Successful response"}}}},"400":{"description":"Invalid input."}},"deprecated":false}}},"components":{"schemas":{"RequestHeader":{"title":"RequestHeader","required":["ts","action","msgId"],"type":"object","properties":{"apiInfo":{"$ref":"#/components/schemas/ApiInfo"},"deviceDetail":{"$ref":"#/components/schemas/DeviceDetail"},"ts":{"type":"integer","description":"time in epoch","format":"int64"},"action":{"maxLength":32,"type":"string","description":"API action to be performed like _create, _update, _search (denoting POST, PUT, GET) or _oauth etc"},"key":{"maxLength":256,"type":"string","description":"API key (API key provided to the caller in case of server to server communication)"},"msgId":{"maxLength":256,"type":"string","description":"Unique request message id from the caller"},"requesterId":{"maxLength":256,"type":"string","description":"UserId of the user calling"},"authToken":{"type":"string","description":"//session/jwt/saml token/oauth token - the usual value that would go into HTTP bearer token"},"userInfo":{"$ref":"#/components/schemas/UserInfo"},"correlationId":{"type":"string"},"signature":{"type":"string","description":"Hash describing the current RequestHeader"}},"description":"RequestHeader should be used to carry meta information about the requests to the server as described in the fields below. All eGov APIs will use requestHeader as a part of the request body to carry this meta information. Some of this information will be returned back from the server as part of the ResponseHeader in the response body to ensure correlation."},"ApiInfo":{"title":"ApiInfo","type":"object","properties":{"id":{"maxLength":64,"minLength":2,"type":"string","description":"The id of the API being called"},"version":{"maxLength":64,"minLength":2,"type":"string","description":"The version of the API"},"path":{"type":"string","description":"The URI of the API"}},"description":"Info of the API being called"},"DeviceDetail":{"title":"DeviceDetail","type":"object","properties":{"id":{"type":"string","description":"The id of the device which is trying to accessed"},"signature":{"type":"string","description":"The electronic signature of the device"}},"description":"Contains information about the device used to access the api"},"UserInfo":{"title":"UserInfo","required":["tenantId","userName","primaryrole"],"type":"object","properties":{"tenantId":{"type":"string","description":"Unique Identifier of the tenant to which user primarily belongs"},"uuid":{"type":"string","description":"System Generated User id of the authenticated user."},"userName":{"type":"string","description":"Unique user name of the authenticated user"},"password":{"type":"string","description":"password of the user."},"idToken":{"type":"string","description":"This will be the OTP."},"mobile":{"type":"string","description":"mobile number of the autheticated user"},"email":{"type":"string","description":"email address of the authenticated user"},"primaryrole":{"type":"array","items":{"$ref":"#/components/schemas/Primaryrole"},"description":"List of all the roles for the primary tenant"},"additionalroles":{"type":"array","items":{"$ref":"#/components/schemas/Additionalrole"},"description":"array of additional tenantids authorized for the authenticated user"}},"description":"This is acting ID token of the authenticated user on the server. Any value provided by the clients will be ignored and actual user based on authtoken will be used on the server."},"Primaryrole":{"title":"Primaryrole","required":["code","tenantId"],"type":"object","properties":{"name":{"maxLength":64,"type":"string","description":"Unique name of the role"},"code":{"maxLength":64,"type":"string","description":"Unique code of the role"},"tenantId":{"maxLength":64,"type":"string","description":"The tenantId for which the role is available"},"description":{"type":"string","description":"brief description of the role"}},"description":"minimal representation of the Roles in the system to be carried along in UserInfo with RequestHeader meta data. Actual authorization service to extend this to have more role related attributes"},"Additionalrole":{"title":"Additionalrole","required":["tenantId","roles"],"type":"object","properties":{"tenantId":{"type":"string","description":"tenantid for the tenant"},"roles":{"type":"array","items":{"$ref":"#/components/schemas/Primaryrole"},"description":"Roles assigned for a particular tenant - array of role codes/names"}},"description":"User role carries the tenant related role information for the user. A user can have multiple roles per tenant based on the need of the tenant. A user may also have multiple roles for multiple tenants."}}}}
```

## Delete Existing Property

## Delete existing property.

> The API will delete the property associated with the given propertyId from the system  The API works in idempotent manner.

```json
{"openapi":"3.0.0","info":{"title":"eGov Property Registry System.","version":"1.0.0"},"tags":[{"name":"Property","description":""}],"servers":[{"url":"https://virtserver.swaggerhub.com/egovernmets-faundation/PT-2.0/1.0.0","description":"SwaggerHub API Auto Mocking","variables":{}},{"url":"https://egov-micro-dev.egovernments.org","variables":{}}],"paths":{"/property/_delete":{"post":{"tags":["Property"],"summary":"Delete existing property.","description":"The API will delete the property associated with the given propertyId from the system  The API works in idempotent manner.","operationId":"Deleteexistingproperty.","parameters":[{"name":"tenantId","in":"query","description":"Unique id for a tenant.","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"propertyId","in":"query","description":"The properrtyId to be deactivated","required":true,"style":"form","explode":true,"schema":{"maxLength":128,"minLength":4,"type":"string"}}],"requestBody":{"description":"Request header for the property delete Request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestHeader"}}},"required":true},"responses":{"200":{"description":"Deleted Property successful","headers":{},"content":{"text/plain":{"schema":{"type":"object","description":"Deleted Property successful"}}}},"404":{"description":"Delete Property failed"}},"deprecated":false}}},"components":{"schemas":{"RequestHeader":{"title":"RequestHeader","required":["ts","action","msgId"],"type":"object","properties":{"apiInfo":{"$ref":"#/components/schemas/ApiInfo"},"deviceDetail":{"$ref":"#/components/schemas/DeviceDetail"},"ts":{"type":"integer","description":"time in epoch","format":"int64"},"action":{"maxLength":32,"type":"string","description":"API action to be performed like _create, _update, _search (denoting POST, PUT, GET) or _oauth etc"},"key":{"maxLength":256,"type":"string","description":"API key (API key provided to the caller in case of server to server communication)"},"msgId":{"maxLength":256,"type":"string","description":"Unique request message id from the caller"},"requesterId":{"maxLength":256,"type":"string","description":"UserId of the user calling"},"authToken":{"type":"string","description":"//session/jwt/saml token/oauth token - the usual value that would go into HTTP bearer token"},"userInfo":{"$ref":"#/components/schemas/UserInfo"},"correlationId":{"type":"string"},"signature":{"type":"string","description":"Hash describing the current RequestHeader"}},"description":"RequestHeader should be used to carry meta information about the requests to the server as described in the fields below. All eGov APIs will use requestHeader as a part of the request body to carry this meta information. Some of this information will be returned back from the server as part of the ResponseHeader in the response body to ensure correlation."},"ApiInfo":{"title":"ApiInfo","type":"object","properties":{"id":{"maxLength":64,"minLength":2,"type":"string","description":"The id of the API being called"},"version":{"maxLength":64,"minLength":2,"type":"string","description":"The version of the API"},"path":{"type":"string","description":"The URI of the API"}},"description":"Info of the API being called"},"DeviceDetail":{"title":"DeviceDetail","type":"object","properties":{"id":{"type":"string","description":"The id of the device which is trying to accessed"},"signature":{"type":"string","description":"The electronic signature of the device"}},"description":"Contains information about the device used to access the api"},"UserInfo":{"title":"UserInfo","required":["tenantId","userName","primaryrole"],"type":"object","properties":{"tenantId":{"type":"string","description":"Unique Identifier of the tenant to which user primarily belongs"},"uuid":{"type":"string","description":"System Generated User id of the authenticated user."},"userName":{"type":"string","description":"Unique user name of the authenticated user"},"password":{"type":"string","description":"password of the user."},"idToken":{"type":"string","description":"This will be the OTP."},"mobile":{"type":"string","description":"mobile number of the autheticated user"},"email":{"type":"string","description":"email address of the authenticated user"},"primaryrole":{"type":"array","items":{"$ref":"#/components/schemas/Primaryrole"},"description":"List of all the roles for the primary tenant"},"additionalroles":{"type":"array","items":{"$ref":"#/components/schemas/Additionalrole"},"description":"array of additional tenantids authorized for the authenticated user"}},"description":"This is acting ID token of the authenticated user on the server. Any value provided by the clients will be ignored and actual user based on authtoken will be used on the server."},"Primaryrole":{"title":"Primaryrole","required":["code","tenantId"],"type":"object","properties":{"name":{"maxLength":64,"type":"string","description":"Unique name of the role"},"code":{"maxLength":64,"type":"string","description":"Unique code of the role"},"tenantId":{"maxLength":64,"type":"string","description":"The tenantId for which the role is available"},"description":{"type":"string","description":"brief description of the role"}},"description":"minimal representation of the Roles in the system to be carried along in UserInfo with RequestHeader meta data. Actual authorization service to extend this to have more role related attributes"},"Additionalrole":{"title":"Additionalrole","required":["tenantId","roles"],"type":"object","properties":{"tenantId":{"type":"string","description":"tenantid for the tenant"},"roles":{"type":"array","items":{"$ref":"#/components/schemas/Primaryrole"},"description":"Roles assigned for a particular tenant - array of role codes/names"}},"description":"User role carries the tenant related role information for the user. A user can have multiple roles per tenant based on the need of the tenant. A user may also have multiple roles for multiple tenants."}}}}
```

## Cancel Existing Property

## Cancel existing property.

> The API will delete the property associated with the given propertyId from the system  The API works in idempotent manner.

```json
{"openapi":"3.0.0","info":{"title":"eGov Property Registry System.","version":"1.0.0"},"tags":[{"name":"Property","description":""}],"servers":[{"url":"https://virtserver.swaggerhub.com/egovernmets-faundation/PT-2.0/1.0.0","description":"SwaggerHub API Auto Mocking","variables":{}},{"url":"https://egov-micro-dev.egovernments.org","variables":{}}],"paths":{"/property/_cancel":{"post":{"tags":["Property"],"summary":"Cancel existing property.","description":"The API will delete the property associated with the given propertyId from the system  The API works in idempotent manner.","operationId":"Cancelexistingproperty.","parameters":[{"name":"tenantId","in":"query","description":"Unique id for a tenant.","required":true,"style":"form","explode":true,"schema":{"type":"string"}},{"name":"propertyId","in":"query","description":"The properrtyId to be deactivated","required":true,"style":"form","explode":true,"schema":{"maxLength":128,"minLength":4,"type":"string"}}],"requestBody":{"description":"Request header for the property delete Request.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RequestHeader"}}},"required":true},"responses":{"200":{"description":"Deleted Property successful","headers":{},"content":{"text/plain":{"schema":{"type":"object","description":"Deleted Property successful"}}}},"404":{"description":"Delete Property failed"}},"deprecated":false}}},"components":{"schemas":{"RequestHeader":{"title":"RequestHeader","required":["ts","action","msgId"],"type":"object","properties":{"apiInfo":{"$ref":"#/components/schemas/ApiInfo"},"deviceDetail":{"$ref":"#/components/schemas/DeviceDetail"},"ts":{"type":"integer","description":"time in epoch","format":"int64"},"action":{"maxLength":32,"type":"string","description":"API action to be performed like _create, _update, _search (denoting POST, PUT, GET) or _oauth etc"},"key":{"maxLength":256,"type":"string","description":"API key (API key provided to the caller in case of server to server communication)"},"msgId":{"maxLength":256,"type":"string","description":"Unique request message id from the caller"},"requesterId":{"maxLength":256,"type":"string","description":"UserId of the user calling"},"authToken":{"type":"string","description":"//session/jwt/saml token/oauth token - the usual value that would go into HTTP bearer token"},"userInfo":{"$ref":"#/components/schemas/UserInfo"},"correlationId":{"type":"string"},"signature":{"type":"string","description":"Hash describing the current RequestHeader"}},"description":"RequestHeader should be used to carry meta information about the requests to the server as described in the fields below. All eGov APIs will use requestHeader as a part of the request body to carry this meta information. Some of this information will be returned back from the server as part of the ResponseHeader in the response body to ensure correlation."},"ApiInfo":{"title":"ApiInfo","type":"object","properties":{"id":{"maxLength":64,"minLength":2,"type":"string","description":"The id of the API being called"},"version":{"maxLength":64,"minLength":2,"type":"string","description":"The version of the API"},"path":{"type":"string","description":"The URI of the API"}},"description":"Info of the API being called"},"DeviceDetail":{"title":"DeviceDetail","type":"object","properties":{"id":{"type":"string","description":"The id of the device which is trying to accessed"},"signature":{"type":"string","description":"The electronic signature of the device"}},"description":"Contains information about the device used to access the api"},"UserInfo":{"title":"UserInfo","required":["tenantId","userName","primaryrole"],"type":"object","properties":{"tenantId":{"type":"string","description":"Unique Identifier of the tenant to which user primarily belongs"},"uuid":{"type":"string","description":"System Generated User id of the authenticated user."},"userName":{"type":"string","description":"Unique user name of the authenticated user"},"password":{"type":"string","description":"password of the user."},"idToken":{"type":"string","description":"This will be the OTP."},"mobile":{"type":"string","description":"mobile number of the autheticated user"},"email":{"type":"string","description":"email address of the authenticated user"},"primaryrole":{"type":"array","items":{"$ref":"#/components/schemas/Primaryrole"},"description":"List of all the roles for the primary tenant"},"additionalroles":{"type":"array","items":{"$ref":"#/components/schemas/Additionalrole"},"description":"array of additional tenantids authorized for the authenticated user"}},"description":"This is acting ID token of the authenticated user on the server. Any value provided by the clients will be ignored and actual user based on authtoken will be used on the server."},"Primaryrole":{"title":"Primaryrole","required":["code","tenantId"],"type":"object","properties":{"name":{"maxLength":64,"type":"string","description":"Unique name of the role"},"code":{"maxLength":64,"type":"string","description":"Unique code of the role"},"tenantId":{"maxLength":64,"type":"string","description":"The tenantId for which the role is available"},"description":{"type":"string","description":"brief description of the role"}},"description":"minimal representation of the Roles in the system to be carried along in UserInfo with RequestHeader meta data. Actual authorization service to extend this to have more role related attributes"},"Additionalrole":{"title":"Additionalrole","required":["tenantId","roles"],"type":"object","properties":{"tenantId":{"type":"string","description":"tenantid for the tenant"},"roles":{"type":"array","items":{"$ref":"#/components/schemas/Primaryrole"},"description":"Roles assigned for a particular tenant - array of role codes/names"}},"description":"User role carries the tenant related role information for the user. A user can have multiple roles per tenant based on the need of the tenant. A user may also have multiple roles for multiple tenants."}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.digit.org/local-governance/access/local-governance-stack/property-tax/property-tax-architecture/property-tax-apis.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
