Integrate
Integrate v2
Integrate v2
  • Getting Started
    • 🤝Authorisation & Activation
    • 🔗API v2 URL
    • 🔢Versioning
    • 🔐Authentication
    • 🟰Additional Headers
    • 🆗Response Status Codes
    • 🛑Rate Limiting
    • ⁉️Errors and Bad Requests
    • 📖Pagination
    • ⏭️Upgrading to v2
  • Reference
    • Settings
      • Client Integrations
        • Get Client Integrations
        • Change Client Integration State
    • Finance+
      • Debt Management
        • Debtor Notes
          • Get Communication Type(s)
          • Get Note Type(s)
          • Get Note(s)
          • Create Note
          • Update Note
          • Delete Note
          • Get Promise To Pay Record(s)
          • Delete Promise To Pay
        • Age Analysis Report
        • Financial Transactions Report
        • Get Schools
        • Get Accountable Person(s)
        • Get Learner(s)
        • Get Transaction Type(s)
        • Get Transaction Category(s)
Powered by GitBook
On this page
  • Get the list of available grades
  • Examples
  1. Reference
  2. Administration+
  3. Lookups

Grade(s)

Get the list of available grades

GET https://integrate.d6plus.co.za/api/v1/adminplus/lookup/grade/{school_login_id}

Use this endpoint to retrieve the list of available grades within the d6+ SAMS.

The list is not generic across all d6+ SAMS clients, and could be customised per school. This endpoint allows you to specify a school Login ID in order to retrieve the list of grades offered by the school, along with their potentially customised names.

By default all available grades are returned.

It is also possible to retrieve the information for a single grade by providing the optional grade_id query parameter.

Path Parameters

Name
Type
Description

school_login_id*

Integer

The login ID of the school to retrieve data from

Query Parameters

Name
Type
Description

grade_id

String

The ID of a specific grade

Headers

Name
Type
Description

HTTP-X-USERNAME*

String

As provided by d6

HTTP-X-PASSWORD*

String

As provided by d6

[
    {
        "id": "1",
        "name": "Grade RR"
    },
    {
        "id": "2",
        "name": "Grade R"
    },
    {
        "id": "3",
        "name": "Grade 1"
    },
    {
        "id": "4",
        "name": "Grade 2"
    },
    {
        "id": "5",
        "name": "Grade 3"
    },
    {
        "id": "6",
        "name": "Grade 4"
    },
    {
        "id": "7",
        "name": "Grade 5"
    },
    {
        "id": "8",
        "name": "Grade 6"
    }
]
{
    "error": "Not found",
    "error_description": "No grade(s) found"
}
{
    "error": "Unauthorized",
    "error_description": "Request not authorised"
}

Examples

<?php

const BASE_URL = 'https://integrate.d6plus.co.za/api/v1/adminplus/lookup/grade';
const SCHOOL_LOGIN_ID = '1000';
const PARAMS = [
    'grade_id' => 1
    ];

const API_USERNAME = getenv('API_USERNAME'); // Assuming you have these environment variables set
const API_PASSWORD = getenv('API_PASSWORD');

$curl = curl_init();

$query = http_build_query(PARAMS);

$options = [
    CURLOPT_URL => BASE_URL . '/' . SCHOOL_LOGIN_ID . '?' . $query,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_SSL_VERIFYPEER => true,
    CURLOPT_CUSTOMREQUEST => 'GET',
    CURLOPT_HTTPHEADER => [
        "HTTP-X-USERNAME: " . API_USERNAME,
        "HTTP-X-PASSWORD: " . API_PASSWORD
    ],
];

curl_setopt_array($curl, $options);

$response = curl_exec($curl);

if (curl_errno($curl)) {
    throw new Exception('Curl error: ' . curl_error($curl));
}

curl_close($curl);

echo $response;
curl --location 'https://integrate.d6plus.co.za/api/v1/adminplus/lookup/grade/1000?grade_id=1' \
--header 'HTTP-X-USERNAME: your_username' \
--header 'HTTP-X-PASSWORD: your_password'
❗
❗
❗