Update address
curl --request PATCH \
--url https://api.enterprise.sandbox.uphold.com/core/kyc/processes/address \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"input": {
"address": {
"subdivision": "GB-MAN",
"city": "Manchester",
"line1": "1 High Street",
"line2": "Northern Quarter",
"postalCode": "M4 1AA"
}
}
}
'import requests
url = "https://api.enterprise.sandbox.uphold.com/core/kyc/processes/address"
payload = { "input": { "address": {
"subdivision": "GB-MAN",
"city": "Manchester",
"line1": "1 High Street",
"line2": "Northern Quarter",
"postalCode": "M4 1AA"
} } }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
input: {
address: {
subdivision: 'GB-MAN',
city: 'Manchester',
line1: '1 High Street',
line2: 'Northern Quarter',
postalCode: 'M4 1AA'
}
}
})
};
fetch('https://api.enterprise.sandbox.uphold.com/core/kyc/processes/address', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.enterprise.sandbox.uphold.com/core/kyc/processes/address",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'input' => [
'address' => [
'subdivision' => 'GB-MAN',
'city' => 'Manchester',
'line1' => '1 High Street',
'line2' => 'Northern Quarter',
'postalCode' => 'M4 1AA'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.enterprise.sandbox.uphold.com/core/kyc/processes/address"
payload := strings.NewReader("{\n \"input\": {\n \"address\": {\n \"subdivision\": \"GB-MAN\",\n \"city\": \"Manchester\",\n \"line1\": \"1 High Street\",\n \"line2\": \"Northern Quarter\",\n \"postalCode\": \"M4 1AA\"\n }\n }\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://api.enterprise.sandbox.uphold.com/core/kyc/processes/address")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"input\": {\n \"address\": {\n \"subdivision\": \"GB-MAN\",\n \"city\": \"Manchester\",\n \"line1\": \"1 High Street\",\n \"line2\": \"Northern Quarter\",\n \"postalCode\": \"M4 1AA\"\n }\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.enterprise.sandbox.uphold.com/core/kyc/processes/address")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"input\": {\n \"address\": {\n \"subdivision\": \"GB-MAN\",\n \"city\": \"Manchester\",\n \"line1\": \"1 High Street\",\n \"line2\": \"Northern Quarter\",\n \"postalCode\": \"M4 1AA\"\n }\n }\n}"
response = http.request(request)
puts response.read_body{
"address": {
"code": "address",
"status": "ok",
"verification": {
"model": "none",
"method": "manual",
"dependencies": []
},
"input": {
"address": {
"country": "GB",
"subdivision": "GB-MAN",
"city": "Manchester",
"line1": "1 High Street",
"line2": "Northern Quarter",
"postalCode": "M4 1AA"
}
}
}
}KYC
Update address
Update the address process for a user.
PATCH
/
core
/
kyc
/
processes
/
address
Update address
curl --request PATCH \
--url https://api.enterprise.sandbox.uphold.com/core/kyc/processes/address \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"input": {
"address": {
"subdivision": "GB-MAN",
"city": "Manchester",
"line1": "1 High Street",
"line2": "Northern Quarter",
"postalCode": "M4 1AA"
}
}
}
'import requests
url = "https://api.enterprise.sandbox.uphold.com/core/kyc/processes/address"
payload = { "input": { "address": {
"subdivision": "GB-MAN",
"city": "Manchester",
"line1": "1 High Street",
"line2": "Northern Quarter",
"postalCode": "M4 1AA"
} } }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
input: {
address: {
subdivision: 'GB-MAN',
city: 'Manchester',
line1: '1 High Street',
line2: 'Northern Quarter',
postalCode: 'M4 1AA'
}
}
})
};
fetch('https://api.enterprise.sandbox.uphold.com/core/kyc/processes/address', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.enterprise.sandbox.uphold.com/core/kyc/processes/address",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PATCH",
CURLOPT_POSTFIELDS => json_encode([
'input' => [
'address' => [
'subdivision' => 'GB-MAN',
'city' => 'Manchester',
'line1' => '1 High Street',
'line2' => 'Northern Quarter',
'postalCode' => 'M4 1AA'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.enterprise.sandbox.uphold.com/core/kyc/processes/address"
payload := strings.NewReader("{\n \"input\": {\n \"address\": {\n \"subdivision\": \"GB-MAN\",\n \"city\": \"Manchester\",\n \"line1\": \"1 High Street\",\n \"line2\": \"Northern Quarter\",\n \"postalCode\": \"M4 1AA\"\n }\n }\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.patch("https://api.enterprise.sandbox.uphold.com/core/kyc/processes/address")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"input\": {\n \"address\": {\n \"subdivision\": \"GB-MAN\",\n \"city\": \"Manchester\",\n \"line1\": \"1 High Street\",\n \"line2\": \"Northern Quarter\",\n \"postalCode\": \"M4 1AA\"\n }\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.enterprise.sandbox.uphold.com/core/kyc/processes/address")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Patch.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"input\": {\n \"address\": {\n \"subdivision\": \"GB-MAN\",\n \"city\": \"Manchester\",\n \"line1\": \"1 High Street\",\n \"line2\": \"Northern Quarter\",\n \"postalCode\": \"M4 1AA\"\n }\n }\n}"
response = http.request(request)
puts response.read_body{
"address": {
"code": "address",
"status": "ok",
"verification": {
"model": "none",
"method": "manual",
"dependencies": []
},
"input": {
"address": {
"country": "GB",
"subdivision": "GB-MAN",
"city": "Manchester",
"line1": "1 High Street",
"line2": "Northern Quarter",
"postalCode": "M4 1AA"
}
}
}
}
Update address is the endpoint through which the user can update their address of residence.
This process solely updates the user’s address of residence. It does not perform any verification. For address verification, refer to the proof-of-address process.
Subdivision update requirements
Thesubdivision field is only accepted in the request if both of the following conditions are met:
- The proof-of-address process is
partner-verifiedfor your organization. - The
countryfield is not set toUS.
If the
subdivision field is provided without meeting the above conditions, the request is rejected with a 409 Conflict error — operation_not_allowed with subdivision-update-non-authoritative-proof-of-address (when proof-of-address is uphold-verified) or subdivision-update-restricted-by-residence-country (when country is US) in details.reasons.Was this page helpful?
⌘I