Corrigir vários titulares
curl --request POST \
--url https://{space}.{region}.api.niadra.com/v1/corrections/batch \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"items": [
{
"profile_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"fact_id": "<string>",
"open_item_id": "<string>",
"reason": "<string>",
"value": "<string>"
}
]
}
'import requests
url = "https://{space}.{region}.api.niadra.com/v1/corrections/batch"
payload = { "items": [
{
"profile_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"fact_id": "<string>",
"open_item_id": "<string>",
"reason": "<string>",
"value": "<string>"
}
] }
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
items: [
{
profile_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
fact_id: '<string>',
open_item_id: '<string>',
reason: '<string>',
value: '<string>'
}
]
})
};
fetch('https://{space}.{region}.api.niadra.com/v1/corrections/batch', 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://{space}.{region}.api.niadra.com/v1/corrections/batch",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'items' => [
[
'profile_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'fact_id' => '<string>',
'open_item_id' => '<string>',
'reason' => '<string>',
'value' => '<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"Idempotency-Key: <idempotency-key>"
],
]);
$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://{space}.{region}.api.niadra.com/v1/corrections/batch"
payload := strings.NewReader("{\n \"items\": [\n {\n \"profile_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"fact_id\": \"<string>\",\n \"open_item_id\": \"<string>\",\n \"reason\": \"<string>\",\n \"value\": \"<string>\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Idempotency-Key", "<idempotency-key>")
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.post("https://{space}.{region}.api.niadra.com/v1/corrections/batch")
.header("Idempotency-Key", "<idempotency-key>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"items\": [\n {\n \"profile_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"fact_id\": \"<string>\",\n \"open_item_id\": \"<string>\",\n \"reason\": \"<string>\",\n \"value\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{space}.{region}.api.niadra.com/v1/corrections/batch")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Idempotency-Key"] = '<idempotency-key>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"items\": [\n {\n \"profile_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"fact_id\": \"<string>\",\n \"open_item_id\": \"<string>\",\n \"reason\": \"<string>\",\n \"value\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"accepted": 123,
"duplicates": 123,
"errors": [
{
"code": "<string>",
"index": 123,
"detail": "<string>"
}
],
"masked": {}
}{
"code": "<string>",
"status": 123,
"title": "<string>",
"detail": "<string>",
"request_id": "<string>",
"type": "about:blank"
}Privacidade e auditoria
Corrigir vários titulares
Até 100 correções numa chamada, cada uma com o próprio comprovante; um item que falha é listado pelo índice.
POST
/
v1
/
corrections
/
batch
Corrigir vários titulares
curl --request POST \
--url https://{space}.{region}.api.niadra.com/v1/corrections/batch \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Idempotency-Key: <idempotency-key>' \
--data '
{
"items": [
{
"profile_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"fact_id": "<string>",
"open_item_id": "<string>",
"reason": "<string>",
"value": "<string>"
}
]
}
'import requests
url = "https://{space}.{region}.api.niadra.com/v1/corrections/batch"
payload = { "items": [
{
"profile_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"fact_id": "<string>",
"open_item_id": "<string>",
"reason": "<string>",
"value": "<string>"
}
] }
headers = {
"Idempotency-Key": "<idempotency-key>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'Idempotency-Key': '<idempotency-key>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
items: [
{
profile_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
fact_id: '<string>',
open_item_id: '<string>',
reason: '<string>',
value: '<string>'
}
]
})
};
fetch('https://{space}.{region}.api.niadra.com/v1/corrections/batch', 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://{space}.{region}.api.niadra.com/v1/corrections/batch",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'items' => [
[
'profile_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'fact_id' => '<string>',
'open_item_id' => '<string>',
'reason' => '<string>',
'value' => '<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"Idempotency-Key: <idempotency-key>"
],
]);
$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://{space}.{region}.api.niadra.com/v1/corrections/batch"
payload := strings.NewReader("{\n \"items\": [\n {\n \"profile_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"fact_id\": \"<string>\",\n \"open_item_id\": \"<string>\",\n \"reason\": \"<string>\",\n \"value\": \"<string>\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Idempotency-Key", "<idempotency-key>")
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.post("https://{space}.{region}.api.niadra.com/v1/corrections/batch")
.header("Idempotency-Key", "<idempotency-key>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"items\": [\n {\n \"profile_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"fact_id\": \"<string>\",\n \"open_item_id\": \"<string>\",\n \"reason\": \"<string>\",\n \"value\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://{space}.{region}.api.niadra.com/v1/corrections/batch")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Idempotency-Key"] = '<idempotency-key>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"items\": [\n {\n \"profile_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"fact_id\": \"<string>\",\n \"open_item_id\": \"<string>\",\n \"reason\": \"<string>\",\n \"value\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body{
"accepted": 123,
"duplicates": 123,
"errors": [
{
"code": "<string>",
"index": 123,
"detail": "<string>"
}
],
"masked": {}
}{
"code": "<string>",
"status": 123,
"title": "<string>",
"detail": "<string>",
"request_id": "<string>",
"type": "about:blank"
}Autorizações
sourceKeypersonToken
nia_sk_...
Cabeçalhos
Fica guardada 24 horas com o hash do corpo; a mesma chave com outro corpo devolve 409.
Required string length:
1 - 200Corpo
application/json
Várias correções num pedido só; o item n recebe a chave de idempotência <Idempotency-Key>:<n>.
Required array length:
1 - 100 elementsShow child attributes
Show child attributes
Resposta
Resposta de sucesso.
Itens cuja chave de idempotência já estava gravada.
Show child attributes
Show child attributes
Valores retidos dos itens aceitos antes de serem gravados, por tipo (card, cvv, password, secret): o texto gravado diz [retido:cartão ****1234] onde o valor estava.
Show child attributes
Show child attributes

