Buscar Relatórios de Credit Score
Descrição: Busca o status e os relatórios gerados a partir de uma solicitação de credit score.
Endpoint
Regras
| Atributos | Descrição | Tipo | Obrigatório | Validações |
|---|---|---|---|---|
| credit_score_id | Identificador da análise | UUID | Sim | - |
Exemplo de Requisição
- cURL
- Java
- JavaScript
- Python
- SDK Java
curl -X GET \
-H "Authorization: {SUA_API_KEY}" \
"https://api.merx.tech/api/v1/integration/financial/credit-score/reports/{credit_score_id}"
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
String creditScoreId = "{credit_score_id}";
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.merx.tech/api/v1/integration/financial/credit-score/reports/" + creditScoreId))
.header("Authorization", "{SUA_API_KEY}")
.GET()
.build();
HttpClient client = HttpClient.newHttpClient();
try {
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
} catch (Exception e) {
e.printStackTrace();
}
const creditScoreId = '{credit_score_id}';
const response = await fetch(
`https://api.merx.tech/api/v1/integration/financial/credit-score/reports/${creditScoreId}`,
{
method: 'GET',
headers: {
'Authorization': '{SUA_API_KEY}',
},
}
);
const data = await response.json();
console.log(data);
import requests
credit_score_id = "{credit_score_id}"
url = f"https://api.merx.tech/api/v1/integration/financial/credit-score/reports/{credit_score_id}"
headers = {
"Authorization": "{SUA_API_KEY}"
}
response = requests.get(url, headers=headers)
print(response.json())
import com.merx.sdk.api.MerxClient;
import com.merx.sdk.core.Environment;
import java.util.UUID;
MerxClient merx = MerxClient.builder()
.apiKey("{SUA_API_KEY}")
.environment(Environment.SANDBOX)
.build();
var reports = merx.financial()
.findCreditScoreReports(UUID.fromString("00000000-0000-0000-0000-000000000000"))
.orElseThrow();
Parâmetros
Parâmetros de Cabeçalho
| Nome | Descrição | Tipo | Obrigatório |
|---|---|---|---|
| Authorization | Chave de API obtida via support-api@merx.tech | String | Sim |
Parâmetros de Caminho:
| Nome | Descrição | Tipo | Obrigatório |
|---|---|---|---|
| credit_score_id | Identificador da análise | UUID | Sim |
O
credit_score_idé tratado como UUID, não como String livre. Um valor que não seja um UUID válido é recusado antes de chegar ao serviço financeiro, com400no formato de quatro chaves (timestamp,status,error,message) emessage.creditscoreid.invalid.
Respostas
- 200 - Ok
{
"cpr_b3": {},
"cpr_cerc": {},
"cpr_crdc": {},
"bndes": {},
"agro": {},
"sigef": {},
"dissolve": {}
}
Nota: O response contém mapas dinâmicos por fonte de dados. Cada chave pode conter subchaves e valores específicos ao relatório gerado. Fontes sem dados são omitidas da resposta — chaves nulas não são serializadas —, então trate a ausência de uma chave como "sem relatório", e não como erro.
- 400 - Bad Request
O credit_score_id informado no caminho não é um UUID válido — note que este corpo não usa a chave messages:
{
"timestamp": "2024-01-15T10:30:00.123",
"status": 400,
"error": "Bad Request",
"message": "message.creditscoreid.invalid"
}
Erros vindos do serviço financeiro. Este endpoint é um repasse para o serviço financeiro da Merx. Quando o erro nasce lá, a API devolve o status HTTP original do serviço financeiro e o corpo cru da resposta dele, sem reescrever no formato
{"messages": [...]}. Trate as respostas de erro deste endpoint em dois casos:
- Erro de validação da própria integração — corpo no formato
{"messages": ["chave.i18n"]}.- Erro repassado do serviço financeiro — status e corpo definidos pelo serviço de origem; o formato pode ser qualquer um, inclusive um JSON com estrutura diferente. Não faça o parsing assumindo a chave
messages.
- 401 - Unauthorized
Devolvido pelo gateway quando o Authorization está ausente ou inválido — nesse caso a resposta traz corpo, no formato {"data": [], "error": {...}}. A mensagem dentro de error varia conforme o plugin de autenticação da rota, então não programe em cima do texto. Um 401 repassado do serviço financeiro, esse sim, vem sem corpo.
404 - Not Found
502 - Bad Gateway
O serviço financeiro está indisponível ou recusou a conexão:
{
"messages": ["message.integration.connection.refused"]
}