API

Address

A profile's address: create or update, list, or get one.

Operations

Every route this entity exposes. Each route links to its own reference on this page.

Method Route SDK operation Returns
POST /addresses create OK - Address successfully created or updated
GET /addresses list OK - Successfully retrieved addresses
GET /addresses/{addressId} load OK - Successfully retrieved the address

Examples

One example per SDK, generated from the API model. The argument names are the parameters and fields of this entity, and the values are placeholders. The examples are not compiled or executed.

Golang

Construct client as shown in the Golang setup, then call the operations:

addresss, err := client.Address(nil).List(nil, nil)
if err != nil {
    panic(err)
}
fmt.Println(addresss)
address, err := client.Address(nil).Load(map[string]any{"id": 1}, nil)
if err != nil {
    panic(err)
}
fmt.Println(address)
created, err := client.Address(nil).Create(map[string]any{"details": map[string]any{}, "profile": 1}, nil)
if err != nil {
    panic(err)
}
fmt.Println(created)

Lua

Construct client as shown in the Lua setup, then call the operations:

local addresss, err = client:Address():list()
local address, err = client:Address():load({ id = 1 })
local created, err = client:Address():create({ details = {}, profile = 1 })

PHP

Construct client as shown in the PHP setup, then call the operations:

$addresss = $client->Address()->list();
$address = $client->Address()->load(["id" => 1]);
$created = $client->Address()->create(["details" => [], "profile" => 1]);

Python

Construct client as shown in the Python setup, then call the operations:

addresss = client.Address().list()
address = client.Address().load({"id": 1})
created = client.Address().create({ "details": {}, "profile": 1 })

Ruby

Construct client as shown in the Ruby setup, then call the operations:

addresss = client.Address.list()
address = client.Address.load({ "id" => 1 })
created = client.Address.create({ "details" => {}, "profile" => 1 })

TypeScript

Construct client as shown in the TypeScript setup, then call the operations:

const addresss = await client.Address().list()
const address = await client.Address().load({ id: 1 })
const created = await client.Address().create({ details: {}, profile: 1 })

Fields

Field Type Required Description
details object No Address details.
id integer No Address ID.
profile integer No User profile ID.

create

POST /addresses

Operation ID: addressCreate.

Authentication: bearer token (UserToken) or bearer token (PersonalToken).

Parameters

Parameter In Type Required Description
X-External-Correlation-Id header string (uuid) No Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. Learn more.

Request body

application/json

Property Type Required Description
details object Yes Address details.
details.city string Yes City name.
details.country string Yes Country code (ISO 3166-1 alpha-2).
details.firstLine string Yes Address line: street, house, apartment.
details.occupations array of object No User occupations. Required for CA, IN, JP, ID, IL, MX, and within the US for state NM.
details.occupations[].code string No User occupation - any value permitted.
details.occupations[].format enum: FREE_FORM No Occupation type - always FREE_FORM.
details.postCode string Yes Postal / zip code (max 30 characters).
details.state string No State code. Required if country is US, CA, BR, or AU.
profile integer (int64) Yes User profile ID.

Responses

200: OK - Address successfully created or updated

application/json

Property Type Required Description
details object No Address details.
details.city string No City name.
details.country string No Country code (ISO 3166-2 Country Code).
details.firstLine string No Address line: street, house, apartment.
details.occupations array of object No User occupations. Required for CA, IN, JP, ID, IL, MX, and within the US for state NM.
details.occupations[].code string No User occupation - any value permitted.
details.occupations[].format enum: FREE_FORM No Occupation type - always FREE_FORM.
details.postCode string No Postal or zip code (max 30 characters).
details.state string No State code. Required if country is US, CA, BR, or AU.
id integer (int64) No Address ID.
profile integer (int64) No User profile ID.

Example response:

{
  "details": {
    "city": "Phoenix",
    "country": "US",
    "firstLine": "50 Sunflower Ave",
    "occupations": [
      {
        "code": "Software Engineer",
        "format": "FREE_FORM"
      }
    ],
    "postCode": "10025",
    "state": "AZ"
  },
  "id": 10000001,
  "profile": 12345678
}
429: Rate limit exceeded. Retry after the number of seconds specified in the Retry-After header

application/json

The response is object.

list

GET /addresses

Operation ID: addressList.

Authentication: bearer token (UserToken) or bearer token (PersonalToken).

Parameters

Parameter In Type Required Description
profile query integer (int64) No The profile ID to list addresses for.
X-External-Correlation-Id header string (uuid) No Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. Learn more.

Responses

200: OK - Successfully retrieved addresses

application/json

Property Type Required Description
[].details object No Address details.
[].details.city string No City name.
[].details.country string No Country code (ISO 3166-2 Country Code).
[].details.firstLine string No Address line: street, house, apartment.
[].details.occupations array of object No User occupations. Required for CA, IN, JP, ID, IL, MX, and within the US for state NM.
[].details.occupations[].code string No User occupation - any value permitted.
[].details.occupations[].format enum: FREE_FORM No Occupation type - always FREE_FORM.
[].details.postCode string No Postal or zip code (max 30 characters).
[].details.state string No State code. Required if country is US, CA, BR, or AU.
[].id integer (int64) No Address ID.
[].profile integer (int64) No User profile ID.

Example response:

[
  {
    "details": {
      "city": "Phoenix",
      "country": "US",
      "firstLine": "50 Sunflower Ave",
      "occupations": [
        {
          "code": "Software Engineer",
          "format": "FREE_FORM"
        }
      ],
      "postCode": "10025",
      "state": "AZ"
    },
    "id": 10000001,
    "profile": 12345678
  }
]
429: Rate limit exceeded. Retry after the number of seconds specified in the Retry-After header

application/json

The response is object.

load

GET /addresses/{addressId}

Operation ID: addressGet.

Authentication: bearer token (UserToken) or bearer token (PersonalToken).

Parameters

Parameter In Type Required Description
addressId path integer (int64) Yes The unique identifier of the address.
X-External-Correlation-Id header string (uuid) No Optional UUID for correlating requests across systems. If provided, Wise echoes it back in the response. Maximum 36 characters. Learn more.

Responses

200: OK - Successfully retrieved the address

application/json

Property Type Required Description
details object No Address details.
details.city string No City name.
details.country string No Country code (ISO 3166-2 Country Code).
details.firstLine string No Address line: street, house, apartment.
details.occupations array of object No User occupations. Required for CA, IN, JP, ID, IL, MX, and within the US for state NM.
details.occupations[].code string No User occupation - any value permitted.
details.occupations[].format enum: FREE_FORM No Occupation type - always FREE_FORM.
details.postCode string No Postal or zip code (max 30 characters).
details.state string No State code. Required if country is US, CA, BR, or AU.
id integer (int64) No Address ID.
profile integer (int64) No User profile ID.

Example response:

{
  "details": {
    "city": "Phoenix",
    "country": "US",
    "firstLine": "50 Sunflower Ave",
    "occupations": [
      {
        "code": "Software Engineer",
        "format": "FREE_FORM"
      }
    ],
    "postCode": "10025",
    "state": "AZ"
  },
  "id": 10000001,
  "profile": 12345678
}
429: Rate limit exceeded. Retry after the number of seconds specified in the Retry-After header

application/json

The response is object.