Documentation
¶
Index ¶
- func Bool(b bool) param.Opt[bool]
- func BoolPtr(v bool) *bool
- func DefaultClientOptions() []option.RequestOption
- func File(rdr io.Reader, filename string, contentType string) file
- func Float(f float64) param.Opt[float64]
- func FloatPtr(v float64) *float64
- func Int(i int64) param.Opt[int64]
- func IntPtr(v int64) *int64
- func Opt[T comparable](v T) param.Opt[T]
- func Ptr[T any](v T) *T
- func String(s string) param.Opt[string]
- func StringPtr(v string) *string
- func Time(t time.Time) param.Opt[time.Time]
- func TimePtr(v time.Time) *time.Time
- type AddressGetResponse
- type AddressListParams
- type AddressListResponse
- type AddressService
- type ChallengeGetResponse
- type ChallengeService
- type Client
- func (r *Client) Delete(ctx context.Context, path string, params any, res any, ...) error
- func (r *Client) Execute(ctx context.Context, method string, path string, params any, res any, ...) error
- func (r *Client) Get(ctx context.Context, path string, params any, res any, ...) error
- func (r *Client) GetAPIInfo(ctx context.Context, opts ...option.RequestOption) (res *GetAPIInfoResponse, err error)
- func (r *Client) Patch(ctx context.Context, path string, params any, res any, ...) error
- func (r *Client) Post(ctx context.Context, path string, params any, res any, ...) error
- func (r *Client) Put(ctx context.Context, path string, params any, res any, ...) error
- type Error
- type GetAPIInfoResponse
- type HealthCheckResponse
- type HealthService
- type MetaGetResponse
- type MetaService
- type RequestKeyNewParams
- type RequestKeyNewResponse
- type RequestKeyService
- type ReverseGeocodeParams
- type ReverseGeocodeResponse
- type ReverseService
- type SearchQueryParams
- type SearchQueryResponse
- type SearchService
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DefaultClientOptions ¶
func DefaultClientOptions() []option.RequestOption
DefaultClientOptions read from the environment (ADDRESS_API_KEY, ADDRESS_BASE_URL). This should be used to initialize new clients.
func Opt ¶
func Opt[T comparable](v T) param.Opt[T]
Types ¶
type AddressGetResponse ¶
type AddressGetResponse struct {
AddressID float64 `json:"addressId" api:"required"`
FullAddress string `json:"fullAddress" api:"required"`
FullAddressNumber string `json:"fullAddressNumber" api:"required"`
FullAddressRoad string `json:"fullAddressRoad" api:"required"`
Latitude float64 `json:"latitude" api:"required"`
Longitude float64 `json:"longitude" api:"required"`
Postcode string `json:"postcode" api:"required"`
Region string `json:"region" api:"required"`
Suburb string `json:"suburb" api:"required"`
TerritorialAuthority string `json:"territorialAuthority" api:"required"`
TownCity string `json:"townCity" api:"required"`
// JSON contains metadata for fields, check presence with [respjson.Field.Valid].
JSON struct {
AddressID respjson.Field
FullAddress respjson.Field
FullAddressNumber respjson.Field
FullAddressRoad respjson.Field
Latitude respjson.Field
Longitude respjson.Field
Postcode respjson.Field
Region respjson.Field
Suburb respjson.Field
TerritorialAuthority respjson.Field
TownCity respjson.Field
ExtraFields map[string]respjson.Field
// contains filtered or unexported fields
} `json:"-"`
}
func (AddressGetResponse) RawJSON ¶
func (r AddressGetResponse) RawJSON() string
Returns the unmodified JSON received from the API
func (*AddressGetResponse) UnmarshalJSON ¶
func (r *AddressGetResponse) UnmarshalJSON(data []byte) error
type AddressListParams ¶
type AddressListParams struct {
Bbox param.Opt[string] `query:"bbox,omitzero" json:"-"`
Format param.Opt[string] `query:"format,omitzero" json:"-"`
Limit param.Opt[string] `query:"limit,omitzero" json:"-"`
Offset param.Opt[string] `query:"offset,omitzero" json:"-"`
RoadName param.Opt[string] `query:"road_name,omitzero" json:"-"`
SuburbLocality param.Opt[string] `query:"suburb_locality,omitzero" json:"-"`
TownCity param.Opt[string] `query:"town_city,omitzero" json:"-"`
// contains filtered or unexported fields
}
func (AddressListParams) URLQuery ¶
func (r AddressListParams) URLQuery() (v url.Values, err error)
URLQuery serializes AddressListParams's query parameters as `url.Values`.
type AddressListResponse ¶
type AddressListResponse struct {
AddressID float64 `json:"addressId" api:"required"`
FullAddress string `json:"fullAddress" api:"required"`
FullAddressNumber string `json:"fullAddressNumber" api:"required"`
FullAddressRoad string `json:"fullAddressRoad" api:"required"`
Latitude float64 `json:"latitude" api:"required"`
Longitude float64 `json:"longitude" api:"required"`
Postcode string `json:"postcode" api:"required"`
Region string `json:"region" api:"required"`
Suburb string `json:"suburb" api:"required"`
TerritorialAuthority string `json:"territorialAuthority" api:"required"`
TownCity string `json:"townCity" api:"required"`
// JSON contains metadata for fields, check presence with [respjson.Field.Valid].
JSON struct {
AddressID respjson.Field
FullAddress respjson.Field
FullAddressNumber respjson.Field
FullAddressRoad respjson.Field
Latitude respjson.Field
Longitude respjson.Field
Postcode respjson.Field
Region respjson.Field
Suburb respjson.Field
TerritorialAuthority respjson.Field
TownCity respjson.Field
ExtraFields map[string]respjson.Field
// contains filtered or unexported fields
} `json:"-"`
}
func (AddressListResponse) RawJSON ¶
func (r AddressListResponse) RawJSON() string
Returns the unmodified JSON received from the API
func (*AddressListResponse) UnmarshalJSON ¶
func (r *AddressListResponse) UnmarshalJSON(data []byte) error
type AddressService ¶
type AddressService struct {
// contains filtered or unexported fields
}
Look up and list NZ addresses with filtering, pagination, and address ID lookup.
AddressService contains methods and other services that help with interacting with the address API.
Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewAddressService method instead.
func NewAddressService ¶
func NewAddressService(opts ...option.RequestOption) (r AddressService)
NewAddressService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.
func (*AddressService) Get ¶
func (r *AddressService) Get(ctx context.Context, id string, opts ...option.RequestOption) (res *AddressGetResponse, err error)
Retrieve a single address record by its LINZ address_id.
The address_id is a unique identifier assigned by Land Information New Zealand (LINZ). This is the canonical way to retrieve a specific address when you know its ID.
**Response formats:**
- Default: Full address object with all LINZ attributes - Simple (format=simple): Compact representation with essential fields only
**Example:** `/v1/addresses/123456?format=simple`
func (*AddressService) List ¶
func (r *AddressService) List(ctx context.Context, query AddressListParams, opts ...option.RequestOption) (res *[]AddressListResponse, err error)
Retrieve a paginated list of addresses with optional filtering by location.
**Filtering:**
- `town_city`: Filter by town/city name (e.g., "Wellington")
- `suburb_locality`: Filter by suburb/locality (e.g., "Te Aro")
- `road_name`: Filter by road/street name (e.g., "Lambton Quay")
- `bbox`: Bounding box filter as comma-separated coordinates (min_lon,min_lat,max_lon,max_lat)
**Pagination:**
- `limit`: Maximum number of results (default: 100, max: 1000) - `offset`: Number of results to skip
**Example:** `/v1/addresses?town_city=Wellington&limit=50`
type ChallengeGetResponse ¶
type ChallengeGetResponse struct {
Token string `json:"token" api:"required"`
Challenge string `json:"challenge" api:"required"`
Difficulty float64 `json:"difficulty" api:"required"`
ExpiresAt float64 `json:"expiresAt" api:"required"`
// JSON contains metadata for fields, check presence with [respjson.Field.Valid].
JSON struct {
Token respjson.Field
Challenge respjson.Field
Difficulty respjson.Field
ExpiresAt respjson.Field
ExtraFields map[string]respjson.Field
// contains filtered or unexported fields
} `json:"-"`
}
func (ChallengeGetResponse) RawJSON ¶
func (r ChallengeGetResponse) RawJSON() string
Returns the unmodified JSON received from the API
func (*ChallengeGetResponse) UnmarshalJSON ¶
func (r *ChallengeGetResponse) UnmarshalJSON(data []byte) error
type ChallengeService ¶
type ChallengeService struct {
// contains filtered or unexported fields
}
Health, API information, and API key onboarding endpoints that do not require authentication.
ChallengeService contains methods and other services that help with interacting with the address API.
Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewChallengeService method instead.
func NewChallengeService ¶
func NewChallengeService(opts ...option.RequestOption) (r ChallengeService)
NewChallengeService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.
func (*ChallengeService) Get ¶
func (r *ChallengeService) Get(ctx context.Context, opts ...option.RequestOption) (res *ChallengeGetResponse, err error)
Returns a cryptographic challenge for proof-of-work based API key registration. The challenge must be solved by finding a nonce that, when combined with the challenge data, produces a hash below the difficulty threshold. Use this challenge with the POST /request-key endpoint to obtain an API key.
type Client ¶
type Client struct {
// Health, API information, and API key onboarding endpoints that do not require
// authentication.
Health HealthService
// Health, API information, and API key onboarding endpoints that do not require
// authentication.
Challenge ChallengeService
// Health, API information, and API key onboarding endpoints that do not require
// authentication.
RequestKey RequestKeyService
// Look up and list NZ addresses with filtering, pagination, and address ID lookup.
Addresses AddressService
// Full-text address search and reverse geocoding powered by FTS5 with abbreviation
// expansion.
Search SearchService
// Full-text address search and reverse geocoding powered by FTS5 with abbreviation
// expansion.
Reverse ReverseService
// Dataset version, ingestion status, and service metadata.
Meta MetaService
// contains filtered or unexported fields
}
Client creates a struct with services and top level methods that help with interacting with the address API. You should not instantiate this client directly, and instead use the NewClient method instead.
func NewClient ¶
func NewClient(opts ...option.RequestOption) (r Client)
NewClient generates a new client with the default option read from the environment (ADDRESS_API_KEY, ADDRESS_BASE_URL). The option passed in as arguments are applied after these default arguments, and all option will be passed down to the services and requests that this client makes.
func (*Client) Delete ¶
func (r *Client) Delete(ctx context.Context, path string, params any, res any, opts ...option.RequestOption) error
Delete makes a DELETE request with the given URL, params, and optionally deserializes to a response. See [Execute] documentation on the params and response.
func (*Client) Execute ¶
func (r *Client) Execute(ctx context.Context, method string, path string, params any, res any, opts ...option.RequestOption) error
Execute makes a request with the given context, method, URL, request params, response, and request options. This is useful for hitting undocumented endpoints while retaining the base URL, auth, retries, and other options from the client.
If a byte slice or an io.Reader is supplied to params, it will be used as-is for the request body.
The params is by default serialized into the body using encoding/json. If your type implements a MarshalJSON function, it will be used instead to serialize the request. If a URLQuery method is implemented, the returned url.Values will be used as query strings to the url.
If your params struct uses param.Field, you must provide either [MarshalJSON], [URLQuery], and/or [MarshalForm] functions. It is undefined behavior to use a struct uses param.Field without specifying how it is serialized.
Any "…Params" object defined in this library can be used as the request argument. Note that 'path' arguments will not be forwarded into the url.
The response body will be deserialized into the res variable, depending on its type:
- A pointer to a *http.Response is populated by the raw response.
- A pointer to a byte array will be populated with the contents of the request body.
- A pointer to any other type uses this library's default JSON decoding, which respects UnmarshalJSON if it is defined on the type.
- A nil value will not read the response body.
For even greater flexibility, see option.WithResponseInto and option.WithResponseBodyInto.
func (*Client) Get ¶
func (r *Client) Get(ctx context.Context, path string, params any, res any, opts ...option.RequestOption) error
Get makes a GET request with the given URL, params, and optionally deserializes to a response. See [Execute] documentation on the params and response.
func (*Client) GetAPIInfo ¶
func (r *Client) GetAPIInfo(ctx context.Context, opts ...option.RequestOption) (res *GetAPIInfoResponse, err error)
Returns basic API information including available endpoints and version details. This is the entry point for discovering the API capabilities.
func (*Client) Patch ¶
func (r *Client) Patch(ctx context.Context, path string, params any, res any, opts ...option.RequestOption) error
Patch makes a PATCH request with the given URL, params, and optionally deserializes to a response. See [Execute] documentation on the params and response.
type GetAPIInfoResponse ¶
type GetAPIInfoResponse struct {
Endpoints []string `json:"endpoints" api:"required"`
Name string `json:"name" api:"required"`
Version string `json:"version" api:"required"`
// JSON contains metadata for fields, check presence with [respjson.Field.Valid].
JSON struct {
Endpoints respjson.Field
Name respjson.Field
Version respjson.Field
ExtraFields map[string]respjson.Field
// contains filtered or unexported fields
} `json:"-"`
}
func (GetAPIInfoResponse) RawJSON ¶
func (r GetAPIInfoResponse) RawJSON() string
Returns the unmodified JSON received from the API
func (*GetAPIInfoResponse) UnmarshalJSON ¶
func (r *GetAPIInfoResponse) UnmarshalJSON(data []byte) error
type HealthCheckResponse ¶
type HealthCheckResponse struct {
Status string `json:"status" api:"required"`
Timestamp string `json:"timestamp" api:"required"`
// JSON contains metadata for fields, check presence with [respjson.Field.Valid].
JSON struct {
Status respjson.Field
Timestamp respjson.Field
ExtraFields map[string]respjson.Field
// contains filtered or unexported fields
} `json:"-"`
}
func (HealthCheckResponse) RawJSON ¶
func (r HealthCheckResponse) RawJSON() string
Returns the unmodified JSON received from the API
func (*HealthCheckResponse) UnmarshalJSON ¶
func (r *HealthCheckResponse) UnmarshalJSON(data []byte) error
type HealthService ¶
type HealthService struct {
// contains filtered or unexported fields
}
Health, API information, and API key onboarding endpoints that do not require authentication.
HealthService contains methods and other services that help with interacting with the address API.
Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewHealthService method instead.
func NewHealthService ¶
func NewHealthService(opts ...option.RequestOption) (r HealthService)
NewHealthService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.
func (*HealthService) Check ¶
func (r *HealthService) Check(ctx context.Context, opts ...option.RequestOption) (res *HealthCheckResponse, err error)
Returns a simple OK response to verify the API is operational. This endpoint does not require authentication and is useful for monitoring and load balancer health checks.
type MetaGetResponse ¶
type MetaGetResponse struct {
LastUpdated string `json:"lastUpdated" api:"required"`
TotalAddresses float64 `json:"totalAddresses" api:"required"`
Version string `json:"version" api:"required"`
// JSON contains metadata for fields, check presence with [respjson.Field.Valid].
JSON struct {
LastUpdated respjson.Field
TotalAddresses respjson.Field
Version respjson.Field
ExtraFields map[string]respjson.Field
// contains filtered or unexported fields
} `json:"-"`
}
func (MetaGetResponse) RawJSON ¶
func (r MetaGetResponse) RawJSON() string
Returns the unmodified JSON received from the API
func (*MetaGetResponse) UnmarshalJSON ¶
func (r *MetaGetResponse) UnmarshalJSON(data []byte) error
type MetaService ¶
type MetaService struct {
// contains filtered or unexported fields
}
Dataset version, ingestion status, and service metadata.
MetaService contains methods and other services that help with interacting with the address API.
Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewMetaService method instead.
func NewMetaService ¶
func NewMetaService(opts ...option.RequestOption) (r MetaService)
NewMetaService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.
func (*MetaService) Get ¶
func (r *MetaService) Get(ctx context.Context, opts ...option.RequestOption) (res *MetaGetResponse, err error)
Returns metadata about the LINZ NZ Addresses dataset including:
- Dataset version identifier - Last ingestion timestamp - Total record count - Data source information
This endpoint is useful for client applications that need to verify data currency or display dataset attribution.
type RequestKeyNewParams ¶
type RequestKeyNewParams struct {
Token string `json:"token" api:"required"`
Challenge string `json:"challenge" api:"required"`
Nonce float64 `json:"nonce" api:"required"`
// contains filtered or unexported fields
}
func (RequestKeyNewParams) MarshalJSON ¶
func (r RequestKeyNewParams) MarshalJSON() (data []byte, err error)
func (*RequestKeyNewParams) UnmarshalJSON ¶
func (r *RequestKeyNewParams) UnmarshalJSON(data []byte) error
type RequestKeyNewResponse ¶
type RequestKeyNewResponse struct {
APIKey string `json:"apiKey" api:"required"`
RateLimit float64 `json:"rateLimit" api:"required"`
// JSON contains metadata for fields, check presence with [respjson.Field.Valid].
JSON struct {
APIKey respjson.Field
RateLimit respjson.Field
ExtraFields map[string]respjson.Field
// contains filtered or unexported fields
} `json:"-"`
}
func (RequestKeyNewResponse) RawJSON ¶
func (r RequestKeyNewResponse) RawJSON() string
Returns the unmodified JSON received from the API
func (*RequestKeyNewResponse) UnmarshalJSON ¶
func (r *RequestKeyNewResponse) UnmarshalJSON(data []byte) error
type RequestKeyService ¶
type RequestKeyService struct {
// contains filtered or unexported fields
}
Health, API information, and API key onboarding endpoints that do not require authentication.
RequestKeyService contains methods and other services that help with interacting with the address API.
Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewRequestKeyService method instead.
func NewRequestKeyService ¶
func NewRequestKeyService(opts ...option.RequestOption) (r RequestKeyService)
NewRequestKeyService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.
func (*RequestKeyService) New ¶
func (r *RequestKeyService) New(ctx context.Context, body RequestKeyNewParams, opts ...option.RequestOption) (res *RequestKeyNewResponse, err error)
Submit a proof-of-work solution to obtain an API key. The request must include a valid nonce that solves the challenge previously obtained from GET /challenge. This prevents automated abuse while allowing legitimate users to access the API.
type ReverseGeocodeParams ¶
type ReverseGeocodeParams struct {
Point string `query:"point" api:"required" json:"-"`
Format param.Opt[string] `query:"format,omitzero" json:"-"`
Limit param.Opt[string] `query:"limit,omitzero" json:"-"`
// contains filtered or unexported fields
}
func (ReverseGeocodeParams) URLQuery ¶
func (r ReverseGeocodeParams) URLQuery() (v url.Values, err error)
URLQuery serializes ReverseGeocodeParams's query parameters as `url.Values`.
type ReverseGeocodeResponse ¶
type ReverseGeocodeResponse struct {
AddressID float64 `json:"addressId" api:"required"`
FullAddress string `json:"fullAddress" api:"required"`
FullAddressNumber string `json:"fullAddressNumber" api:"required"`
FullAddressRoad string `json:"fullAddressRoad" api:"required"`
Latitude float64 `json:"latitude" api:"required"`
Longitude float64 `json:"longitude" api:"required"`
Postcode string `json:"postcode" api:"required"`
Region string `json:"region" api:"required"`
Suburb string `json:"suburb" api:"required"`
TerritorialAuthority string `json:"territorialAuthority" api:"required"`
TownCity string `json:"townCity" api:"required"`
// JSON contains metadata for fields, check presence with [respjson.Field.Valid].
JSON struct {
AddressID respjson.Field
FullAddress respjson.Field
FullAddressNumber respjson.Field
FullAddressRoad respjson.Field
Latitude respjson.Field
Longitude respjson.Field
Postcode respjson.Field
Region respjson.Field
Suburb respjson.Field
TerritorialAuthority respjson.Field
TownCity respjson.Field
ExtraFields map[string]respjson.Field
// contains filtered or unexported fields
} `json:"-"`
}
func (ReverseGeocodeResponse) RawJSON ¶
func (r ReverseGeocodeResponse) RawJSON() string
Returns the unmodified JSON received from the API
func (*ReverseGeocodeResponse) UnmarshalJSON ¶
func (r *ReverseGeocodeResponse) UnmarshalJSON(data []byte) error
type ReverseService ¶
type ReverseService struct {
// contains filtered or unexported fields
}
Full-text address search and reverse geocoding powered by FTS5 with abbreviation expansion.
ReverseService contains methods and other services that help with interacting with the address API.
Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewReverseService method instead.
func NewReverseService ¶
func NewReverseService(opts ...option.RequestOption) (r ReverseService)
NewReverseService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.
func (*ReverseService) Geocode ¶
func (r *ReverseService) Geocode(ctx context.Context, query ReverseGeocodeParams, opts ...option.RequestOption) (res *[]ReverseGeocodeResponse, err error)
Find the nearest addresses to given geographic coordinates (reverse geocoding).
**Query parameters:**
- `lat`: Latitude in decimal degrees (required) - `lng`: Longitude in decimal degrees (required) - `limit`: Maximum number of results (default: 10, max: 100) - `format`: Response format - "full" or "simple"
**Distance calculation:** Results are sorted by distance from the provided coordinates, calculated using the Haversine formula for spherical distance on Earth.
**Example:** `/v1/reverse?lat=-41.2865&lng=174.7762&limit=5`
type SearchQueryParams ¶
type SearchQueryParams struct {
Q string `query:"q" api:"required" json:"-"`
Bbox param.Opt[string] `query:"bbox,omitzero" json:"-"`
Format param.Opt[string] `query:"format,omitzero" json:"-"`
Limit param.Opt[string] `query:"limit,omitzero" json:"-"`
Polygon param.Opt[string] `query:"polygon,omitzero" json:"-"`
// contains filtered or unexported fields
}
func (SearchQueryParams) URLQuery ¶
func (r SearchQueryParams) URLQuery() (v url.Values, err error)
URLQuery serializes SearchQueryParams's query parameters as `url.Values`.
type SearchQueryResponse ¶
type SearchQueryResponse struct {
AddressID float64 `json:"addressId" api:"required"`
FullAddress string `json:"fullAddress" api:"required"`
FullAddressNumber string `json:"fullAddressNumber" api:"required"`
FullAddressRoad string `json:"fullAddressRoad" api:"required"`
Latitude float64 `json:"latitude" api:"required"`
Longitude float64 `json:"longitude" api:"required"`
Postcode string `json:"postcode" api:"required"`
Region string `json:"region" api:"required"`
Suburb string `json:"suburb" api:"required"`
TerritorialAuthority string `json:"territorialAuthority" api:"required"`
TownCity string `json:"townCity" api:"required"`
// JSON contains metadata for fields, check presence with [respjson.Field.Valid].
JSON struct {
AddressID respjson.Field
FullAddress respjson.Field
FullAddressNumber respjson.Field
FullAddressRoad respjson.Field
Latitude respjson.Field
Longitude respjson.Field
Postcode respjson.Field
Region respjson.Field
Suburb respjson.Field
TerritorialAuthority respjson.Field
TownCity respjson.Field
ExtraFields map[string]respjson.Field
// contains filtered or unexported fields
} `json:"-"`
}
func (SearchQueryResponse) RawJSON ¶
func (r SearchQueryResponse) RawJSON() string
Returns the unmodified JSON received from the API
func (*SearchQueryResponse) UnmarshalJSON ¶
func (r *SearchQueryResponse) UnmarshalJSON(data []byte) error
type SearchService ¶
type SearchService struct {
// contains filtered or unexported fields
}
Full-text address search and reverse geocoding powered by FTS5 with abbreviation expansion.
SearchService contains methods and other services that help with interacting with the address API.
Note, unlike clients, this service does not read variables from the environment automatically. You should not instantiate this service directly, and instead use the NewSearchService method instead.
func NewSearchService ¶
func NewSearchService(opts ...option.RequestOption) (r SearchService)
NewSearchService generates a new service that applies the given options to each request. These options are applied after the parent client's options (if there is one), and before any request-specific options.
func (*SearchService) Query ¶
func (r *SearchService) Query(ctx context.Context, query SearchQueryParams, opts ...option.RequestOption) (res *[]SearchQueryResponse, err error)
Search addresses using full-text search with intelligent query processing.
**Search features:**
- FTS5 full-text search with ranking by relevance - Automatic abbreviation expansion (e.g., "st" → "street", "rd" → "road") - Fuzzy matching fallback for typos and variations - Address component matching (street, suburb, city, postcode)
**Query parameters:**
- `q`: Search query string (required) - `limit`: Maximum results (default: 100, max: 1000) - `format`: Response format - "full" or "simple"
**Examples:**
- `/v1/search?q=lambton+quay` - Search for addresses on Lambton Quay - `/v1/search?q=123+quay+st+auckland` - Search for specific address - `/v1/search?q=wlg&limit=20` - Abbreviation expansion
Source Files
¶
Directories
¶
| Path | Synopsis |
|---|---|
|
encoding/json
Package json implements encoding and decoding of JSON as defined in RFC 7159.
|
Package json implements encoding and decoding of JSON as defined in RFC 7159. |
|
encoding/json/shims
This package provides shims over Go 1.2{2,3} APIs which are missing from Go 1.22, and used by the Go 1.24 encoding/json package.
|
This package provides shims over Go 1.2{2,3} APIs which are missing from Go 1.22, and used by the Go 1.24 encoding/json package. |
|
packages
|
|
|
shared
|
|