Initiate a trip participant background check
Initiates a Checkr invitation for a nonsample trip participant. If another valid check can be reused, the201 response first requests confirmation unless reuse_existing or force_new is provided. Reuse links a new local check record to the prior provider report.
curl --request POST \
--url https://api.gratona.com/v1/admin/trips/{tripId}/participants/{id}/background-checks \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"package": "<string>",
"work_location_ids": [
"<string>"
],
"cost_mode": "org",
"reuse_existing": false,
"force_new": false
}
'import requests
url = "https://api.gratona.com/v1/admin/trips/{tripId}/participants/{id}/background-checks"
payload = {
"package": "<string>",
"work_location_ids": ["<string>"],
"cost_mode": "org",
"reuse_existing": False,
"force_new": False
}
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({
package: '<string>',
work_location_ids: ['<string>'],
cost_mode: 'org',
reuse_existing: false,
force_new: false
})
};
fetch('https://api.gratona.com/v1/admin/trips/{tripId}/participants/{id}/background-checks', 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.gratona.com/v1/admin/trips/{tripId}/participants/{id}/background-checks",
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([
'package' => '<string>',
'work_location_ids' => [
'<string>'
],
'cost_mode' => 'org',
'reuse_existing' => false,
'force_new' => false
]),
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.gratona.com/v1/admin/trips/{tripId}/participants/{id}/background-checks"
payload := strings.NewReader("{\n \"package\": \"<string>\",\n \"work_location_ids\": [\n \"<string>\"\n ],\n \"cost_mode\": \"org\",\n \"reuse_existing\": false,\n \"force_new\": false\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.gratona.com/v1/admin/trips/{tripId}/participants/{id}/background-checks")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"package\": \"<string>\",\n \"work_location_ids\": [\n \"<string>\"\n ],\n \"cost_mode\": \"org\",\n \"reuse_existing\": false,\n \"force_new\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gratona.com/v1/admin/trips/{tripId}/participants/{id}/background-checks")
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 \"package\": \"<string>\",\n \"work_location_ids\": [\n \"<string>\"\n ],\n \"cost_mode\": \"org\",\n \"reuse_existing\": false,\n \"force_new\": false\n}"
response = http.request(request)
puts response.read_body{
"data": {
"trip_participant_id": 123,
"provider": "<string>",
"background_check_id": 123,
"provider_check_id": "<string>",
"status": "<string>",
"cost_mode": "<string>",
"report_url": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"expires_at": "2023-12-25",
"requested_at": "2023-11-07T05:31:56Z",
"reused": true,
"requires_reuse_confirmation": true,
"message": "<string>",
"suggested_check": {
"background_check_id": 123,
"provider_check_id": "<string>",
"status": "<string>",
"report_url": "<string>",
"expires_at": "2023-12-25",
"trip_id": 123,
"trip_participant_id": 123
}
}
}{
"message": "Unauthorized",
"status": "error"
}{
"message": "Something went wrong. Please try again.",
"status": "error",
"error": "invalid_request",
"code": "DONOR_NOT_FOUND"
}{
"message": "Not Found",
"status": "error"
}{
"errors": {},
"status": "error",
"message": "The given data was invalid."
}Authorizations
Passport bearer token authentication for legacy admin sessions.
Path Parameters
Trip ID belonging to the authenticated organization.
Record ID within the organization and any parent resource in this route.
Body
Request fields accepted by this operation. Omitted optional properties retain the behavior described above.
Validation: required|string|max:255.
255255Validation: nullable|in:org,organization,participant,candidate.
org, organization, participant, candidate, null "org"
Validation: nullable|boolean.
false
Validation: nullable|boolean.
false
Response
Initiate a trip participant background check response.
Show child attributes
Show child attributes
curl --request POST \
--url https://api.gratona.com/v1/admin/trips/{tripId}/participants/{id}/background-checks \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"package": "<string>",
"work_location_ids": [
"<string>"
],
"cost_mode": "org",
"reuse_existing": false,
"force_new": false
}
'import requests
url = "https://api.gratona.com/v1/admin/trips/{tripId}/participants/{id}/background-checks"
payload = {
"package": "<string>",
"work_location_ids": ["<string>"],
"cost_mode": "org",
"reuse_existing": False,
"force_new": False
}
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({
package: '<string>',
work_location_ids: ['<string>'],
cost_mode: 'org',
reuse_existing: false,
force_new: false
})
};
fetch('https://api.gratona.com/v1/admin/trips/{tripId}/participants/{id}/background-checks', 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.gratona.com/v1/admin/trips/{tripId}/participants/{id}/background-checks",
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([
'package' => '<string>',
'work_location_ids' => [
'<string>'
],
'cost_mode' => 'org',
'reuse_existing' => false,
'force_new' => false
]),
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.gratona.com/v1/admin/trips/{tripId}/participants/{id}/background-checks"
payload := strings.NewReader("{\n \"package\": \"<string>\",\n \"work_location_ids\": [\n \"<string>\"\n ],\n \"cost_mode\": \"org\",\n \"reuse_existing\": false,\n \"force_new\": false\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.gratona.com/v1/admin/trips/{tripId}/participants/{id}/background-checks")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"package\": \"<string>\",\n \"work_location_ids\": [\n \"<string>\"\n ],\n \"cost_mode\": \"org\",\n \"reuse_existing\": false,\n \"force_new\": false\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.gratona.com/v1/admin/trips/{tripId}/participants/{id}/background-checks")
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 \"package\": \"<string>\",\n \"work_location_ids\": [\n \"<string>\"\n ],\n \"cost_mode\": \"org\",\n \"reuse_existing\": false,\n \"force_new\": false\n}"
response = http.request(request)
puts response.read_body{
"data": {
"trip_participant_id": 123,
"provider": "<string>",
"background_check_id": 123,
"provider_check_id": "<string>",
"status": "<string>",
"cost_mode": "<string>",
"report_url": "<string>",
"updated_at": "2023-11-07T05:31:56Z",
"expires_at": "2023-12-25",
"requested_at": "2023-11-07T05:31:56Z",
"reused": true,
"requires_reuse_confirmation": true,
"message": "<string>",
"suggested_check": {
"background_check_id": 123,
"provider_check_id": "<string>",
"status": "<string>",
"report_url": "<string>",
"expires_at": "2023-12-25",
"trip_id": 123,
"trip_participant_id": 123
}
}
}{
"message": "Unauthorized",
"status": "error"
}{
"message": "Something went wrong. Please try again.",
"status": "error",
"error": "invalid_request",
"code": "DONOR_NOT_FOUND"
}{
"message": "Not Found",
"status": "error"
}{
"errors": {},
"status": "error",
"message": "The given data was invalid."
}