List verifications
curl --request GET \
--url https://api.ctrl-hub.com/v3/verifications \
--header 'X-Session-Token: <api-key>'import requests
url = "https://api.ctrl-hub.com/v3/verifications"
headers = {"X-Session-Token": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Session-Token': '<api-key>'}};
fetch('https://api.ctrl-hub.com/v3/verifications', 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.ctrl-hub.com/v3/verifications",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Session-Token: <api-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"
"net/http"
"io"
)
func main() {
url := "https://api.ctrl-hub.com/v3/verifications"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Session-Token", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.ctrl-hub.com/v3/verifications")
.header("X-Session-Token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ctrl-hub.com/v3/verifications")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Session-Token"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>",
"attributes": {
"verified_at": "2023-11-07T05:31:56Z"
},
"relationships": {
"author": {
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>"
}
},
"organisation": {
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>"
}
},
"induction_completion": {
"data": {
"type": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
},
"training_completion": {
"data": {
"type": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
},
"assessment_record": {
"data": {
"type": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
},
"registration": {
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>"
}
},
"category_registration": {
"data": {
"type": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
},
"scheme_registration": {
"data": {
"type": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}
}
}
],
"meta": {
"pagination": {
"counts": {
"pages": 123,
"resources": 123
},
"current_page": 123,
"offsets": {
"next": 123,
"previous": 123
},
"requested": {
"limit": 123,
"offset": 123
}
},
"features": {
"include": {
"options": [
"<string>"
]
}
}
},
"jsonapi": {
"version": "<string>"
},
"included": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>",
"attributes": {
"email": "jsmith@example.com",
"identities": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"platform": "<string>",
"meta": {}
}
],
"profile": {
"work": {
"occupation": "<string>",
"cscs": "<string>",
"eusr": "<string>",
"start_date": "2023-12-25"
},
"personal": {
"first_name": "<string>",
"last_name": "<string>",
"dob": "2023-12-25",
"username": "<string>"
},
"contact": {
"mobile": "<string>",
"landline": "<string>"
},
"address": {
"number": "",
"street": "<string>",
"area": "<string>",
"town": "<string>",
"county": "<string>",
"postcode": "<string>",
"country_code": "<string>",
"what3words": "<string>"
},
"settings": {
"preferred_language": "en-GB",
"timezone": "<string>"
}
}
},
"meta": {
"grants": [
"<string>"
]
},
"relationships": {
"organisations": {
"data": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>"
}
]
},
"teams": {
"data": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>"
}
]
},
"managing_organisation": {
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>"
}
}
}
}
]
}{
"id": "98ca4a78-b66f-4234-9719-aaf832ee6669",
"status": "400",
"title": "A validation error was encountered",
"source": {
"parameter": "include"
},
"meta": {
"resource": "wrong_value"
}
}{
"id": "05fc9c8d-73b9-4697-9337-57f7a567a48f",
"status": "401",
"title": "You are not authorised to access this resource",
"detail": "In order to access this resource, you need the 'admin' role.",
"code": "AUTH.001"
}{
"id": "fe9d9a69-f0a7-4fdc-bb2c-176027f316c5",
"status": "500",
"title": "Internal Server Error",
"detail": "An unexpected error occurred on the server."
}Workforce
List verifications
Retrieve a list of verifications. Filter by ref_type and ref_id to list
verifications for a single record (e.g. a particular induction completion).
GET
/
v3
/
verifications
List verifications
curl --request GET \
--url https://api.ctrl-hub.com/v3/verifications \
--header 'X-Session-Token: <api-key>'import requests
url = "https://api.ctrl-hub.com/v3/verifications"
headers = {"X-Session-Token": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {'X-Session-Token': '<api-key>'}};
fetch('https://api.ctrl-hub.com/v3/verifications', 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.ctrl-hub.com/v3/verifications",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"X-Session-Token: <api-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"
"net/http"
"io"
)
func main() {
url := "https://api.ctrl-hub.com/v3/verifications"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("X-Session-Token", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.ctrl-hub.com/v3/verifications")
.header("X-Session-Token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.ctrl-hub.com/v3/verifications")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["X-Session-Token"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"data": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>",
"attributes": {
"verified_at": "2023-11-07T05:31:56Z"
},
"relationships": {
"author": {
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>"
}
},
"organisation": {
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>"
}
},
"induction_completion": {
"data": {
"type": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
},
"training_completion": {
"data": {
"type": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
},
"assessment_record": {
"data": {
"type": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
},
"registration": {
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>"
}
},
"category_registration": {
"data": {
"type": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
},
"scheme_registration": {
"data": {
"type": "<string>",
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}
}
}
],
"meta": {
"pagination": {
"counts": {
"pages": 123,
"resources": 123
},
"current_page": 123,
"offsets": {
"next": 123,
"previous": 123
},
"requested": {
"limit": 123,
"offset": 123
}
},
"features": {
"include": {
"options": [
"<string>"
]
}
}
},
"jsonapi": {
"version": "<string>"
},
"included": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>",
"attributes": {
"email": "jsmith@example.com",
"identities": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"platform": "<string>",
"meta": {}
}
],
"profile": {
"work": {
"occupation": "<string>",
"cscs": "<string>",
"eusr": "<string>",
"start_date": "2023-12-25"
},
"personal": {
"first_name": "<string>",
"last_name": "<string>",
"dob": "2023-12-25",
"username": "<string>"
},
"contact": {
"mobile": "<string>",
"landline": "<string>"
},
"address": {
"number": "",
"street": "<string>",
"area": "<string>",
"town": "<string>",
"county": "<string>",
"postcode": "<string>",
"country_code": "<string>",
"what3words": "<string>"
},
"settings": {
"preferred_language": "en-GB",
"timezone": "<string>"
}
}
},
"meta": {
"grants": [
"<string>"
]
},
"relationships": {
"organisations": {
"data": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>"
}
]
},
"teams": {
"data": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>"
}
]
},
"managing_organisation": {
"data": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>"
}
}
}
}
]
}{
"id": "98ca4a78-b66f-4234-9719-aaf832ee6669",
"status": "400",
"title": "A validation error was encountered",
"source": {
"parameter": "include"
},
"meta": {
"resource": "wrong_value"
}
}{
"id": "05fc9c8d-73b9-4697-9337-57f7a567a48f",
"status": "401",
"title": "You are not authorised to access this resource",
"detail": "In order to access this resource, you need the 'admin' role.",
"code": "AUTH.001"
}{
"id": "fe9d9a69-f0a7-4fdc-bb2c-176027f316c5",
"status": "500",
"title": "Internal Server Error",
"detail": "An unexpected error occurred on the server."
}Authorizations
SessionOAuth2Cookie
Session token for authentication.
Query Parameters
Filters the response data based on the value provided.
Available filters:
eq(id,xxx): Filter verifications by ID.eq(organisation,xxx): Filter verifications by verifying organisation ID.eq(author,xxx): Filter verifications by the author (verifier) user ID.eq(ref_type,xxx): Filter verifications by the ref resource type (induction-completions,training-completions,assessment-records,registrations,category-registrations,scheme-registrations).eq(ref_id,xxx): Filter verifications by the ref resource ID.eq(verified_at,xxx): Filter verifications by the verification timestamp.eq(created_at,xxx): Filter verifications by created date.
For more information on using named filters, see the docs
A comma separated list of related resources to include.
Available options:
author, organisation, induction_completion, training_completion, assessment_record, registration, category_registration, scheme_registration Limit the number of resources returned by the API
Required range:
x >= 1Offset the resources returned by the API
Required range:
x >= 0Response
Get a list of verifications.
JSON API response object
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Related resources that can be included when a verification is returned
A user
- Option 1
- Option 2
- Option 3
- Option 4
- Option 5
- Option 6
- Option 7
- Option 8
Show child attributes
Show child attributes
⌘I