Peru - Driver License
Endpointβ
GET https://api.verifik.co/v2/pe/driver-license
Look up a Peruvian driver license by DNI. Returns license category, status, expiration, restrictions, procedures, regulatory courses, and related fields when available from official transport records.
Headersβ
| Name | Value |
|---|---|
| Accept | application/json |
| Authorization | Bearer <token> |
Parametersβ
| Name | Type | Required | Description | Example |
|---|---|---|---|---|
documentType | string | Yes | Document type. Valid value: DNI. | DNI |
documentNumber | string | Yes | DNI number (6β8 digits), without spaces. | 10000001 |
Requestβ
- JavaScript
- Python
- Swift
- PHP
import axios from 'axios';
const options = {
method: 'GET',
url: 'https://api.verifik.co/v2/pe/driver-license',
params: {
documentType: 'DNI',
documentNumber: '10000001',
},
headers: {
Accept: 'application/json',
Authorization: 'Bearer <your_token>',
},
};
try {
const { data } = await axios.request(options);
console.log(data);
} catch (error) {
console.error(error);
}
import http.client
conn = http.client.HTTPSConnection("api.verifik.co")
headers = {
"Accept": "application/json",
"Authorization": "Bearer <your_token>",
}
conn.request(
"GET",
"/v2/pe/driver-license?documentType=DNI&documentNumber=10000001",
headers=headers,
)
res = conn.getresponse()
print(res.read().decode("utf-8"))
var request = URLRequest(
url: URL(string: "https://api.verifik.co/v2/pe/driver-license?documentType=DNI&documentNumber=10000001")!,
timeoutInterval: Double.infinity
)
request.httpMethod = "GET"
request.setValue("application/json", forHTTPHeaderField: "Accept")
request.setValue("Bearer <your_token>", forHTTPHeaderField: "Authorization")
let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data else { return }
print(String(data: data, encoding: .utf8)!)
}
task.resume()
<?php
require_once 'HTTP/Request2.php';
$request = new HTTP_Request2();
$request->setUrl('https://api.verifik.co/v2/pe/driver-license?documentType=DNI&documentNumber=10000001');
$request->setMethod(HTTP_Request2::METHOD_GET);
$request->setHeader('Accept', 'application/json');
$request->setHeader('Authorization', 'Bearer <your_token>');
$response = $request->send();
echo $response->getBody();
Responseβ
- 200
- 404
- 409 (Missing Parameters)
- 409 (Invalid Document Type)
{
"data": {
"bloodType": "O+",
"departmentCode": "15",
"documentNumber": "10000001",
"documentType": "DNI",
"firstName": "MARIA ELENA",
"fullName": "MARIA ELENA LOPEZ GARCIA",
"hasLicensesA": true,
"hasLicensesAIV": false,
"hasLicensesB": false,
"hasProvisionalPermit": false,
"hasRegulatoryCourses": true,
"hasSexualHarassmentCourse": false,
"lastName": "LOPEZ GARCIA",
"licenses": [
{
"licenseNumber": "R10000001",
"correlation": "10",
"licenseCategory": "A IIb",
"expirationDate": "14/12/2027",
"licenseStatus": "Vigente",
"electronicLicense": 0,
"restrictions": "SIN RESTRICCIONES",
"issuanceCenter": "Direc. Reg. Transporte - Lima",
"issueDate": "10/05/2005"
}
],
"maternalLastName": "GARCIA",
"organDonation": "NO",
"paternalLastName": "LOPEZ",
"procedures": [
{
"licenseNumber": "R10000001",
"correlation": 10,
"procedure": "RevalidaciΓ³n",
"category": "A IIb",
"issueDate": "14/12/2022",
"expeditionDate": "10/05/2005",
"revalidationDate": "14/12/2027",
"status": "Vigente",
"electronicLicense": 0,
"restriction1": "SIN RESTRICCIONES",
"restriction2": null,
"issuanceCenter": "Direc. Reg. Transporte - Lima"
}
],
"proceduresAIV": null,
"proceduresB": null,
"provisionalPermit": null,
"regulatoryCourses": [
{
"certificateStatus": "001316",
"serviceType": "Personas",
"enrollmentDate": "05/12/2025",
"startDate": "05/12/2025",
"endDate": "05/12/2025",
"hours": 6
}
],
"sanctions": null,
"sexualHarassmentCourses": [],
"tickets": []
},
"signature": {
"dateTime": "June 23, 2026 10:00 AM",
"message": "Certified by Verifik.co"
}
}
{
"code": "NotFound",
"message": "Record not found."
}
{
"code": "MissingParameter",
"message": "missing documentType\n. missing documentNumber\n"
}
{
"code": "MissingParameter",
"message": "documentType must be one of: [DNI]"
}
Notesβ
- Only
documentType=DNIis supported. documentNumbermust be 6β8 digits.- In sandbox mode, use
documentNumbervalues 10000001β10000010 for stable sample responses;90040401returns 404.