curl --request POST \
--url https://api.fpjs.io/v4/events/{event_id}/feedback \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"reset_identification_confidence_score": true
}
'import requests
url = "https://api.fpjs.io/v4/events/{event_id}/feedback"
payload = { "reset_identification_confidence_score": True }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({reset_identification_confidence_score: true})
};
fetch('https://api.fpjs.io/v4/events/{event_id}/feedback', 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.fpjs.io/v4/events/{event_id}/feedback",
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([
'reset_identification_confidence_score' => true
]),
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.fpjs.io/v4/events/{event_id}/feedback"
payload := strings.NewReader("{\n \"reset_identification_confidence_score\": true\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.fpjs.io/v4/events/{event_id}/feedback")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"reset_identification_confidence_score\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fpjs.io/v4/events/{event_id}/feedback")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"reset_identification_confidence_score\": true\n}"
response = http.request(request)
puts response.read_bodySubmit feedback for an event
Use this API to submit feedback for a specific, existing event, identified by event_id.
Feedback is queued and processed asynchronously. Subsequent Server API responses may not reflect the feedback immediately.
Duplicate feedback requests for the same event are allowed; however, the most recent feedback overrides all previous submissions for that event.
Availability
This API is currently in beta and available only for Enterprise plans. If you are interested, please contact our support team.
Rate limits and daily quota
The rate limits and daily quota for this API differ from those for our other APIs.
Feedback can be submitted at a maximum of 30 requests per hour (RPH) and cannot exceed 500 requests per day (RPD).
You can request an increase to these limits by contacting our support team.
curl --request POST \
--url https://api.fpjs.io/v4/events/{event_id}/feedback \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"reset_identification_confidence_score": true
}
'import requests
url = "https://api.fpjs.io/v4/events/{event_id}/feedback"
payload = { "reset_identification_confidence_score": True }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({reset_identification_confidence_score: true})
};
fetch('https://api.fpjs.io/v4/events/{event_id}/feedback', 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.fpjs.io/v4/events/{event_id}/feedback",
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([
'reset_identification_confidence_score' => true
]),
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.fpjs.io/v4/events/{event_id}/feedback"
payload := strings.NewReader("{\n \"reset_identification_confidence_score\": true\n}")
req, _ := http.NewRequest("POST", 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.post("https://api.fpjs.io/v4/events/{event_id}/feedback")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"reset_identification_confidence_score\": true\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.fpjs.io/v4/events/{event_id}/feedback")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"reset_identification_confidence_score\": true\n}"
response = http.request(request)
puts response.read_bodyAuthorizations
Add your Secret API Key to the Authorization header using the standard Bearer format: Authorization: Bearer <secret_api_key>
Path Parameters
Body
The request must contain at least one feedback type. When the request contains more than one feedback type, each will be processed independently.
Currently, only one feedback type is supported: reset_identification_confidence_score.
Additional feedback types may be introduced in the future.
Set to true to reset the identification confidence score for this event to 1.0.
Use this feedback type when the browser has been verified through a trusted external mechanism of your choice, such as biometrics or MFA. The feedback must be submitted within 24 hours of the identification event. Requests submitted after this window will be rejected.
Once the reset is applied, subsequent identification events from the same browser will reflect an updated confidence score.
- When the browser is deterministically matched with the reset event, the confidence score will be
1.0. - When the browser is probabilistically matched with the reset event, the confidence score will no longer be
1.0. Instead, it will decrease gradually depending on how much the browser's properties have changed since the reset.
Availability
- Currently in beta and is available only for Enterprise plans upon request. If you are interested, please contact our support team.
- Supported only for events that originated from the JavaScript agent and/or the frontend libraries.
- Not supported for events that originated from any of our mobile SDKs.
Response
Accepted. The feedback has been accepted and will be processed asynchronously.
Was this page helpful?