GET /v3/user/addresses
GET
/v3/user/addresses
const url = 'https://api-ha-prod-p8.handbid.dev/v3/user/addresses?limit=50';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api-ha-prod-p8.handbid.dev/v3/user/addresses?limit=50' \ --header 'Authorization: Bearer <token>'NEW (HAN-2041, 2026-06-05). The authenticated user’s structured address book. Auth required; self-scoped. N+1-free (relations eager-loaded). Sorted primary first, then id ascending.
Response (200): a JSON array of address objects (not wrapped).
| Field | Type | Notes |
|---|---|---|
addressId | int | Use as {id} for PUT / DELETE. |
googlePlacesId | string | null | |
street1 | string | null | |
street2 | string | null | |
city | string | null | |
provinceId | int | null | |
province | string | null | Region display name. |
postalCode | string | null | |
countryId | int | null | |
country | string | null | Country display name. |
addressType | string | null | e.g. Home, Work. |
isPrimary | bool | The primary address = the shipping address. |
fullAddress | string | Formatted single-line address (shared AddressUtil). |
dateCreated | string | |
dateUpdated | string |
Params: limit (default 50, 1-100), offset (default 0).
Errors: 401 anonymous.
Cache: per (userId, limit, offset), 15s TTL, tag V3CacheTags::userAddresses(userId) — dropped on any of the user’s address writes.
Rate limit: userAddresses.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Query Parameters
Section titled “Query Parameters ” limit
integer
Default 50, range 1-100.
Example
50Responses
Section titled “ Responses ”Successful response
Media type application/json