Skip to content
This repository was archived by the owner on Jan 14, 2026. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.

## [Unreleased]

### Added

- `formService.searchPointV3Addresses`
- `formService.getPointV3Address`

## [23.4.2] - 2025-10-26

### Fixed
Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

79 changes: 79 additions & 0 deletions src/services/integration-elements.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import {
SubmissionTypes,
CPHCMSTypes,
} from '@oneblink/types'

import OneBlinkAppsError from '../services/errors/oneBlinkAppsError'
import { isOffline } from '../offline-service'
import {
Expand Down Expand Up @@ -305,6 +306,84 @@ export async function getPointCadastralParcel(
}
}

/**
* Search for Point addresses v3 based on a partial address.
*
* #### Example
*
* -
*
* Const formId = 1 const result = await
* formService.searchPointV3Addresses(formId, { address: '123 N', maxResults: 10
* stateFilter: 'NSW' })
*
* @param formId
* @param queryParams
* @param abortSignal
* @returns
*/
export async function searchPointV3Addresses(
formId: number,
queryParams: {
address: string
maxResults?: number
stateFilter?: string
dataset?: string
excludeAliases?: boolean
},
abortSignal?: AbortSignal,
): Promise<PointTypes.PointAddressV3SearchResponse> {
try {
return await searchRequest(
`${tenants.current.apiOrigin}/forms/${formId}/point/v3/addresses`,
queryParams,
abortSignal,
)
} catch (err) {
throw generateGenericError(err, abortSignal)
}
}

/**
* Get the details for a single Point address based on the Id of a Point address
* resource.
*
* #### Example
*
* ```js
* const formId = 1
* const result = await formService.getPointV3Address(formId, {
* addressId: 'ABC123',
* additionalProperties: 'parcelBundle,localGovernmentArea',
* 'Accept-Crs': '<https://www.opengis.net/def/crs/EPSG/0/7844>',
* })
* ```
*
* @param formId
* @param queryParams
* @param abortSignal
* @returns
*/
export async function getPointV3Address(
formId: number,
queryParams: {
addressId: string
additionalProperties?: string
'Accept-Crs'?: string
},
abortSignal?: AbortSignal,
): Promise<PointTypes.PointAddressV3GetAddressDetailsResponse> {
try {
return await searchRequest(
`${tenants.current.apiOrigin}/forms/${formId}/point/v3/address`,
queryParams,
abortSignal,
)
} catch (err) {
throw generateGenericError(err, abortSignal)
}
}

/**
* Search for street names in Civica
*
Expand Down