Skip to content

Discovery API (1.9.0)

Download OpenAPI description
Languages
Servers
Mock server
https://developer.servictoria.io/_mock/portal/rest/ddp-discovery-api/openapi
Production environment
https://api.servictoria.io/ddp
Test environment
https://test.api.servictoria.io/ddp

GET properties

Request

Get information about the matched properties including the associated titles and parcels. You may provide only one of the three identifiers - an address, Council Property Number (CPN) in combination with Municipality or Property Persistent Feature Identifier (PFI). This helps to confirm the right title and/or property before then making an order for available certificates.

Security
oauthClientCredentials
Query
propertyPfistring^[0-9]{1,20}$

Property Persistent Feature Identifier (PFI) which uniquely identifies a property. A PFI is generated by the state once for each property at the point of creation and remains constant until a property is retired. Only a single property will be returned when this identifier is used. This parameter cannot be used in conjunction with propertyNumber + municipalityName or eziAddress.

Example: propertyPfi=208045633
propertyNumberstring[ 1 .. 20 ] characters

Property Number assigned by the local government authority of the property. This parameter must always be paired with municipalityName. Also known as Council Property Number (CPN). Only a single property will be returned when this identifier is used. This parameter cannot be used in conjunction with propertyPfi or eziAddress.

Example: propertyNumber=603787
municipalityNamestring

Municipality of the property. This parameter must always be paired with propertyNumber. Only a single property will be returned when this identifier is used. This parameter cannot be used in conjunction with propertyPfi or eziAddress.

Example: municipalityName=MELBOURNE
eziAddressstring

Property address as a single string (not broken into fields). It is the concatenation of key address attribute fields to provide a unique address for data matching. Format - blg_unit_, house_, road_name/type/suffix, plus locality & postcode fields. Multiple properties may be be returned when this identifier is used. This parameter cannot be used in conjunction with propertyNumber + municipalityName or propertyPfi. Note that a single property can have multiple addresses, e.g. 113 MEW LANE BAMAWM 3561 and 50 TWADDLE LANE BAMAWM 3561 An address can also be linked to multiple properties, such as BASEMENT 2 LONSDALE STREET MELBOURNE 3000. As a result, this identifier should be considered less specific than propertyPfi.

Example: eziAddress=328/800 SWANSTON STREET CARLTON 3053
premiumboolean

For customers who have premium access, specifies whether to include premium-only results in the discovery responses. If set to true, premium information (such as unencrypted title IDs) will be included in the response. Note that enabling this option may incur discovery charges.

Default false
Example: premium=true
Headers
customer-idstring[ 1 .. 40 ] characters

Identifier of the customer this request is on behalf of. For premium discovery requests only.

Example: 12345
customer-referencestring<= 40 characters^[0-9a-zA-Z-_&(),.@ ]+$

Optional description to identify a transaction, used for billing purposes. Note that we'll be providing a separate order ID once the order has been submitted. For premium discovery requests only.

Example: customer-reference-001
idempotency-keystring(uuid)

Unique UUID used to prevent duplicate premium discovery orders. For premium discovery only. This allows requests to be retried after a network failure without accidentally submitting two premium discovery orders. If you receive a network error or timeout, you should resend the request with the same idempotency-key. If the server is still processing the original POST, you will receive 429 Too Many Requests. Idempotency keys expire after 24 hours.

Example: cc4d91e3-17af-4d11-b333-eb449e62ff07
x-correlation-idstring(uuid)

Optional unique UUID which can assist with tracing / debugging requests.

Example: 824993ab-7366-4faa-963d-c456dec227a5
curl -i -X GET \
  'https://developer.servictoria.io/_mock/portal/rest/ddp-discovery-api/openapi/discovery/v1/properties?propertyPfi=208045633&propertyNumber=603787&municipalityName=MELBOURNE&eziAddress=328%2F800+SWANSTON+STREET+CARLTON+3053&premium=true' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'customer-id: 12345' \
  -H 'customer-reference: customer-reference-001' \
  -H 'idempotency-key: cc4d91e3-17af-4d11-b333-eb449e62ff07' \
  -H 'x-correlation-id: 824993ab-7366-4faa-963d-c456dec227a5'

Responses

Successful Operation

Bodyapplication/json
propertySummariesArray of objects(PropertySummary)required
propertySummaries[].​propertyPfistringrequired

Property persistent feature identifier (PFI) which uniquely identifies a property.

Example: "208045633"
propertySummaries[].​propertyStatusstringrequired

The status of a property identifies whether it is active or proposed. Proposed properties are attached to proposed parcels. This is where a parcel sub-division has not yet been fully completed but has gone through a significant way through the approval stage and so recognised as proposed.

Enum"ACTIVE""PROPOSED"
Example: "ACTIVE"
propertySummaries[].​isCouncilPropertyRegisteredbooleanrequired

This identifies whether the property has an associated Council Property Number (true) or not (false). There are properties which do not have a council property number and are typically common property areas of apartments and as such, cannot be bought or sold. If false then the councilPropertyDetails section will be omitted

Example: true
propertySummaries[].​councilPropertyDetailsobject(CouncilPropertyDetails)
propertySummaries[].​isMultiAssessbooleanrequired

If the property is known as Multi-assessment, then this is where more than one property belong to the same parcel. A typical example might be where individual shops belong in a shopping centre property.

Example: true
propertySummaries[].​propertyCreatedDatestringrequired

Date the property and its PFI was created by the state.

Example: "2012-10-03 02:17:46"
propertySummaries[].​primaryAddressobject(PrimaryAddress)required
propertySummaries[].​primaryAddress.​eziAddressstringrequired

Property address as a single string (not broken into fields). It is the concatenation of key address attribute fields to provide a unique address for data matching. Format - blg_unit_, house_, road_name/type/suffix, plus locality & postcode fields.

Example: "UNIT 328 LEVEL 3 800 SWANSTON STREET CARLTON VIC 3053"
propertySummaries[].​primaryAddress.​addressDetailsobject(AddressDetails)required
propertySummaries[].​primaryAddress.​addressDetails.​buildingNamestring
Example: "COMPANYX MAIN MALL"
propertySummaries[].​primaryAddress.​addressDetails.​unitTypestring
Example: "UNIT"
propertySummaries[].​primaryAddress.​addressDetails.​unitNumberstring
Example: "201A"
propertySummaries[].​primaryAddress.​addressDetails.​levelTypestring
Example: "GROUND"
propertySummaries[].​primaryAddress.​addressDetails.​levelNumberstring
Example: "30-36"
propertySummaries[].​primaryAddress.​addressDetails.​streetNumberstring
Example: "30"
propertySummaries[].​primaryAddress.​addressDetails.​streetNamestring
Example: "BOURKE"
propertySummaries[].​primaryAddress.​addressDetails.​streetTypestring
Example: "STREET"
propertySummaries[].​primaryAddress.​addressDetails.​streetSuffixstring
Example: "MALL"
propertySummaries[].​primaryAddress.​addressDetails.​suburbTownLocalitystring
Example: "MELBOURNE"
propertySummaries[].​primaryAddress.​addressDetails.​postcodestring
Example: "3000"
propertySummaries[].​aliasAddressesArray of objects(AliasAddress)

List of alias addresses associated with the requested property. Note, if a property has no alias addresses, an empty array will be returned.

propertySummaries[].​waterAuthoritiesobject(WaterAuthorities)
propertySummaries[].​landParcelsArray of objects(LandParcel)required

List of parcels associated with the requested property(s). A parcel is generally a piece of physical land as defined by a geographic shape. It is also possible for a parcel to not be a physical piece of ground, but be defined also by where it is vertically. Note, if no associated parcels are found, an empty array will be returned.

propertySummaries[].​landParcels[].​spistringrequired

A Standard Parcel Identifier (SPI) uniquely identifies a parcel. An SPI typically consists of either a Lot on Plan or a Crown Allotment. A Lot on Plan defines the allocated lot number on a particular plan. For example '101\PS328573' is lot 101 on the plan of subdivision 328573. There are instances of an SPI not containing a lot, eg: 'TP109554'. A Crown Allotment parcel is defined by up to five different factors including Allotment, Block, Portion, Section and SubDivision. For example '12~10A\PP5762' is Allotment 12 in Section 10a on the Parish Plan 5762.

Example: "3A2\\PS515587"
propertySummaries[].​landParcels[].​parcelTypestring

The parcel types determine what can be done with the parcel. The type can be a lot (a normal parcel of land), a unit (belonging to an apartment development), Common property (jointly owned land as defined by something such as a body corporate), roads or reserves.

Enum"COMMON_PROPERTY""LOT""RESERVE""ROAD""UNIT"
Example: "LOT"
propertySummaries[].​landParcels[].​lotTypestring

The lot type gives an indication of the use of the parcel or describes any lot limitations. Generally when the parcel has a parcel type of ‘lot’ or ‘unit’. They can be restricted (meaning it must be sold with another parcel), unrestricted (it does not need to be sold along with another parcel), an accessory unit like a storage area in an apartment complex or a carpark.

Enum"ACCESSORY_UNIT""CARPARK""RESTRICTED""UNRESTRICTED"
Example: "RESTRICTED"
propertySummaries[].​landParcels[].​parcelStatusstring

The status of a parcel identifies whether it is active or proposed. This is where a parcel sub-division has not yet been fully completed but has gone through a significant way through the approval stage and so recognised as proposed.

Enum"ACTIVE""PROPOSED"
Example: "ACTIVE"
propertySummaries[].​landParcels[].​lotstring
Example: "3A2"
propertySummaries[].​landParcels[].​planNumberstring
Example: "PS515587S"
propertySummaries[].​landParcels[].​parishstring

Parish name.

Example: "YEO"
propertySummaries[].​landParcels[].​townshipstring

Township name.

Example: "BARWON DOWNS TP"
propertySummaries[].​landParcels[].​allotmentstring

Crown Allotment. Crown Allotment descriptor.

Example: "15D"
propertySummaries[].​landParcels[].​blockstring

Crown Block. A part of the parcel descriptor. It is utilized in combination with either Lot and Plan number or Allotment and Parish code.

Example: "1"
propertySummaries[].​landParcels[].​sectionstring

Section. A part of the parcel descriptor. It is utilized in combination with either Lot and Plan number or Allotment and Parish code.

Example: "A"
propertySummaries[].​landParcels[].​portionstring

Crown Portion. Crown Portion descriptor.

Example: "105"
propertySummaries[].​landParcels[].​subdivisionstring

Crown Subdivision. Crown Subdivision descriptor.

Example: "16"
propertySummaries[].​titlesArray of objects(Title)required

List of titles associated with the requested property(s). Note, if no associated titles are found, an empty array will be returned.

propertySummaries[].​titles[].​titleIdstringrequired

An encrypted title identifier. Access to Vol/Fol is available only for premium discovery due to associated charges. This value is not guaranteed to remain stable over time. Customers should avoid relying on its persistence or consistency across API calls or over extended periods.

Example: "qp0gjuieZ5VzbNKtT/eZvqPryobRkEYxMA=="
propertySummaries[].​titles[].​volumeFoliostring

For premium discovery responses, this field contains the Volume/Folio (Vol/Fol) of a title.

Example: "10940/843"
propertySummaries[].​titles[].​titleStatusstringrequired

The status of the title informs whether it is currently active, has become cancelled or partially cancelled.

Enum"ACTIVE""CANCELLED""PARTIALLY_CANCELLED"
Example: "ACTIVE"
propertySummaries[].​titles[].​titleTypestringrequired

Describes the ownership type of the title, the main two being Freehold for property owned by individuals and companies, and Crown land which is administered by public authorities.

Enum"ALPINE_LEASE""CITY_LINK_LEASE""CROWN_GRANT""CROWN_LAND""CROWN_LEASE""FREEHOLD""IDENTIFIED""MINERAL_EXCLUDES""MINERAL_INCLUDES""TREASURERS_RECEIPT"
Example: "FREEHOLD"
orderSummaryobject(OrderSummary)
Response
application/json
{ "propertySummaries": [ {} ], "orderSummary": { "orderId": "10219435", "totalPrice": 891, "totalGst": 89 } }

GET titles

Request

Get information about the matched titles including the associated properties and parcels. You can provide a Volume and Folio number or the encrypted title identifier provided from other discovery APIs. This supports confirmation of the right title and/or property.

Security
oauthClientCredentials
Query
titleIdstringrequired

Title identifier, this can be either a volume/folio (eg: '10940/843') or an encrypted titleId as returned by operations on this API (eg: 'qp0gjuieZ5VzbNKtT/eZvqPryobRkEYxMA==' - this example is valid for the TEST environment only). The encrypted titleId's value is not guaranteed to remain stable over time. Customers should avoid relying on its persistence or consistency across API calls or over extended periods.

Example: titleId=10940/843
premiumboolean

For customers who have premium access, specifies whether to include premium-only results in the discovery responses. If set to true, premium information (unencrypted title IDs) will be included in the response. Note that enabling this option may incur discovery charges. Customer will not be charged if the titleId is a volume/folio, rather than an encrypted titleId.

Default false
Example: premium=true
Headers
customer-idstring[ 1 .. 40 ] characters

Identifier of the customer this request is on behalf of. For premium discovery requests only.

Example: 12345
customer-referencestring<= 40 characters^[0-9a-zA-Z-_&(),.@ ]+$

Optional description to identify a transaction, used for billing purposes. Note that we'll be providing a separate order ID once the order has been submitted. For premium discovery requests only.

Example: customer-reference-001
idempotency-keystring(uuid)

Unique UUID used to prevent duplicate premium discovery orders. For premium discovery only. This allows requests to be retried after a network failure without accidentally submitting two premium discovery orders. If you receive a network error or timeout, you should resend the request with the same idempotency-key. If the server is still processing the original POST, you will receive 429 Too Many Requests. Idempotency keys expire after 24 hours.

Example: cc4d91e3-17af-4d11-b333-eb449e62ff07
x-correlation-idstring(uuid)

Optional unique UUID which can assist with tracing / debugging requests.

Example: 824993ab-7366-4faa-963d-c456dec227a5
curl -i -X GET \
  'https://developer.servictoria.io/_mock/portal/rest/ddp-discovery-api/openapi/discovery/v1/titles?titleId=10940%2F843&premium=true' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'customer-id: 12345' \
  -H 'customer-reference: customer-reference-001' \
  -H 'idempotency-key: cc4d91e3-17af-4d11-b333-eb449e62ff07' \
  -H 'x-correlation-id: 824993ab-7366-4faa-963d-c456dec227a5'

Responses

Successful Operation

Bodyapplication/json
titleSummariesArray of objects(TitleSummary)required
titleSummaries[].​titleIdstringrequired

An encrypted title identifier. Access to Vol/Fol is available only for premium discovery due to associated charges. This value is not guaranteed to remain stable over time. Customers should avoid relying on its persistence or consistency across API calls or over extended periods.

Example: "qp0gjuieZ5VzbNKtT/eZvqPryobRkEYxMA=="
titleSummaries[].​volumeFoliostring

For premium discovery responses, this field contains the Volume/Folio (Vol/Fol) of a title.

Example: "10940/843"
titleSummaries[].​titleStatusstringrequired

The status of the title informs whether it is currently active, has become cancelled or partially cancelled.

Enum"ACTIVE""CANCELLED""PARTIALLY_CANCELLED"
Example: "ACTIVE"
titleSummaries[].​titleTypestringrequired

Describes the ownership type of the title, the main two being Freehold for property owned by individuals and companies, and Crown land which is administered by public authorities.

Enum"ALPINE_LEASE""CITY_LINK_LEASE""CROWN_GRANT""CROWN_LAND""CROWN_LEASE""FREEHOLD""IDENTIFIED""MINERAL_EXCLUDES""MINERAL_INCLUDES""TREASURERS_RECEIPT"
Example: "FREEHOLD"
titleSummaries[].​titleReferenceobject(TitleReference)

The identifier of a title made up of a volume number and a folio number separated by a slash. It is the numbering system used for titles, Crown Grants, Crown Leases and Mineral Leases. If volume folio was provided in the search, then, this field will return volume folio

titleSummaries[].​copyOfTitleTypestringrequired

The certificate of title may either be stored only electronically in the the Victorian Online Titles System (VOTS) or a duplicate may exist in physical paper format.

Enum"ELECTRONIC""PAPER"
titleSummaries[].​titleStreetAddressstring

Address recorded against the title

Example: "UNIT 328 LEVEL 3 800 SWANSTON STREET CARLTON VIC 3053"
titleSummaries[].​landDescriptionTextstring

The parcel(s) associated with the title are described in the Land Description.

Example: "Lot 3A2 on Plan of Subdivision 515587S."
titleSummaries[].​landParcelsArray of objects(LandParcel)
titleSummaries[].​propertiesArray of objects(Property)
orderSummaryobject(OrderSummary)
Response
application/json
{ "titleSummaries": [ {} ], "orderSummary": { "orderId": "10219435", "totalPrice": 891, "totalGst": 89 } }

GET parcels

Request

Get information about the matched parcels including associated titles and properties. Provide a Standard Parcel Identifier (SPI).

Security
oauthClientCredentials
Query
spistring[ 1 .. 24 ] charactersrequired

A Standard Parcel Identifier (SPI) uniquely identifies a parcel. An SPI typically consists of either a Lot on Plan or a Crown Allotment. A Lot on Plan defines the allocated lot number on a particular plan. For example '101\PS328573' is lot 101 on the plan of subdivision 328573. There are instances of an SPI not containing a lot, eg: 'TP109554'. A Crown Allotment parcel is defined by up to five different factors including Allotment, Block, Portion, Section and SubDivision. For example '12~10A\PP5762' is Allotment 12 in Section 10a on the Parish Plan 5762. If the input SPI contains a suffix character at the end and there is no matching parcel found, the suffix will be removed and the search retried. Note: due the backslash () in SPI's it's important URL encoded this parameter, many HTTP clients will do this automatically.

Example: spi=3A2\PS515587
premiumboolean

For customers who have premium access, specifies whether to include premium-only results in the discovery responses. If set to true, premium information (such as unencrypted title IDs) will be included in the response. Note that enabling this option may incur discovery charges.

Default false
Example: premium=true
Headers
customer-idstring[ 1 .. 40 ] characters

Identifier of the customer this request is on behalf of. For premium discovery requests only.

Example: 12345
customer-referencestring<= 40 characters^[0-9a-zA-Z-_&(),.@ ]+$

Optional description to identify a transaction, used for billing purposes. Note that we'll be providing a separate order ID once the order has been submitted. For premium discovery requests only.

Example: customer-reference-001
idempotency-keystring(uuid)

Unique UUID used to prevent duplicate premium discovery orders. For premium discovery only. This allows requests to be retried after a network failure without accidentally submitting two premium discovery orders. If you receive a network error or timeout, you should resend the request with the same idempotency-key. If the server is still processing the original POST, you will receive 429 Too Many Requests. Idempotency keys expire after 24 hours.

Example: cc4d91e3-17af-4d11-b333-eb449e62ff07
x-correlation-idstring(uuid)

Optional unique UUID which can assist with tracing / debugging requests.

Example: 824993ab-7366-4faa-963d-c456dec227a5
curl -i -X GET \
  'https://developer.servictoria.io/_mock/portal/rest/ddp-discovery-api/openapi/discovery/v1/parcels?spi=3A2%5CPS515587&premium=true' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'customer-id: 12345' \
  -H 'customer-reference: customer-reference-001' \
  -H 'idempotency-key: cc4d91e3-17af-4d11-b333-eb449e62ff07' \
  -H 'x-correlation-id: 824993ab-7366-4faa-963d-c456dec227a5'

Responses

Successful Operation

Bodyapplication/json
spistringrequired

A Standard Parcel Identifier (SPI) uniquely identifies a parcel. An SPI typically consists of either a Lot on Plan or a Crown Allotment. A Lot on Plan defines the allocated lot number on a particular plan. For example '101\PS328573' is lot 101 on the plan of subdivision 328573. There are instances of an SPI not containing a lot, eg: 'TP109554'. A Crown Allotment parcel is defined by up to five different factors including Allotment, Block, Portion, Section and SubDivision. For example '12~10A\PP5762' is Allotment 12 in Section 10a on the Parish Plan 5762.

Example: "3A2\\PS515587"
parcelTypestring

The parcel types determine what can be done with the parcel. The type can be a lot (a normal parcel of land), a unit (belonging to an apartment development), Common property (jointly owned land as defined by something such as a body corporate), roads or reserves.

Enum"COMMON_PROPERTY""LOT""RESERVE""ROAD""UNIT"
Example: "LOT"
lotTypestring

The lot type gives an indication of the use of the parcel or describes any lot limitations. Generally when the parcel has a parcel type of ‘lot’ or ‘unit’. They can be restricted (meaning it must be sold with another parcel), unrestricted (it does not need to be sold along with another parcel), an accessory unit like a storage area in an apartment complex or a carpark.

Enum"ACCESSORY_UNIT""CARPARK""RESTRICTED""UNRESTRICTED"
Example: "RESTRICTED"
parcelStatusstring

The status of a parcel identifies whether it is active or proposed. This is where a parcel sub-division has not yet been fully completed but has gone through a significant way through the approval stage and so recognised as proposed.

Enum"ACTIVE""PROPOSED"
Example: "ACTIVE"
isPartParcelboolean

If true, only partial data available for this parcel

parcelDetailsobject(ParcelDetails)required
parcelDetails.​lotstring
Example: "3A2"
parcelDetails.​planNumberstring
Example: "PS515587S"
parcelDetails.​parishstring

Parish name.

Example: "YEO"
parcelDetails.​townshipstring

Township name.

Example: "BARWON DOWNS TP"
parcelDetails.​allotmentstring

Crown Allotment. Crown Allotment descriptor.

Example: "15D"
parcelDetails.​blockstring

Crown Block. A part of the parcel descriptor. It is utilized in combination with either Lot and Plan number or Allotment and Parish code.

Example: "1"
parcelDetails.​sectionstring

Section. A part of the parcel descriptor. It is utilized in combination with either Lot and Plan number or Allotment and Parish code.

Example: "A"
parcelDetails.​portionstring

Crown Portion. Crown Portion descriptor.

Example: "105"
parcelDetails.​subdivisionstring

Crown Subdivision. Crown Subdivision descriptor.

Example: "16"
titlesArray of objects(Title)

List of titles associated with the requested property(s). If no associated titles are found an empty array will be returned.

propertiesArray of objects(Property)
orderSummaryobject(OrderSummary)
Response
application/json
{ "spi": "3A2\\PS515587", "parcelType": "LOT", "lotType": "RESTRICTED", "parcelStatus": "ACTIVE", "isPartParcel": true, "parcelDetails": { "lot": "3A2", "planNumber": "PS515587S", "parish": "YEO", "township": "BARWON DOWNS TP", "allotment": "15D", "block": "1", "section": "A", "portion": "105", "subdivision": "16" }, "titles": [ {} ], "properties": [ {} ], "orderSummary": { "orderId": "10219435", "totalPrice": 891, "totalGst": 89 } }

Retrieve Crown allotment parcels including parcel SPI

Request

Retrieve a list of Crown allotment parcels that match the Crown allotment search criteria. The response includes each parcel's SPI, which can be used to obtain detailed parcel information.

Security
oauthClientCredentials
Query
allotmentstring[ 1 .. 10 ] characters^[A-Za-z0-9]{1,10}$

Crown Allotment descriptor. At least one of Allotment OR Portion OR Section MUST be provided Note that Allotment is a more specific identifier than Section and Portion, so may return a smaller, more specific list of Crown allotment parcels.

Example: allotment=H
sectionstring[ 1 .. 12 ] characters^[A-Za-z0-9]{1,12}$

Section is a part of the parcel descriptor. It is utilized in combination with either Lot and Plan number or Allotment and Parish code. Note that Section is less specific of an identifier than Allotment, so may return a larger, less specific list of Crown allotment parcels. At least one of Allotment OR Portion OR Section MUST be provided.

Example: section=9
portionstring[ 1 .. 12 ] characters^[A-Za-z0-9]{1,12}$

Crown Portion descriptor. Note that Portion is less specific of an identifier than Allotment, so may return a larger, less specific list of Crown allotment parcels. At least one of Allotment OR Portion OR Section MUST be provided.

Example: portion=105
blockstring[ 1 .. 12 ] characters^[A-Za-z0-9]{1,12}$

Crown Block descriptor. A part of the parcel descriptor. It is utilized in combination with either Lot and Plan number or Allotment and Parish code.

Example: block=1
subdivisionstring[ 1 .. 12 ] characters^[A-Za-z0-9]{1,12}$

Crown Subdivision descriptor.

Example: subdivision=16
parishCodestring[ 1 .. 4 ] characters^[0-9]{1,4}$

Parish code. A list of parish names and their associated codes can be obtained from the GET /parishes endpoint. If only parishCode is used, townshipCode will not return in the response. At least one of Parish code OR Township code MUST be provided.

Example: parishCode=2796
townshipCodestring[ 1 .. 5 ] characters^[A-Za-z0-9]{1,5}$

Township code. A list of township names and their associated codes can be obtained from the GET /townships endpoint. Note that townshipCode will only return in the response if townshipCode is used in the request At least one of Parish code OR Township code MUST be provided.

Example: townshipCode=2796B
Headers
x-correlation-idstring(uuid)

Optional unique UUID which can assist with tracing / debugging requests.

Example: 824993ab-7366-4faa-963d-c456dec227a5
curl -i -X GET \
  'https://developer.servictoria.io/_mock/portal/rest/ddp-discovery-api/openapi/discovery/v1/parcels/crown-allotments?allotment=H&section=9&portion=105&block=1&subdivision=16&parishCode=2796&townshipCode=2796B' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'x-correlation-id: 824993ab-7366-4faa-963d-c456dec227a5'

Responses

Successful Operation

Bodyapplication/json
crownAllotmentSummariesArray of objects(ParcelCrownDescription)
Response
application/json
{ "crownAllotmentSummaries": [ {} ] }

GET proprietors

Request

Get information about the matched proprietors and the associated titles.

Security
oauthClientCredentials
Query
lastNamestring[ 2 .. 130 ] characters^(?![.,-]+$)[a-zA-Z0-9*+=?()@`&,.!#$;\[\]"/]+...

Last name of the proprietor. Either last name or company name must be populated. This will search for individual with the provided input. The search is case insensitive. If a given name is not provided, the results will include proprietors with the matching last name, but any given name.

Example: lastName=Smith, Van Doorn, Ewing-Pistos, O'Reily
givenNamestring[ 2 .. 180 ] characters^[a-zA-Z][a-zA-Z\s'-]*[a-zA-Z]$

Given name(s) of the proprietor. Can be used in conjunction with a last name. Not applicable for companies.

Example: givenName=Mary-Anne
companyNamestring[ 2 .. 130 ] characters^(?![.,-]+$)[a-zA-Z0-9*+=?()@`&,.!#$;\[\]"/]+...

Company name. Either company name or last name must be populated. This will search for companies with the provided input.

Example: companyName=SERV
pageNumberinteger>= 1

Page number starting at 1. Each page contains up to 200 results.

Default 1
Headers
x-correlation-idstring(uuid)

Optional unique UUID which can assist with tracing / debugging requests.

Example: 824993ab-7366-4faa-963d-c456dec227a5
curl -i -X GET \
  'https://developer.servictoria.io/_mock/portal/rest/ddp-discovery-api/openapi/discovery/v1/proprietors?lastName=Smith%2C+Van+Doorn%2C+Ewing-Pistos%2C+O%27Reily&givenName=Mary-Anne&companyName=SERV&pageNumber=1' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'x-correlation-id: 824993ab-7366-4faa-963d-c456dec227a5'

Responses

Successful Operation

Bodyapplication/json
proprietorSummariesArray of objects(ProprietorSummary)required
proprietorSummaries[].​lastNamestring

Proprietor's last name.

Example: "Armstrong"
proprietorSummaries[].​givenNamestring

Proprietor's given name.

Example: "Nathan"
proprietorSummaries[].​companyNamestring

Company name.

proprietorSummaries[].​titleDetailsobject(TitleDetails)required
proprietorSummaries[].​titleDetails.​titleIdstringrequired

An encrypted title identifier. Access to Vol/Fol is available only for premium discovery due to associated charges. This value is not guaranteed to remain stable over time. Customers should avoid relying on its persistence or consistency across API calls or over extended periods.

Example: "qp0gjuieZ5VzbNKtT/eZvqPryobRkEYxMA=="
proprietorSummaries[].​titleDetails.​volumeFoliostring

For premium discovery responses, this field contains the Volume/Folio (Vol/Fol) of a title.

Example: "10940/843"
proprietorSummaries[].​titleDetails.​titleStatusstringrequired

The status of the title informs whether it is currently active, has become cancelled or partially cancelled.

Enum"ACTIVE""CANCELLED""PARTIALLY_CANCELLED"
Example: "ACTIVE"
proprietorSummaries[].​titleDetails.​titleTypestringrequired

Describes the ownership type of the title, the main two being Freehold for property owned by individuals and companies, and Crown land which is administered by public authorities.

Enum"ALPINE_LEASE""CITY_LINK_LEASE""CROWN_GRANT""CROWN_LAND""CROWN_LEASE""FREEHOLD""IDENTIFIED""MINERAL_EXCLUDES""MINERAL_INCLUDES""TREASURERS_RECEIPT"
Example: "FREEHOLD"
proprietorSummaries[].​titleDetails.​landDescriptionTextstring

The parcel(s) associated with the title are described in the Land Description.

Example: "Lot 3A2 on Plan of Subdivision 515587S."
proprietorSummaries[].​titleDetails.​municipalitystring

The municipality of the title.

Example: "GREATER BENDIGO"
paginationobject(Pagination)required
pagination.​pageSizeintegerrequired

Total number of records per page.

pagination.​nextPageinteger

Number for the next page.

Example: 2
Response
application/json
{ "proprietorSummaries": [ {} ], "pagination": { "pageSize": 0, "nextPage": 2 } }

GET individual proprietor names

Request

Get information about the matched individual proprietor names.

Security
oauthClientCredentials
Query
lastNamestring[ 2 .. 130 ] characters^(?![.,-]+$)[a-zA-Z0-9*+=?()@`&,.!#$;\[\]"/]+...

Last name of the proprietor.

Example: lastName=Smith
givenNamestring[ 2 .. 180 ] characters^[a-zA-Z][a-zA-Z\s'-]*[a-zA-Z]$

Given name(s) of the proprietor.

Example: givenName=Mary-Anne
Headers
x-correlation-idstring(uuid)

Optional unique UUID which can assist with tracing / debugging requests.

Example: 824993ab-7366-4faa-963d-c456dec227a5
curl -i -X GET \
  'https://developer.servictoria.io/_mock/portal/rest/ddp-discovery-api/openapi/discovery/v1/proprietor-names/individual?lastName=Smith&givenName=Mary-Anne' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'x-correlation-id: 824993ab-7366-4faa-963d-c456dec227a5'

Responses

Successful Operation

Bodyapplication/json
proprietorNamesArray of objects(ProprietorNameIndividualName)required
proprietorNames[].​lastNamestring

Proprietor's last name.

proprietorNames[].​givenNamestring

Proprietor's given name. This can be empty if no given name is found or last name contains full name.

Response
application/json
{ "proprietorNames": [ {} ] }

GET company proprietor names

Request

Get information about the matched company proprietor names.

Security
oauthClientCredentials
Query
companyNamestring[ 2 .. 130 ] characters^(?![.,-]+$)[a-zA-Z0-9*+=?()@`&,.!#$;\[\]"/]+...

Company name.

Example: companyName=SERV
Headers
x-correlation-idstring(uuid)

Optional unique UUID which can assist with tracing / debugging requests.

Example: 824993ab-7366-4faa-963d-c456dec227a5
curl -i -X GET \
  'https://developer.servictoria.io/_mock/portal/rest/ddp-discovery-api/openapi/discovery/v1/proprietor-names/company?companyName=SERV' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'x-correlation-id: 824993ab-7366-4faa-963d-c456dec227a5'

Responses

Successful Operation

Bodyapplication/json
proprietorNamesArray of objects(ProprietorNameCompanyName)required
proprietorNames[].​companyNamestring

Company name.

Response
application/json
{ "proprietorNames": [ {} ] }

GET parishes

Request

Get information about all the available parishes.

Security
oauthClientCredentials
Headers
x-correlation-idstring(uuid)

Optional unique UUID which can assist with tracing / debugging requests.

Example: 824993ab-7366-4faa-963d-c456dec227a5
curl -i -X GET \
  https://developer.servictoria.io/_mock/portal/rest/ddp-discovery-api/openapi/discovery/v1/parishes \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'x-correlation-id: 824993ab-7366-4faa-963d-c456dec227a5'

Responses

Successful Operation

Bodyapplication/json
parishSummariesArray of objects(ParishSummary)required
parishSummaries[].​namestringrequired

The parish name.

Example: "WHITFIELD SOUTH"
parishSummaries[].​codestringrequired

The parish code.

Example: "1234"
Response
application/json
{ "parishSummaries": [ {} ] }

GET townships

Request

Get information about all the available townships.

Security
oauthClientCredentials
Headers
x-correlation-idstring(uuid)

Optional unique UUID which can assist with tracing / debugging requests.

Example: 824993ab-7366-4faa-963d-c456dec227a5
curl -i -X GET \
  https://developer.servictoria.io/_mock/portal/rest/ddp-discovery-api/openapi/discovery/v1/townships \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'x-correlation-id: 824993ab-7366-4faa-963d-c456dec227a5'

Responses

Successful Operation

Bodyapplication/json
townshipSummariesArray of objects(TownshipSummary)required
townshipSummaries[].​namestringrequired

The township name.

Example: "CAMPBELLTOWN TP"
townshipSummaries[].​codestringrequired

The township code.

Example: "5678"
Response
application/json
{ "townshipSummaries": [ {} ] }