API: Training
« Back to the API Documentation overview - authentication, security, response codes, and the full endpoint list.
Training Center data. The Type parameter selects the record set. Items restricted to specific members are excluded.
| HTTP Request Type | GET |
| Calling URI | https://www.YourDepartment.com/apps/api/training/ |
| Request Header | Authorization: Bearer {access_token} |
| Success Codes | 200 OK |
| Failure Codes | 400, 401, 403, 404, 405, 429, 500 - see the error reference |
Parameters
| Parameter | Description |
Type |
presentations (default), quizzes, certifications, or membercerts. |
ID |
Optional. A single item ID for the chosen Type. |
MemberID |
Optional, membercerts only. Limit to one member. |
All data endpoints also accept the common MaxRows
(default 100, maximum 500) and StartRow paging parameters.
Response Properties
| Property | Description |
Pres_ID / Pres_Title / Pres_Description / Pres_Hours / Pres_CreatedDate / Pres_ModifiedDate |
presentations: online presentations |
Quiz_ID / Quiz_Title / Quiz_Description / Quiz_Hours / Quiz_CreatedDate / Quiz_ModifiedDate / Graded / PassScore / MaxAttempts |
quizzes: online quizzes and their settings |
Cert_ID / Cert_Name / Cert_Description / Expiry_Months / Cert_CreatedDate / Cert_ModifiedDate |
certifications: the certification catalog |
CertMem_ID / Mem_ID / Member / Cert_Name / Cert_Status / Issue_Date / Expiry_Date / Cert_Number / Added_Date / CertMem_ModifiedDate |
membercerts: member certification records; Cert_Status is Active, Pending, Expiring Soon, or Expired |
Records are returned in the items array of the
standard response envelope.
Sample Code
Exchange your refresh token for an access token, then request data. The same two steps
work in any language; JavaScript and Python are shown here.
JavaScript
const BASE = "https://www.YourDepartment.com/apps/api";
const REFRESH_TOKEN = "your-refresh-token-here";
// 1. Exchange the refresh token for an access token (do this from a server,
// not from a public web page, so the refresh token stays secret)
const tokenRes = await fetch(`${BASE}/refresh/`, {
method: "POST",
headers: { "Authorization": `Bearer ${REFRESH_TOKEN}` }
});
const tokenData = await tokenRes.json();
// 2. Call the training endpoint (reuse the token for up to 24 hours)
const res = await fetch(`${BASE}/training/?MaxRows=10`, {
headers: { "Authorization": `Bearer ${tokenData.access_token}` }
});
const data = await res.json();
data.items.forEach(item => console.log(item));
Python
import requests
BASE = "https://www.YourDepartment.com/apps/api"
REFRESH_TOKEN = "your-refresh-token-here"
# 1. Exchange the refresh token for an access token
token = requests.post(f"{BASE}/refresh/",
headers={"Authorization": f"Bearer {REFRESH_TOKEN}"}).json()
# 2. Call the training endpoint (reuse the token for up to 24 hours)
data = requests.get(f"{BASE}/training/",
params={"MaxRows": 10},
headers={"Authorization": f"Bearer {token['access_token']}"}).json()
for item in data["items"]:
print(item)
|