List checklists
List the Check Lists saved on the authenticated client. Results are scoped to that client and sorted by updatedAt descending (newest first). This call does not run lookups and does not spend credits.
Use search (or text) to filter by name. Send page when you want pagination metadata. Omit page to receive the matching array in data with no total / pages fields.
Endpoint
GET https://api.verifik.co/v2/check-lists
Returns the client's saved lists. Each item includes name, countries, domains, featureCodes, and status. When page is present, the response also includes total, limit, page, and pages.
Headers
| Name | Value |
|---|---|
| Content-Type | application/json |
| Authorization | Bearer <token> |
The token must be a client JWT. A token without clientId returns 403.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
page | integer | No | When set, the API paginates and returns total, limit, page, and pages. Omit it to get the matching array only. |
perPage | integer | No | Page size. Alias of limit. Applied even when page is omitted. |
limit | integer | No | Page size. Alias of perPage. |
search | string | No | Case-insensitive name filter. |
text | string | No | Alias of search. |
Request
- Node.js
- PHP
- Python
- Go
const fetch = require("node-fetch");
async function run() {
const res = await fetch("https://api.verifik.co/v2/check-lists?page=1&perPage=20&search=Colombia", {
method: "GET",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${process.env.VERIFIK_TOKEN}`,
},
});
console.log(await res.json());
}
run();
<?php
$ch = curl_init("https://api.verifik.co/v2/check-lists?page=1&perPage=20&search=Colombia");
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Content-Type: application/json",
"Authorization: Bearer " . getenv("VERIFIK_TOKEN")
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
import os, requests
url = "https://api.verifik.co/v2/check-lists"
headers = {
"Content-Type": "application/json",
"Authorization": f"Bearer {os.getenv('VERIFIK_TOKEN')}"
}
params = {"page": 1, "perPage": 20, "search": "Colombia"}
r = requests.get(url, params=params, headers=headers)
print(r.json())
package main
import (
"encoding/json"
"fmt"
"net/http"
"os"
)
func main() {
req, _ := http.NewRequest("GET", "https://api.verifik.co/v2/check-lists?page=1&perPage=20&search=Colombia", nil)
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer "+os.Getenv("VERIFIK_TOKEN"))
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
var out map[string]interface{}
json.NewDecoder(resp.Body).Decode(&out)
fmt.Println(out)
}
Response
- 200 with page
- 200 without page
- 403
{
"data": [
{
"_id": "6aa224c87034a338385c28c0",
"client": "507f1f77bcf86cd799439013",
"name": "KYC Colombia",
"countries": ["Colombia", "Chile"],
"domains": ["people"],
"featureCodes": ["co-cedula"],
"status": "draft",
"createdAt": "2026-09-10T03:32:00.000Z",
"updatedAt": "2026-09-10T03:33:00.000Z"
}
],
"total": 1,
"limit": 20,
"page": 1,
"pages": 1
}
{
"data": [
{
"_id": "6aa224c87034a338385c28c0",
"client": "507f1f77bcf86cd799439013",
"name": "KYC Colombia",
"countries": ["Colombia", "Chile"],
"domains": ["people"],
"featureCodes": ["co-cedula"],
"status": "draft",
"createdAt": "2026-09-10T03:32:00.000Z",
"updatedAt": "2026-09-10T03:33:00.000Z"
}
]
}
{
"message": "Client context required",
"code": "Forbidden"
}
Notes
- Lists belong to the client on the JWT. You cannot read another client's lists.
- Sort is always newest
updatedAtfirst. searchandtextdo the same case-insensitive name match.perPageandlimitare aliases. If you sendlimitwithoutpage, the array is still capped.- This endpoint does not spend credits and does not execute saved services.
- Product walkthrough: Check List. Create: Create a checklist.