Get overview
curl --request GET \
--url https://api.enterprise.sandbox.uphold.com/core/kyc \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.enterprise.sandbox.uphold.com/core/kyc"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.enterprise.sandbox.uphold.com/core/kyc', 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",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.enterprise.sandbox.uphold.com/core/kyc"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.enterprise.sandbox.uphold.com/core/kyc")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.enterprise.sandbox.uphold.com/core/kyc")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"summary": {
"reason": "none",
"status": "ok"
},
"processes": {
"profile": {
"code": "profile",
"status": "ok"
},
"address": {
"code": "address",
"status": "ok"
},
"email": {
"code": "email",
"status": "ok"
},
"phone": {
"code": "phone",
"status": "ok"
},
"identity": {
"code": "identity",
"status": "ok",
"type": "document-submission"
},
"proofOfAddress": {
"code": "proof-of-address",
"status": "ok",
"type": "electronic-verification"
},
"customerDueDiligence": {
"code": "customer-due-diligence",
"status": "ok"
},
"enhancedDueDiligence": {
"code": "enhanced-due-diligence",
"status": "ok"
},
"cryptoRiskAssessment": {
"code": "crypto-risk-assessment",
"status": "ok"
},
"selfCategorizationStatement": {
"code": "self-categorization-statement",
"status": "ok"
},
"taxDetails": {
"code": "tax-details",
"status": "ok"
},
"screening": {
"code": "screening",
"status": "ok"
},
"risk": {
"code": "risk",
"status": "ok"
}
}
}KYC
Get overview
Get the KYC overview of an individual user.
GET
/
core
/
kyc
Get overview
curl --request GET \
--url https://api.enterprise.sandbox.uphold.com/core/kyc \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.enterprise.sandbox.uphold.com/core/kyc"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.enterprise.sandbox.uphold.com/core/kyc', 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",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.enterprise.sandbox.uphold.com/core/kyc"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.enterprise.sandbox.uphold.com/core/kyc")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.enterprise.sandbox.uphold.com/core/kyc")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"summary": {
"reason": "none",
"status": "ok"
},
"processes": {
"profile": {
"code": "profile",
"status": "ok"
},
"address": {
"code": "address",
"status": "ok"
},
"email": {
"code": "email",
"status": "ok"
},
"phone": {
"code": "phone",
"status": "ok"
},
"identity": {
"code": "identity",
"status": "ok",
"type": "document-submission"
},
"proofOfAddress": {
"code": "proof-of-address",
"status": "ok",
"type": "electronic-verification"
},
"customerDueDiligence": {
"code": "customer-due-diligence",
"status": "ok"
},
"enhancedDueDiligence": {
"code": "enhanced-due-diligence",
"status": "ok"
},
"cryptoRiskAssessment": {
"code": "crypto-risk-assessment",
"status": "ok"
},
"selfCategorizationStatement": {
"code": "self-categorization-statement",
"status": "ok"
},
"taxDetails": {
"code": "tax-details",
"status": "ok"
},
"screening": {
"code": "screening",
"status": "ok"
},
"risk": {
"code": "risk",
"status": "ok"
}
}
}
Get overview is the endpoint that provides a summary of the user’s KYC process.
By default, only the status of each KYC process is included in the response.
If you need detailed information, you can use the
The accompanying
detailed query parameter to specify the KYC processes you want more detail, which will bring
their input, output fields as well as hint if applicable.
Getting the detailed KYC information is more expensive in terms of performance and should be used only when necessary.
Overall status
Thesummary object describes the user’s overall standing, independently of the individual processes:
| Status | Meaning |
|---|---|
pending | The platform is still expecting information from the user. |
ok | The user has been verified. |
restricted | The user has been verified but the platform has limited certain capabilities. |
blocked | The user is not allowed to operate on the platform. |
reason field carries additional context for the current status, and is none when there is nothing further to report.Authorizations
OAuth 2.0 authentication.
Headers
The natural language and locale that the client prefers.
Query Parameters
Include detailed information about the specified KYC processes. Use this sparingly as its more expensive to retrieve.
Maximum array length:
20Available options:
profile, address, email, phone, identity, proofOfAddress, customerDueDiligence, enhancedDueDiligence, cryptoRiskAssessment, selfCategorizationStatement, taxDetails, screening, risk Was this page helpful?