Get Schools
GET /v2/finplus/debtmanagement/schools (/{id})
Use this endpoint to fetch one or more school records.
Pagination
The response data includes a meta object that contains pagination-specific metadata. You can use the following query parameters to control pagination:
limit: This parameter allows you to override the default limit of records returned, up to the
max_allowed_limitspecified in the response'smetaobject.cursor: If the
metaobject contains anext_cursorfield, it indicates that more records are available. To fetch the next set of records, include thecursorparameter in your request with the value ofnext_cursor. If thenext_cursorfield is not present, it means there are no more records to retrieve.reverse_order: This parameter can be used to reverse the order in which the data is returned, useful for fetching the latest records first.
Path Parameters
{id}
Integer
Optionally provide the School ID for retrieving a single record.
Request Headers
HTTP-X-USERNAME*
String
As provided by d6
HTTP-X-PASSWORD*
String
As provided by d6
Query Parameters
cursor
String
To retrieve the next group of items (if any)
limit
Integer
To override the default limit of records returned (up to the max_allowed_limit provided in the response metadata).
reverse_order
Boolean
To reverse the order the data is returned in
Response Examples
Status: 200 OK
{
"data": [
{
"school_id": "1000",
"school_name": "d6+ Primary School",
"school_short_name": "primary",
"ownership_type": "Public",
"country": "South Africa",
"province": "Gauteng",
"town": "Pretoria",
"suburb": "Waterkloof Glen",
"district": "METRO EAST",
"district_code": "D1",
"circuit": "Circuit 2",
"quantile": "4",
"emis_number": "600000001",
"telephone_number": "0123334444",
"lowest_grade": "Grade R",
"highest_grade": "Grade 7",
"admin_email_address": "[email protected]",
"debtors_email_address": "[email protected]",
"finance_email_address": "[email protected]",
"physical_address": "Spaces Building, Floor 3,/r/n210 Amarand Ave,/r/nWaterkloof Glen,/r/nPretoria,/r/n0010",
"postal_address": "Spaces Building, Floor 3,/r/n210 Amarand Ave,/r/nWaterkloof Glen,/r/nPretoria,/r/n0010",
"has_after_school_center": "Yes",
"has_hostel": "No",
"uses_debit_orders": "No",
"uses_cashless": "Yes"
},
{
"school_id": "1001",
"school_name": "d6+ Secondary School",
"school_short_name": "secondary",
"ownership_type": "Public",
"country": "South Africa",
"province": "Western Cape",
"town": "Stellenbosch",
"suburb": "Techno Park",
"district": "CAPE WINELANDS",
"district_code": "D1",
"circuit": "Circuit 10",
"quantile": "5",
"emis_number": "600000002",
"telephone_number": "0213337654",
"lowest_grade": "Grade 8",
"highest_grade": "Grade 12",
"admin_email_address": "[email protected]",
"debtors_email_address": "[email protected]",
"finance_email_address": "[email protected]",
"physical_address": "Octo Place, Block B\r\nElektron Road\r\nTechno Park\r\nStellenbosch\r\n7600",
"postal_address": "Octo Place, Block B\r\nElektron Road\r\nTechno Park\r\nStellenbosch\r\n7600",
"has_after_school_center": "No",
"has_hostel": "Yes",
"uses_debit_orders": "Yes",
"uses_cashless": "No"
}
],
"meta": {
"limit": 10,
"max_allowed_limit": 50,
"cursor": "eyJpZCI6MjU0NiwiX2JhY2t3YXJkIjpmYWxzZX0"
}
]Status: 200 OK
{
"school_id": "1000",
"school_name": "d6+ Primary School",
"school_short_name": "primary",
"ownership_type": "Public",
"country": "South Africa",
"province": "Gauteng",
"town": "Pretoria",
"suburb": "Waterkloof Glen",
"district": "METRO EAST",
"district_code": "D1",
"circuit": "Circuit 2",
"quantile": "4",
"emis_number": "600000001",
"telephone_number": "0123334444",
"lowest_grade": "Grade R",
"highest_grade": "Grade 7",
"admin_email_address": "[email protected]",
"debtors_email_address": "[email protected]",
"finance_email_address": "[email protected]",
"physical_address": "Spaces Building, Floor 3,/r/n210 Amarand Ave,/r/nWaterkloof Glen,/r/nPretoria,/r/n0010",
"postal_address": "Spaces Building, Floor 3,/r/n210 Amarand Ave,/r/nWaterkloof Glen,/r/nPretoria,/r/n0010",
"has_after_school_center": "Yes",
"has_hostel": "No",
"uses_debit_orders": "No",
"uses_cashless": "Yes"
}Description: The requested ID does not exist in the system.
Status: 404 Not Found
{
"success": false,
"message": "The school does not exist"
}Description: When validation failed for one or more fields
Status: 400 Bad Request
{
"success": false,
"message": "Validation Failed",
"validation_errors": {
"include_bank_accounts": "The Limit must be integer"
}
}Code Samples
<?php
// API Credentials
$api_username = 'your_username';
$api_password = 'your_password';
$school_id = 'the_school_id';
// Base API endpoint
define('BASE_URL', 'https://integrate.d6plus.co.za/api/v2/finplus/debtmanagement/schools');
// Optional: Set an ID to fetch a specific school (or leave empty for all)
$id = '';
$url = BASE_URL;
if (!empty($id)) {
$url .= '/' . $id;
}
// Query parameters (optional)
$query_params = [
'reverse_order' => 1,
'limit' => 10,
'cursor' => 'eyJpZCI6MjU0NiwiX2JhY2t3YXJkIjpmYWxzZX0',
];
if (!empty($query_params)) {
$url .= '?' . http_build_query($query_params);
}
// Initialize cURL
$curl = curl_init();
// Set cURL options
curl_setopt_array($curl, [
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 30, // Set timeout to prevent hanging requests
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => [
"HTTP-X-USERNAME: $api_username",
"HTTP-X-PASSWORD: $api_password",
"HTTP-X-SCHOOLID: $school_id"
],
]);
// Execute request
$response = curl_exec($curl);
// Check for errors
$error = curl_error($curl);
if ($error) {
curl_close($curl);
throw new Exception("cURL Error: $error");
}
// Close cURL and output response
curl_close($curl);
echo $response;
curl --request GET 'https://integrate.d6plus.co.za/api/v2/finplus/debtmanagement/schools' \
--header 'HTTP-X-USERNAME: your_username' \
--header 'HTTP-X-PASSWORD: your_password'Last updated