Obter mídia da validação KYC
curl --request GET \
--url http://api.gu1.ai/api/kyc/validations/{id}/media \
--header 'Authorization: Bearer <token>'import requests
url = "http://api.gu1.ai/api/kyc/validations/{id}/media"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('http://api.gu1.ai/api/kyc/validations/{id}/media', 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 => "http://api.gu1.ai/api/kyc/validations/{id}/media",
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 := "http://api.gu1.ai/api/kyc/validations/{id}/media"
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("http://api.gu1.ai/api/kyc/validations/{id}/media")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("http://api.gu1.ai/api/kyc/validations/{id}/media")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_bodyValidação por sessão
Obter mídia da validação KYC
Baixe imagens do documento, retrato, vídeo de liveness e demais arquivos armazenados para uma validação KYC por sessão na API KYC da gu1.
GET
/
api
/
kyc
/
validations
/
{id}
/
media
Obter mídia da validação KYC
curl --request GET \
--url http://api.gu1.ai/api/kyc/validations/{id}/media \
--header 'Authorization: Bearer <token>'import requests
url = "http://api.gu1.ai/api/kyc/validations/{id}/media"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('http://api.gu1.ai/api/kyc/validations/{id}/media', 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 => "http://api.gu1.ai/api/kyc/validations/{id}/media",
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 := "http://api.gu1.ai/api/kyc/validations/{id}/media"
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("http://api.gu1.ai/api/kyc/validations/{id}/media")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("http://api.gu1.ai/api/kyc/validations/{id}/media")
http = Net::HTTP.new(url.host, url.port)
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_bodyResumo
Quando uma validação KYC por sessão termina (ex.: approved), referências a mídia aparecem emdecision na resposta de GET /api/kyc/validations/:id (imagens do documento, retrato, vídeo de liveness, etc.).
Formato usual: cada referência é uma chave kyc/... (string de caminho). Para baixar os bytes, use o endpoint de mídia abaixo com sua API key.
Formato de decision: resultados aparecem como objeto singular e array de um elemento (ex.: id_verification e id_verifications[0]). O Gu1 mantém ambos sincronizados. Veja Eventos webhook KYC para um exemplo completo.
Validações antigas: alguns registros ainda têm URLs https://... em decision (links temporários do fluxo de verificação). Use essas URLs diretamente (por exemplo em <img> ou fetch) enquanto forem válidas. Não use em GET .../media?key= — esse parâmetro é só para chaves kyc/....
Esta página é para o KYC completo por sessão (global_gueno_validation_kyc). Face Match e ID Verification usam outros endpoints (barra lateral).
Validações antigas (links HTTPS vs chaves kyc/...)
- Nenhum dado é apagado: o JSON continua válido; o que muda é se cada campo é URL ou chave
kyc/.... - Chaves
kyc/...: useGET /api/kyc/validations/:id/mediacomkeycodificada na URL. O acesso fica limitado à sua organização e àquela validação. - Strings
https://: trate como URLs temporárias de arquivo até expirarem. A API pode substituí-las por chaveskyc/...numa sincronização posterior com o provedor de verificação (webhook ou sync), se o link ainda puder ser baixado. - Se o link já expirou antes da migração, o campo pode ficar como URL inválida até uma nova sync trazer links novos ou o suporte Gu1 executar uma reparação interna de mídia para a sua organização.
Solicitação
Endpoint
GET https://api.gu1.ai/api/kyc/validations/{validationId}/media
Headers
Authorization:Bearer SUA_API_KEY(obrigatório)
Query parameters
| Parâmetro | Obrigatório | Descrição |
|---|---|---|
key | Sim | A string de chave vinda de decision. Codifique na URL (encodeURIComponent; barras viram %2F). |
Permissões
A API key precisa poder ler KYC (kyc:read com permissões granulares; caso contrário, aplica-se o papel do usuário dono da chave, com fallback legado onde couber—igual a GET /api/kyc/validations/:id).
Resposta
Corpo bruto do arquivo. OContent-Type reflete o tipo (ex.: image/jpeg, video/webm).
Exemplo
curl -sS -o portrait.jpg \
-H "Authorization: Bearer SUA_API_KEY" \
"https://api.gu1.ai/api/kyc/validations/UUID_VALIDACAO/media?key=kyc%2Fglobal_gueno_validation_kyc%2F..."
encodeURIComponent(key) na query.
O parâmetro
key não é segredo e não substitui autenticação. Envie sempre Authorization: Bearer válido; a API verifica se a chave do objeto pertence àquela validação e à sua organização.Relacionado
- Criar validação KYC — iniciar o fluxo e obter
validationId - Consultar status da validação — polling até
decisionestar preenchido
Was this page helpful?