Introduction
This documentation aims to provide all the information you need to work with our API.
Branch Dashboard Report
APIs for managing Branch Dashboard Report
View branch dashboard report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/branch-report?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22branch_id%22%3A%22integer%22%2C%22descendant%22%3A%22enum%280%2C1%29%22%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/branch-report"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"branch_id":"integer","descendant":"enum(0,1)"}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/branch-report',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"branch_id":"integer","descendant":"enum(0,1)"}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/branch-report'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"branch_id":"integer","descendant":"enum(0,1)"}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "integer",
"name": "string",
"branch_code": "string",
"branch_id": "integer",
"created_at": "date",
"updated_at": "date",
"data": {
"id": "integer",
"name": "string",
"branch_code": "string",
"branch_id": "integer",
"created_at": "date",
"updated_at": "date",
"total_not_started": "integer",
"total_inprogress": "integer",
"total_completed": "integer",
"total_not_completed": "integer",
"total_user_count": "integer",
"total_enrolled": "integer"
},
"total_enrolled": "integer",
"total_not_started": "integer",
"total_inprogress": "integer",
"total_completed": "integer",
"total_not_completed": "integer",
"total_user_count": "integer"
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
View total branch report
Example response (500): Example response (403): Example response (401): Example response (200):Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/branch-report-total?advanced_filter=%7B%22branch_id%22%3A%22integer%22%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/branch-report-total"
);
const params = {
"advanced_filter": "{"branch_id":"integer"}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/branch-report-total',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'advanced_filter' => '{"branch_id":"integer"}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/branch-report-total'
params = {
'advanced_filter': '{"branch_id":"integer"}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
{
"message": "Internal server error"
}
{
"message": "You are not authorized"
}
{
"message": "Unauthenticated"
}
{
"data": [
{
"id": "integer",
"name": "string",
"branch_code": "string",
"branch_id": "integer",
"created_at": "date",
"updated_at": "date",
"data": {
"id": "integer",
"name": "string",
"branch_code": "string",
"branch_id": "integer",
"created_at": "date",
"updated_at": "date",
"total_not_started": "integer",
"total_inprogress": "integer",
"total_completed": "integer",
"total_not_completed": "integer",
"total_user_count": "integer",
"total_enrolled": "integer"
},
"total_enrolled": "integer",
"total_not_started": "integer",
"total_inprogress": "integer",
"total_completed": "integer",
"total_not_completed": "integer",
"total_user_count": "integer"
}
]
}
Received response:
Request failed with error:
Branches
APIs for managing branches
Retrieves all branches
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/branches" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/branches"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/branches',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/branches'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
[
{
"id": "integer",
"name": "string",
"branch_code": "string",
"branch_id": "integer",
"created_at": "date",
"updated_at": "date",
"children_recursive": [
{
"id": "integer",
"name": "string",
"branch_code": "string",
"branch_id": "integer",
"created_at": "date",
"updated_at": "date",
"children_recursive": []
}
],
"text": "string"
}
]
Received response:
Request failed with error:
Creates a new branch
Example request:
curl --request POST \
"https://your_portal_url/v1/api/branches" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"language\": \"string\",
\"name\": \"string\",
\"branch_code\": \"string\",
\"branch_id\": 0
}"
const url = new URL(
"https://your_portal_url/v1/api/branches"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"language": "string",
"name": "string",
"branch_code": "string",
"branch_id": 0
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://your_portal_url/v1/api/branches',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'language' => 'string',
'name' => 'string',
'branch_code' => 'string',
'branch_id' => 0,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/branches'
payload = {
"language": "string",
"name": "string",
"branch_code": "string",
"branch_id": 0
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"message": "Branch created successfully.",
"status": true
}
Received response:
Request failed with error:
View a branch
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/branches/1" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/branches/1"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/branches/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/branches/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
[
{
"id": "integer",
"name": "string",
"branch_code": "string",
"branch_id": "integer",
"created_at": "date",
"updated_at": "date",
"text": "string"
}
]
Received response:
Request failed with error:
Update a branch
Example request:
curl --request PUT \
"https://your_portal_url/v1/api/branches/1" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"language\": \"string\",
\"name\": \"string\",
\"branch_code\": \"string\",
\"branch_id\": 0
}"
const url = new URL(
"https://your_portal_url/v1/api/branches/1"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"language": "string",
"name": "string",
"branch_code": "string",
"branch_id": 0
};
fetch(url, {
method: "PUT",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->put(
'https://your_portal_url/v1/api/branches/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'language' => 'string',
'name' => 'string',
'branch_code' => 'string',
'branch_id' => 0,
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/branches/1'
payload = {
"language": "string",
"name": "string",
"branch_code": "string",
"branch_id": 0
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('PUT', url, headers=headers, json=payload)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"message": "Branch updated successfully.",
"status": true
}
Received response:
Request failed with error:
Delete a branch
Example request:
curl --request DELETE \
"https://your_portal_url/v1/api/branches/1" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/branches/1"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://your_portal_url/v1/api/branches/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/branches/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"message": "branch deleted successfully",
"status": false
}
Example response (406):
{
"message": "Unable to delete default branch.",
"status": false
}
Example response (406):
{
"message": "Unable to delete branch as branch exists.",
"status": false
}
Example response (406):
{
"message": "Unable to delete branch as user exists.",
"status": false
}
Received response:
Request failed with error:
Courses
APIs for managing courses
Retrieves all courses, filtered on input parameters
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/courses?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22branch_id%22%3A%22integer%22%2C%22descendant%22%3A%22enum%280%2C1%29%22%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/courses"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"branch_id":"integer","descendant":"enum(0,1)"}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/courses',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"branch_id":"integer","descendant":"enum(0,1)"}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/courses'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"branch_id":"integer","descendant":"enum(0,1)"}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "string",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"training_materials_count": "integer",
"keywords": [
{
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date",
"pivot": {
"course_id": "integer",
"keyword_id": "integer"
}
}
],
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "integer",
"average_minutes": "integer",
"average_seconds": "integer",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "interger",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"course_name": "string"
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
View a course
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/courses/11" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/courses/11"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/courses/11',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/courses/11'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (401):
{
"message": "Unauthenticated"
}
Example response (400):
{
"message": "General Error"
}
Example response (500):
{
"message": "Internal server error"
}
Example response (200):
{
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "integer",
"original_name": "integer",
"language_id": "integer",
"status": "string",
"category_id": "string",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"completion_material": [
"integer"
],
"show_evaluate_saq": "boolean",
"keywords": [
{
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date",
"pivot": {
"course_id": "integer",
"keyword_id": "integer"
}
}
],
"training_materials": [
{
"id": "integer",
"parent_training_material_id": "integer",
"title": "string",
"description": "string",
"thumbnail": "string",
"file": "string",
"original_name": "string",
"view_mode_desktop": "string",
"view_mode_tablet": "string",
"view_mode_mobile_app": "string",
"type": "string",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"pivot": {
"course_id": "integer",
"training_material_id": "integer",
"checked_for_course_completion": "boolean",
"publish_from": "date",
"publish_to": "date",
"sequence_number": "integer",
"number_of_views": "integer",
"set_delay": "time",
"number_of_attempts": "integer",
"folder_id": "integer",
"deleted_at": "date"
},
"users": [
{
"id": "integer",
"course_user_id": "integer",
"user_id": "integer",
"course_id": "integer",
"training_material_id": "integer",
"assign_date": "date",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"score": "integer",
"status": "string",
"assessment_data": "string",
"answer_data": "string",
"attempt": "integer",
"level": "string",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
}
]
}
],
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "string",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"course_notification": {
"id": "integer",
"course_id": "integer",
"on_course_assignment_checkbox": "boolean",
"on_course_completion_checkbox": "boolean",
"on_course_unassignment_checkbox": "boolean",
"for_course_not_started_notification_afterdays_checkbox": "boolean",
"for_course_not_started_notification_afterdays": "boolean",
"for_course_about_to_start_notification_before_days_checkbox": "boolean",
"for_course_about_to_start_notification_before_days": "boolean",
"for_certificate_about_to_expire_notification_before_checkbox": "boolean",
"for_certificate_about_to_expire_notification_before": "boolean",
"for_expired_course_notification_before_days_checkbox": "boolean",
"for_expired_course_notification_before_days": "boolean",
"for_expired_course_notification_after_days_checkbox": "boolean",
"for_expired_course_notification_after_days": "boolean",
"created_at": "date",
"updated_at": "date"
}
}
Example response (404):
{
"message": "No query results for model [App\\Models\\Course] ID"
}
Received response:
Request failed with error:
Retrieves all users that are assigned or unassigned to particular course , filtered on input parameters
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/courses/assign-users/aliquid/enum(0,1)?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=inventore" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/courses/assign-users/aliquid/enum(0,1)"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "inventore",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/courses/assign-users/aliquid/enum(0,1)',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => 'inventore',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/courses/assign-users/aliquid/enum(0,1)'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': 'inventore',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"courses": [
{
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"pivot": {
"user_id": "integer",
"course_id": "integer"
}
}
],
"user_status": "string"
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Example response (200):
{
"data": [
{
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"courses": [],
"user_status": "string"
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
Assign course to user using branch
Example request:
curl --request POST \
"https://your_portal_url/v1/api/courses/get-users-using-branch/odit?ids=voluptas" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/courses/get-users-using-branch/odit"
);
const params = {
"ids": "voluptas",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://your_portal_url/v1/api/courses/get-users-using-branch/odit',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'ids' => 'voluptas',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/courses/get-users-using-branch/odit'
params = {
'ids': 'voluptas',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"message": "Users assigned successfully.",
"status": true
}
Example response (404):
{
"message": "No query results for model [App\\Models\\Course] ID"
}
Received response:
Request failed with error:
Assign course to user
Example request:
curl --request POST \
"https://your_portal_url/v1/api/courses/assign/magni?ids=delectus" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/courses/assign/magni"
);
const params = {
"ids": "delectus",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://your_portal_url/v1/api/courses/assign/magni',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'ids' => 'delectus',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/courses/assign/magni'
params = {
'ids': 'delectus',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"message": "Users assigned successfully.",
"status": true
}
Example response (404):
{
"message": "No query results for model [App\\Models\\Course] ID"
}
Received response:
Request failed with error:
Unassign course to user
Example request:
curl --request POST \
"https://your_portal_url/v1/api/courses/unassign/exercitationem?ids=molestiae" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/courses/unassign/exercitationem"
);
const params = {
"ids": "molestiae",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "POST",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://your_portal_url/v1/api/courses/unassign/exercitationem',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'ids' => 'molestiae',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/courses/unassign/exercitationem'
params = {
'ids': 'molestiae',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"message": "Users unassigned successfully.",
"status": true
}
Example response (404):
{
"message": "No query results for model [App\\Models\\Course] ID"
}
Received response:
Request failed with error:
View course settings
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/courses/course-setting/voluptas" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/courses/course-setting/voluptas"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/courses/course-setting/voluptas',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/courses/course-setting/voluptas'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (401):
{
"message": "Unauthenticated"
}
Example response (400):
{
"message": "General Error"
}
Example response (500):
{
"message": "Internal server error"
}
Example response (200):
{
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "integer",
"original_name": "integer",
"language_id": "integer",
"status": "string",
"category_id": "string",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"completion_material": [
"integer"
],
"show_evaluate_saq": "boolean",
"keywords": [
{
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date",
"pivot": {
"course_id": "integer",
"keyword_id": "integer"
}
}
],
"training_materials": [
{
"id": "integer",
"parent_training_material_id": "integer",
"title": "string",
"description": "string",
"thumbnail": "string",
"file": "string",
"original_name": "string",
"view_mode_desktop": "string",
"view_mode_tablet": "string",
"view_mode_mobile_app": "string",
"type": "string",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"pivot": {
"course_id": "integer",
"training_material_id": "integer",
"checked_for_course_completion": "boolean",
"publish_from": "date",
"publish_to": "date",
"sequence_number": "integer",
"number_of_views": "integer",
"set_delay": "time",
"number_of_attempts": "integer",
"folder_id": "integer",
"deleted_at": "date"
}
}
],
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "string",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
}
}
Example response (404):
{
"message": "No query results for model [App\\Models\\Course] ID"
}
Received response:
Request failed with error:
Courses User Report
APIs for managing Courses User Report
View course user report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/courses-users?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22name%22%3A%22string%22%2C%22type%22%3A%22string%22%2C%22code%22%3A%22string%22%2C%22category%22%3A%22string%22%2C%22category_id%22%3A%22integer%22%2C%22criteria%22%3A%22string%22%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/courses-users"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"name":"string","type":"string","code":"string","category":"string","category_id":"integer","criteria":"string"}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/courses-users',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"name":"string","type":"string","code":"string","category":"string","category_id":"integer","criteria":"string"}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/courses-users'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"name":"string","type":"string","code":"string","category":"string","category_id":"integer","criteria":"string"}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "intger",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"course_users_count": "integer",
"not_started": "integer",
"completed": "integer",
"not_completed": "integer",
"in_progress": "integer",
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"course_name": "string"
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
Download course user report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/courses-users/csv" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/courses-users/csv"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/courses-users/csv',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/courses-users/csv'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "intger",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"course_users_count": "integer",
"not_started": "integer",
"completed": "integer",
"not_completed": "integer",
"in_progress": "integer",
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"course_name": "string"
}
]
}
Received response:
Request failed with error:
Enrollments
APIs for managing user side APIs
Retrieves all user assigned courses, filtered on input parameters
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/user/get-user-assigned-courses?sort=string&filter=string&courseStatus=string" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/user/get-user-assigned-courses"
);
const params = {
"sort": "string",
"filter": "string",
"courseStatus": "string",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/user/get-user-assigned-courses',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort' => 'string',
'filter' => 'string',
'courseStatus' => 'string',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/user/get-user-assigned-courses'
params = {
'sort': 'string',
'filter': 'string',
'courseStatus': 'string',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"current_page": "integer",
"data": [
{
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"completion_material": "integer",
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "string",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"keywords": [
{
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date",
"pivot": {
"course_id": "integer",
"keyword_id": "integer"
}
}
],
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"training_materials": [
{
"id": "integer",
"parent_training_material_id": "integer",
"title": "string",
"description": "string",
"thumbnail": "string",
"file": "string",
"original_name": "string",
"view_mode_desktop": "string",
"view_mode_tablet": "string",
"view_mode_mobile_app": "string",
"type": "string",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"pivot": {
"course_id": "integer",
"training_material_id": "integer",
"checked_for_course_completion": "integer",
"publish_from": "date",
"publish_to": "date",
"sequence_number": "integer",
"number_of_views": "string",
"set_delay": "string",
"number_of_attempts": "integer",
"folder_id": "integer",
"deleted_at": "date"
}
}
],
"course_users": [
{
"id": "integer",
"user_id": "integer",
"course_id": "integer",
"available_from": "date",
"available_to": "date",
"duration_days": "integer",
"duration_from": "string",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"status": "string",
"assigned_date": "date",
"assigned_by": "integer",
"score": "integer",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "string",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
}
]
}
],
"first_page_url": "url",
"from": "integer",
"last_page": "integer",
"last_page_url": "url",
"next_page_url": "url",
"path": "url",
"per_page": "integer",
"prev_page_url": "url",
"to": "integer",
"total": "integer"
}
Received response:
Request failed with error:
Retrieves assigned course details
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/user/get-course-details/ut" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/user/get-course-details/ut"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/user/get-course-details/ut',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/user/get-course-details/ut'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"startDateForLaunch": "boolean",
"currentDate": "date",
"folders": [
{
"id": "integer",
"name": "string",
"course_id": "integer",
"folder_id": "integer",
"parent_folder_id": "integer",
"folder_type": "string",
"sequence_number": "integer",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"training_materials": [
{
"id": "integer",
"parent_training_material_id": "integer",
"title": "string",
"description": "string",
"thumbnail": "string",
"file": "string",
"original_name": "string",
"view_mode_desktop": "string",
"view_mode_tablet": "string",
"view_mode_mobile_app": "string",
"type": "string",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"pivot": {
"folder_id": "integer",
"training_material_id": "integer",
"checked_for_course_completion": "integer",
"publish_from": "date",
"publish_to": "date",
"sequence_number": "integer",
"number_of_views": "string",
"set_delay": "string",
"number_of_attempts": "integer",
"launchTrainingMaterial": "boolean",
"launchMaterialOnNumberofViews": "boolean"
}
}
],
"children_recursive_training_materials": [
{
"id": "integer",
"name": "string",
"course_id": "integer",
"folder_id": "integer",
"parent_folder_id": "integer",
"folder_type": "integer",
"sequence_number": "integer",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"training_materials": [],
"children_recursive_training_materials": []
}
]
}
],
"folder_materials": [
{
"id": "integer",
"parent_training_material_id": "integer",
"title": "string",
"description": "string",
"thumbnail": "string",
"file": "string",
"original_name": "string",
"view_mode_desktop": "string",
"view_mode_tablet": "string",
"view_mode_mobile_app": "string",
"type": "string",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"pivot": {
"folder_id": "integer",
"training_material_id": "integer",
"checked_for_course_completion": "integer",
"publish_from": "date",
"publish_to": "date",
"sequence_number": "integer",
"number_of_views": "string",
"set_delay": "string",
"number_of_attempts": "integer",
"launchTrainingMaterial": "boolean",
"launchMaterialOnNumberofViews": "boolean"
}
}
],
"completion_material": "integer",
"selected_material": [
"integer",
"integer",
"integer"
],
"keywords": [
{
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date",
"pivot": {
"course_id": "integer",
"keyword_id": "integer"
}
}
],
"training_materials": [
{
"id": "integer",
"parent_training_material_id": "integer",
"title": "string",
"description": "string",
"thumbnail": "string",
"file": "string",
"original_name": "string",
"view_mode_desktop": "string",
"view_mode_tablet": "string",
"view_mode_mobile_app": "string",
"type": "string",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"pivot": {
"course_id": "integer",
"training_material_id": "integer",
"checked_for_course_completion": "integer",
"publish_from": "date",
"publish_to": "date",
"sequence_number": "integer",
"number_of_views": "string",
"set_delay": "string",
"number_of_attempts": "integer",
"folder_id": "integer",
"deleted_at": "date"
}
}
],
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "integer",
"average_minutes": "integer",
"average_seconds": "integer",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "interger",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"course_notification": {
"id": "integer",
"course_id": "integer",
"on_course_assignment_checkbox": "boolean",
"on_course_completion_checkbox": "boolean",
"on_course_unassignment_checkbox": "boolean",
"for_course_not_started_notification_afterdays_checkbox": "boolean",
"for_course_not_started_notification_afterdays": "boolean",
"for_course_about_to_start_notification_before_days_checkbox": "boolean",
"for_course_about_to_start_notification_before_days": "boolean",
"for_certificate_about_to_expire_notification_before_checkbox": "boolean",
"for_certificate_about_to_expire_notification_before": "boolean",
"for_expired_course_notification_before_days_checkbox": "boolean",
"for_expired_course_notification_before_days": "boolean",
"for_expired_course_notification_after_days_checkbox": "boolean",
"for_expired_course_notification_after_days": "boolean",
"created_at": "date",
"updated_at": "date"
},
"folder": [],
"course_users": [
{
"id": "integer",
"user_id": "integer",
"course_id": "integer",
"available_from": "date",
"available_to": "date",
"duration_days": "integer",
"duration_from": "integer",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"status": "string",
"assigned_date": "date",
"assigned_by": "integer",
"score": "integer",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "intger",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
}
]
}
Received response:
Request failed with error:
Retrieves certificate of particular course
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/user/certificate/aut" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/user/certificate/aut"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/user/certificate/aut',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/user/certificate/aut'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"name": "string",
"code": "string",
"description": "string",
"background_image": "url"
}
Received response:
Request failed with error:
Get calender view
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/user/get-calendar-view-detail" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/user/get-calendar-view-detail"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/user/get-calendar-view-detail',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/user/get-calendar-view-detail'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"id": "integer",
"user_id": "integer",
"course_id": "integer",
"duration_days": "integer",
"duration_from": "string",
"first_access_date": "date",
"for_days": "integer",
"last_access_date": "date",
"score": "integer",
"allow_re_enroll_course": "integer",
"assigned_by": "integer",
"assigned_date": "date",
"available_from": "date",
"available_to": "date",
"before_days_to_re_enroll": "integer",
"certificate_id": "integer",
"certificate_validity": "string",
"completion_date": "date",
"status": "string",
"till_date": "date",
"created_at": "date",
"deleted_at": "date",
"updated_at": "date",
"course": {
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"description": "string",
"thumbnail": "string",
"type": "string",
"category_id": "integer",
"code": "string",
"credits": "integer",
"language_id": "integer",
"material": "string",
"original_name": "string",
"status": "string",
"created_at": "date",
"created_by": "integer",
"updated_at": "date",
"deleted_at": "date",
"updated_by": "integer"
},
"user": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date"
}
}
Received response:
Request failed with error:
Group Course Report
APIs for managing Group Course Report
View group course report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/groups-courses?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22course%22%3A%7B%22name%22%3A%22string%22%2C%22code%22%3A%22string%22%2C%22type%22%3A%22string%22%2C%22criteria%22%3A%22string%22%2C%22category%22%3A%22string%22%2C%22category_id%22%3A%22integer%22%7D%2C%22group%22%3A%7B%22name%22%3A%22string%22%7D%2C%22criteria%22%3A%22string%22%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/groups-courses"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"course":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"group":{"name":"string"},"criteria":"string"}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/groups-courses',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"course":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"group":{"name":"string"},"criteria":"string"}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/groups-courses'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"course":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"group":{"name":"string"},"criteria":"string"}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"group_id": "integer",
"course_id": "integer",
"enrolled": "integer",
"not_started": "integer",
"in_progress": "integer",
"completed": "integer",
"not_completed": "integer",
"group": {
"id": "integer",
"name": "string",
"description": "string",
"branch_id": "integer",
"role_id": "integer",
"additional_field_id": "integer",
"assignment_type": "string",
"apply_existing_user": "string",
"criteria": "string",
"user_id": "integer",
"created_at": "date",
"updated_at": "date",
"group_members": "integer"
},
"course": {
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_name": "string"
}
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
Download group course report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/groups-courses/csv" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/groups-courses/csv"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/groups-courses/csv',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/groups-courses/csv'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"group_id": "integer",
"course_id": "integer",
"enrolled": "integer",
"not_started": "integer",
"in_progress": "integer",
"completed": "integer",
"not_completed": "integer",
"group": {
"id": "integer",
"name": "string",
"description": "string",
"branch_id": "integer",
"role_id": "integer",
"additional_field_id": "integer",
"assignment_type": "string",
"apply_existing_user": "string",
"criteria": "string",
"user_id": "integer",
"created_at": "date",
"updated_at": "date",
"group_members": "integer"
},
"course": {
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_name": "string"
}
}
]
}
Received response:
Request failed with error:
Learning Paths
APIs for managing learning path
Retrieves all learning paths, filtered on input parameters
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/learning-paths?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22branch_id%22%3A%22integer%22%2C%22descendant%22%3A%22enum%280%2C1%29%22%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/learning-paths"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"branch_id":"integer","descendant":"enum(0,1)"}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/learning-paths',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"branch_id":"integer","descendant":"enum(0,1)"}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/learning-paths'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"branch_id":"integer","descendant":"enum(0,1)"}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "string",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"courses_count": "integer",
"keywords": [
{
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date",
"pivot": {
"course_id": "integer",
"keyword_id": "integer"
}
}
],
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"learning_path_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "integer",
"average_minutes": "integer",
"average_seconds": "integer",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "interger",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"learning_parh_name": "string"
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
View a learning path
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/learning-paths/5" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/learning-paths/5"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/learning-paths/5',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/learning-paths/5'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (401):
{
"message": "Unauthenticated"
}
Example response (400):
{
"message": "General Error"
}
Example response (500):
{
"message": "Internal server error"
}
Example response (200):
{
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "integer",
"original_name": "integer",
"language_id": "integer",
"status": "string",
"category_id": "string",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"completion_material": [
"integer"
],
"show_evaluate_saq": "boolean",
"keywords": [
{
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date",
"pivot": {
"course_id": "integer",
"keyword_id": "integer"
}
}
],
"courses": [
{
"id": "integer",
"parent_training_material_id": "integer",
"title": "string",
"description": "string",
"thumbnail": "string",
"file": "string",
"original_name": "string",
"view_mode_desktop": "string",
"view_mode_tablet": "string",
"view_mode_mobile_app": "string",
"type": "string",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"pivot": {
"learning_path_id": "integer",
"course_id": "integer",
"checked_for_course_completion": "boolean",
"publish_from": "date",
"publish_to": "date",
"sequence_number": "integer",
"number_of_views": "integer",
"set_delay": "time",
"number_of_attempts": "integer",
"folder_id": "integer",
"deleted_at": "date"
},
"users": [
{
"id": "integer",
"course_user_id": "integer",
"user_id": "integer",
"course_id": "integer",
"training_material_id": "integer",
"assign_date": "date",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"score": "integer",
"status": "string",
"assessment_data": "string",
"answer_data": "string",
"attempt": "integer",
"level": "string",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
}
]
}
],
"learning_path_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "string",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"learning_path_notification": {
"id": "integer",
"course_id": "integer",
"on_lp_assignment_checkbox": "boolean",
"on_lp_completion_checkbox": "boolean",
"on_lp_unassignment_checkbox": "boolean",
"for_lp_not_started_notification_afterdays_checkbox": "boolean",
"for_lp_not_started_notification_afterdays": "boolean",
"for_lp_about_to_start_notification_before_days_checkbox": "boolean",
"for_lp_about_to_start_notification_before_days": "boolean",
"for_certificate_about_to_expire_notification_before_checkbox": "boolean",
"for_certificate_about_to_expire_notification_before": "boolean",
"for_expired_course_notification_before_days_checkbox": "boolean",
"for_expired_course_notification_before_days": "boolean",
"for_expired_course_notification_after_days_checkbox": "boolean",
"for_expired_course_notification_after_days": "boolean",
"created_at": "date",
"updated_at": "date"
}
}
Example response (404):
{
"message": "No query results for model [App\\Models\\Course] ID"
}
Received response:
Request failed with error:
View learning path settings
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/learning-paths/learning-path-setting/sint" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/learning-paths/learning-path-setting/sint"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/learning-paths/learning-path-setting/sint',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/learning-paths/learning-path-setting/sint'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (401):
{
"message": "Unauthenticated"
}
Example response (400):
{
"message": "General Error"
}
Example response (500):
{
"message": "Internal server error"
}
Example response (200):
{
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "integer",
"original_name": "integer",
"language_id": "integer",
"status": "string",
"category_id": "string",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"completion_material": [
"integer"
],
"show_evaluate_saq": "boolean",
"keywords": [
{
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date",
"pivot": {
"course_id": "integer",
"keyword_id": "integer"
}
}
],
"courses": [
{
"id": "integer",
"parent_training_material_id": "integer",
"title": "string",
"description": "string",
"thumbnail": "string",
"file": "string",
"original_name": "string",
"view_mode_desktop": "string",
"view_mode_tablet": "string",
"view_mode_mobile_app": "string",
"type": "string",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"pivot": {
"learning_path_id": "integer",
"course_id": "integer",
"checked_for_course_completion": "boolean",
"publish_from": "date",
"publish_to": "date",
"sequence_number": "integer",
"number_of_views": "integer",
"set_delay": "time",
"number_of_attempts": "integer",
"folder_id": "integer",
"deleted_at": "date"
},
"users": [
{
"id": "integer",
"course_user_id": "integer",
"user_id": "integer",
"course_id": "integer",
"training_material_id": "integer",
"assign_date": "date",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"score": "integer",
"status": "string",
"assessment_data": "string",
"answer_data": "string",
"attempt": "integer",
"level": "string",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
}
]
}
],
"learning_path_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "string",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"learning_path_notification": {
"id": "integer",
"course_id": "integer",
"on_lp_assignment_checkbox": "boolean",
"on_lp_completion_checkbox": "boolean",
"on_lp_unassignment_checkbox": "boolean",
"for_lp_not_started_notification_afterdays_checkbox": "boolean",
"for_lp_not_started_notification_afterdays": "boolean",
"for_lp_about_to_start_notification_before_days_checkbox": "boolean",
"for_lp_about_to_start_notification_before_days": "boolean",
"for_certificate_about_to_expire_notification_before_checkbox": "boolean",
"for_certificate_about_to_expire_notification_before": "boolean",
"for_expired_course_notification_before_days_checkbox": "boolean",
"for_expired_course_notification_before_days": "boolean",
"for_expired_course_notification_after_days_checkbox": "boolean",
"for_expired_course_notification_after_days": "boolean",
"created_at": "date",
"updated_at": "date"
}
}
Example response (404):
{
"message": "No query results for model [App\\Models\\Course] ID"
}
Received response:
Request failed with error:
Learning path User Report
APIs for managing Learning path User Report
View Learning path user report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/learning-paths-users?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22name%22%3A%22string%22%2C%22type%22%3A%22string%22%2C%22code%22%3A%22string%22%2C%22category%22%3A%22string%22%2C%22category_id%22%3A%22integer%22%2C%22criteria%22%3A%22string%22%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/learning-paths-users"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"name":"string","type":"string","code":"string","category":"string","category_id":"integer","criteria":"string"}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/learning-paths-users',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"name":"string","type":"string","code":"string","category":"string","category_id":"integer","criteria":"string"}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/learning-paths-users'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"name":"string","type":"string","code":"string","category":"string","category_id":"integer","criteria":"string"}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "intger",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"learning_path_users_count": "integer",
"not_started": "integer",
"completed": "integer",
"not_completed": "integer",
"in_progress": "integer",
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"learning_path_setting": {
"id": "integer",
"learning_path_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"learning_path_name": "string",
"learning_path_name_code": "string",
"learning_path_category_id": "string",
"lp_credits": "integer"
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
Profile
APIs for managing users profile
View a users profile
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/profile/maxime" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/profile/maxime"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/profile/maxime',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/profile/maxime'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (401):
{
"message": "Unauthenticated"
}
Example response (400):
{
"message": "General Error"
}
Example response (500):
{
"message": "Internal server error"
}
Example response (200):
{
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "enum(0,1)",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date"
}
Example response (404):
{
"message": "No query results for model [App\\User] ID"
}
Received response:
Request failed with error:
Roles
APIs for managing roles
View assigned user to particular role
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/view-users/odit" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/view-users/odit"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/view-users/odit',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/view-users/odit'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date",
"users": [
{
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date"
}
]
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
Session Attendence Report
APIs for managing Session Attendence Report
View Session Attendence report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/session-attendence/velit?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22name%22%3A%22string%22%2C%22type%22%3A%22string%22%2C%22code%22%3A%22string%22%2C%22category%22%3A%22string%22%2C%22category_id%22%3A%22integer%22%2C%22criteria%22%3A%22string%22%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/session-attendence/velit"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"name":"string","type":"string","code":"string","category":"string","category_id":"integer","criteria":"string"}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/session-attendence/velit',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"name":"string","type":"string","code":"string","category":"string","category_id":"integer","criteria":"string"}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/session-attendence/velit'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"name":"string","type":"string","code":"string","category":"string","category_id":"integer","criteria":"string"}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "intger",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"course_users_count": "integer",
"not_started": "integer",
"completed": "integer",
"not_completed": "integer",
"in_progress": "integer",
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"course_name": "string"
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
GET api/reports/session-attendence/csv/{id}
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/session-attendence/csv/porro" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/session-attendence/csv/porro"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/session-attendence/csv/porro',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/session-attendence/csv/porro'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"message": "",
"exception": "Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException",
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Routing/AbstractRouteCollection.php",
"line": 43,
"trace": [
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php",
"line": 162,
"function": "handleMatchedRoute",
"class": "Illuminate\\Routing\\AbstractRouteCollection",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
"line": 646,
"function": "match",
"class": "Illuminate\\Routing\\RouteCollection",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
"line": 635,
"function": "findRoute",
"class": "Illuminate\\Routing\\Router",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
"line": 624,
"function": "dispatchToRoute",
"class": "Illuminate\\Routing\\Router",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
"line": 166,
"function": "dispatch",
"class": "Illuminate\\Routing\\Router",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 128,
"function": "Illuminate\\Foundation\\Http\\{closure}",
"class": "Illuminate\\Foundation\\Http\\Kernel",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/app/Http/Middleware/SystemConfigurationMiddleware.php",
"line": 31,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 167,
"function": "handle",
"class": "App\\Http\\Middleware\\SystemConfigurationMiddleware",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/app/Http/Middleware/Localization.php",
"line": 49,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 167,
"function": "handle",
"class": "App\\Http\\Middleware\\Localization",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/fideloper/proxy/src/TrustProxies.php",
"line": 57,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 167,
"function": "handle",
"class": "Fideloper\\Proxy\\TrustProxies",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
"line": 21,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 167,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
"line": 21,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 167,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php",
"line": 27,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 167,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php",
"line": 87,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 167,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 103,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
"line": 141,
"function": "then",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
"line": 110,
"function": "sendRequestThroughRouter",
"class": "Illuminate\\Foundation\\Http\\Kernel",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
"line": 299,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Kernel",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
"line": 287,
"function": "callLaravelOrLumenRoute",
"class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
"line": 92,
"function": "makeApiCall",
"class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
"line": 45,
"function": "makeResponseCall",
"class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
"line": 35,
"function": "makeResponseCallIfConditionsPass",
"class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
"line": 209,
"function": "__invoke",
"class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
"line": 166,
"function": "iterateThroughStrategies",
"class": "Knuckles\\Scribe\\Extracting\\Extractor",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
"line": 95,
"function": "fetchResponses",
"class": "Knuckles\\Scribe\\Extracting\\Extractor",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
"line": 122,
"function": "processRoute",
"class": "Knuckles\\Scribe\\Extracting\\Extractor",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
"line": 69,
"function": "extractEndpointsInfoFromLaravelApp",
"class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
"line": 47,
"function": "extractEndpointsInfoAndWriteToDisk",
"class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Commands/GenerateDocumentation.php",
"line": 51,
"function": "get",
"class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
"line": 36,
"function": "handle",
"class": "Knuckles\\Scribe\\Commands\\GenerateDocumentation",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Container/Util.php",
"line": 40,
"function": "Illuminate\\Container\\{closure}",
"class": "Illuminate\\Container\\BoundMethod",
"type": "::"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
"line": 93,
"function": "unwrapIfClosure",
"class": "Illuminate\\Container\\Util",
"type": "::"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
"line": 37,
"function": "callBoundMethod",
"class": "Illuminate\\Container\\BoundMethod",
"type": "::"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Container/Container.php",
"line": 610,
"function": "call",
"class": "Illuminate\\Container\\BoundMethod",
"type": "::"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Console/Command.php",
"line": 136,
"function": "call",
"class": "Illuminate\\Container\\Container",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/symfony/console/Command/Command.php",
"line": 298,
"function": "execute",
"class": "Illuminate\\Console\\Command",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Console/Command.php",
"line": 121,
"function": "run",
"class": "Symfony\\Component\\Console\\Command\\Command",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/symfony/console/Application.php",
"line": 1028,
"function": "run",
"class": "Illuminate\\Console\\Command",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/symfony/console/Application.php",
"line": 299,
"function": "doRunCommand",
"class": "Symfony\\Component\\Console\\Application",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/symfony/console/Application.php",
"line": 171,
"function": "doRun",
"class": "Symfony\\Component\\Console\\Application",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Console/Application.php",
"line": 93,
"function": "run",
"class": "Symfony\\Component\\Console\\Application",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php",
"line": 129,
"function": "run",
"class": "Illuminate\\Console\\Application",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/artisan",
"line": 37,
"function": "handle",
"class": "Illuminate\\Foundation\\Console\\Kernel",
"type": "->"
}
]
}
Received response:
Request failed with error:
Session Courses Report
APIs for managing Session Courses Report
View sessions courses report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/session-courses?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22course%22%3A%7B%22name%22%3A%22string%22%2C%22code%22%3A%22string%22%2C%22type%22%3A%22string%22%2C%22criteria%22%3A%22string%22%2C%7D%2C%22session%22%3A%7B%22name%22%3A%22string%22%2C%22tool%22%3A%22string%22%2C%22to_start_date%22%3A%22string%22%2C%22from_start_date%22%3A%22string%22%7D%2C%22criteria%22%3A%22string%22%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/session-courses"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"course":{"name":"string","code":"string","type":"string","criteria":"string",},"session":{"name":"string","tool":"string","to_start_date":"string","from_start_date":"string"},"criteria":"string"}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/session-courses',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"course":{"name":"string","code":"string","type":"string","criteria":"string",},"session":{"name":"string","tool":"string","to_start_date":"string","from_start_date":"string"},"criteria":"string"}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/session-courses'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"course":{"name":"string","code":"string","type":"string","criteria":"string",},"session":{"name":"string","tool":"string","to_start_date":"string","from_start_date":"string"},"criteria":"string"}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "inetger",
"course_id": "integer",
"session_id": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"course": {
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_name": "string"
},
"session": {
"id": "integer",
"name": "string",
"description": "string",
"start_time": "date",
"duration": "integer",
"end_time": "date",
"timezone": "string",
"maximum_enrolments": "integer",
"tool": "string",
"account_id": "integer",
"instructor_id": "string",
"start_url": "string",
"join_url": "string",
"password": "string",
"meeting_id": "string",
"instructor_join_btn_display_time": "integer",
"utc_time_sessions": "date",
"user_join_btn_display_time": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"title": "string",
"account": "string",
"instructor": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
},
"session_participants": "string"
}
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
Training Material
APIs for managing trainig material
Retrieves all Training Materials, filtered on input parameters
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/training-materials?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=aliquam" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/training-materials"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "aliquam",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/training-materials',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => 'aliquam',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/training-materials'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': 'aliquam',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "integer",
"parent_training_material_id": "integer",
"title": "string",
"description": "string",
"thumbnail": "string",
"file": "string",
"original_name": "string",
"view_mode_desktop": "string",
"view_mode_tablet": "string",
"view_mode_mobile_app": "string",
"type": "string",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"users_count": "integer",
"training_material_completion_id": "integer",
"answersheet": "boolean",
"file_type": "string"
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
User Course Purchase Report
APIs for managing User Course Purchase Report
View user courses purchase report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/users-course-purchases?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22course%22%3A%7B%22name%22%3A%22string%22%2C%22code%22%3A%22string%22%2C%22type%22%3A%22string%22%2C%22criteria%22%3A%22string%22%2C%22category%22%3A%22string%22%2C%22category_id%22%3A%22integer%22%7D%2C%22from_completion_date%22%3A%22string%22%2C%22to_completion_date%22%3A%22string%22%2C%22status%22%3A%5Bstring%5D%2C%22from_assigned_date%22%3A%22string%22%2C%22to_assigned_date%22%3A%22string%22%2C%22criteria%22%3A%22string%22%2C%22user.branch_id%22%3A%22integer%22%2C%22user.descendant%22%3A%22enum%280%2C1%29%22%2C%22user%22%3A%7B%22username%22%3A%22string%22%2C%22level%22%3A%22string%22%2C%22email%22%3A%22string%22%2C%22first_name%22%3A%22string%22%2C%22last_name%22%3A%22string%22%2C%22role_id%22%3A%22integer%22%2C%22language%22%3A%22string%22%2C%22criteria%22%3A%22string%22%7D%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/users-course-purchases"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"course":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/users-course-purchases',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"course":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/users-course-purchases'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"course":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "inetger",
"user_id": "integer",
"course_id": "intger",
"learning_path_id": "intger",
"session_id": "intger",
"transaction_id": "string",
"tax_percentage": "intger",
"tax_amount": "intger",
"total_amount": "intger",
"total_paid": "intger",
"status": "string",
"created_at": "date",
"updated_at": "date",
"users": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
},
"course": {
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"course_users": {
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date"
},
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_name": "string"
},
"purchase_date": "date"
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
Download user courses purchase report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/users-course-purchases/csv" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/users-course-purchases/csv"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/users-course-purchases/csv',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/users-course-purchases/csv'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "inetger",
"user_id": "integer",
"course_id": "intger",
"learning_path_id": "intger",
"session_id": "intger",
"transaction_id": "string",
"tax_percentage": "intger",
"tax_amount": "intger",
"total_amount": "intger",
"total_paid": "intger",
"status": "string",
"created_at": "date",
"updated_at": "date",
"users": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
},
"course": {
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"course_users": {
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date"
},
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_name": "string"
},
"purchase_date": "date"
}
]
}
Received response:
Request failed with error:
User Courses Report
APIs for managing User Courses Report
View user courses report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/user-courses?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22course%22%3A%7B%22name%22%3A%22string%22%2C%22code%22%3A%22string%22%2C%22type%22%3A%22string%22%2C%22criteria%22%3A%22string%22%2C%22category%22%3A%22string%22%2C%22category_id%22%3A%22integer%22%7D%2C%22from_completion_date%22%3A%22string%22%2C%22to_completion_date%22%3A%22string%22%2C%22status%22%3A%5Bstring%5D%2C%22from_assigned_date%22%3A%22string%22%2C%22to_assigned_date%22%3A%22string%22%2C%22criteria%22%3A%22string%22%2C%22user.branch_id%22%3A%22integer%22%2C%22user.descendant%22%3A%22enum%280%2C1%29%22%2C%22user%22%3A%7B%22username%22%3A%22string%22%2C%22level%22%3A%22string%22%2C%22email%22%3A%22string%22%2C%22first_name%22%3A%22string%22%2C%22last_name%22%3A%22string%22%2C%22role_id%22%3A%22integer%22%2C%22language%22%3A%22string%22%2C%22criteria%22%3A%22string%22%7D%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/user-courses"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"course":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/user-courses',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"course":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/user-courses'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"course":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "inetger",
"user_id": "integer",
"course_id": "intger",
"available_from": "date",
"available_to": "date",
"duration_days": "integer",
"duration_from": "string",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"status": "string",
"assigned_date": "date",
"assigned_by": "integer",
"score": "integer",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"user": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"role": {
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date"
},
"user_status": "string"
},
"course": {
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_name": "string"
},
"status_code": "string"
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
Download user courses report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/user-courses/csv" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/user-courses/csv"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/user-courses/csv',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/user-courses/csv'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "inetger",
"user_id": "integer",
"course_id": "intger",
"available_from": "date",
"available_to": "date",
"duration_days": "integer",
"duration_from": "string",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"status": "string",
"assigned_date": "date",
"assigned_by": "integer",
"score": "integer",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"user": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"role": {
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date"
},
"user_status": "string"
},
"course": {
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_name": "string"
},
"status_code": "string"
}
]
}
Received response:
Request failed with error:
User Learning Path Courses Report
APIs for managing User Learning Path Courses Report
View user learning path course report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/user-learning-path-courses?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22learning_path%22%3A%7B%22name%22%3A%22string%22%2C%22code%22%3A%22string%22%2C%22type%22%3A%22string%22%2C%22criteria%22%3A%22string%22%2C%22category%22%3A%22string%22%2C%22category_id%22%3A%22integer%22%7D%2C%22from_completion_date%22%3A%22string%22%2C%22to_completion_date%22%3A%22string%22%2C%22status%22%3A%5Bstring%5D%2C%22from_assigned_date%22%3A%22string%22%2C%22to_assigned_date%22%3A%22string%22%2C%22criteria%22%3A%22string%22%2C%22user.branch_id%22%3A%22integer%22%2C%22user.descendant%22%3A%22enum%280%2C1%29%22%2C%22user%22%3A%7B%22username%22%3A%22string%22%2C%22level%22%3A%22string%22%2C%22email%22%3A%22string%22%2C%22first_name%22%3A%22string%22%2C%22last_name%22%3A%22string%22%2C%22role_id%22%3A%22integer%22%2C%22language%22%3A%22string%22%2C%22criteria%22%3A%22string%22%7D%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/user-learning-path-courses"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"learning_path":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/user-learning-path-courses',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"learning_path":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/user-learning-path-courses'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"learning_path":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "inetger",
"user_id": "integer",
"learning_path_id": "intger",
"available_from": "date",
"available_to": "date",
"duration_days": "integer",
"duration_from": "string",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"status": "string",
"assigned_date": "date",
"assigned_by": "integer",
"score": "integer",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_learning_path": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"courseUsers": [
{
"id": "integer",
"user_id": "integer",
"course_id": "integer",
"learning_path_id": "integer",
"learning_path_users_id": "integer",
"available_from": "date",
"available_to": "date",
"duration_days": "integer",
"duration_from": "string",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"status": "string",
"assigned_date": "date",
"assigned_by": "integer",
"score": "integer",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
}
],
"user": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"role": {
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date"
},
"user_status": "string"
},
"learning_path": {
"id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"learning_path_setting": {
"id": "integer",
"learning_path_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"learning_path_name": "string",
"learning_path_name_code": "string",
"learning_path_category_id": "string",
"lp_credits": "integer"
},
"course": {
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_name": "string"
},
"status_code": "string",
"course_assigned_date": "date",
"course_first_access_date": "date",
"course_last_access_date": "date",
"course_completion_date": "date",
"courses_lp_status": "string"
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
Download user learning path courses report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/user-learning-path-courses/csv" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/user-learning-path-courses/csv"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/user-learning-path-courses/csv',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/user-learning-path-courses/csv'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "inetger",
"user_id": "integer",
"learning_path_id": "intger",
"available_from": "date",
"available_to": "date",
"duration_days": "integer",
"duration_from": "string",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"status": "string",
"assigned_date": "date",
"assigned_by": "integer",
"score": "integer",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_learning_path": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"courseUsers": [
{
"id": "integer",
"user_id": "integer",
"course_id": "integer",
"learning_path_id": "integer",
"learning_path_users_id": "integer",
"available_from": "date",
"available_to": "date",
"duration_days": "integer",
"duration_from": "string",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"status": "string",
"assigned_date": "date",
"assigned_by": "integer",
"score": "integer",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
}
],
"user": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"role": {
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date"
},
"user_status": "string"
},
"learning_path": {
"id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"learning_path_setting": {
"id": "integer",
"learning_path_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"learning_path_name": "string",
"learning_path_name_code": "string",
"learning_path_category_id": "string",
"lp_credits": "integer"
},
"course": {
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_name": "string"
},
"status_code": "string",
"course_assigned_date": "date",
"course_first_access_date": "date",
"course_last_access_date": "date",
"course_completion_date": "date",
"courses_lp_status": "string"
}
]
}
Received response:
Request failed with error:
User Learning Path Purchase Report
APIs for managing User Learning Path Purchase Report
View user learning path purchase report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/users-learning-path-purchases?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22learningPath%22%3A%7B%22name%22%3A%22string%22%2C%22code%22%3A%22string%22%2C%22type%22%3A%22string%22%2C%22criteria%22%3A%22string%22%2C%22category%22%3A%22string%22%2C%22category_id%22%3A%22integer%22%7D%2C%22from_completion_date%22%3A%22string%22%2C%22to_completion_date%22%3A%22string%22%2C%22status%22%3A%5Bstring%5D%2C%22from_assigned_date%22%3A%22string%22%2C%22to_assigned_date%22%3A%22string%22%2C%22criteria%22%3A%22string%22%2C%22user.branch_id%22%3A%22integer%22%2C%22user.descendant%22%3A%22enum%280%2C1%29%22%2C%22user%22%3A%7B%22username%22%3A%22string%22%2C%22level%22%3A%22string%22%2C%22email%22%3A%22string%22%2C%22first_name%22%3A%22string%22%2C%22last_name%22%3A%22string%22%2C%22role_id%22%3A%22integer%22%2C%22language%22%3A%22string%22%2C%22criteria%22%3A%22string%22%7D%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/users-learning-path-purchases"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"learningPath":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/users-learning-path-purchases',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"learningPath":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/users-learning-path-purchases'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"learningPath":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "inetger",
"user_id": "integer",
"course_id": "intger",
"learning_path_id": "intger",
"session_id": "intger",
"transaction_id": "string",
"tax_percentage": "intger",
"tax_amount": "intger",
"total_amount": "intger",
"total_paid": "intger",
"status": "string",
"created_at": "date",
"updated_at": "date",
"users": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
},
"learning_paths": {
"id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"learning_path_users": {
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date"
},
"learning_path_setting": {
"id": "integer",
"learning_path_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"learning_path_name": "string",
"learning_path_name_code": "string",
"learning_path_category_id": "string",
"lp_credits": "integer"
},
"purchase_date": "date"
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
Download user learning path purchase report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/users-learning-path-purchases/csv" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/users-learning-path-purchases/csv"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/users-learning-path-purchases/csv',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/users-learning-path-purchases/csv'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "inetger",
"user_id": "integer",
"course_id": "intger",
"learning_path_id": "intger",
"session_id": "intger",
"transaction_id": "string",
"tax_percentage": "intger",
"tax_amount": "intger",
"total_amount": "intger",
"total_paid": "intger",
"status": "string",
"created_at": "date",
"updated_at": "date",
"users": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
},
"learning_paths": {
"id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"learning_path_users": {
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date"
},
"learning_path_setting": {
"id": "integer",
"learning_path_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"learning_path_name": "string",
"learning_path_name_code": "string",
"learning_path_category_id": "string",
"lp_credits": "integer"
},
"purchase_date": "date"
}
]
}
Received response:
Request failed with error:
User Learning Path Report
APIs for managing User Learning Path Report
View user learning paths report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/user-learning-path?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22learningPath%22%3A%7B%22name%22%3A%22string%22%2C%22code%22%3A%22string%22%2C%22type%22%3A%22string%22%2C%22criteria%22%3A%22string%22%2C%22category%22%3A%22string%22%2C%22category_id%22%3A%22integer%22%7D%2C%22from_completion_date%22%3A%22string%22%2C%22to_completion_date%22%3A%22string%22%2C%22status%22%3A%5Bstring%5D%2C%22from_assigned_date%22%3A%22string%22%2C%22to_assigned_date%22%3A%22string%22%2C%22criteria%22%3A%22string%22%2C%22user.branch_id%22%3A%22integer%22%2C%22user.descendant%22%3A%22enum%280%2C1%29%22%2C%22user%22%3A%7B%22username%22%3A%22string%22%2C%22level%22%3A%22string%22%2C%22email%22%3A%22string%22%2C%22first_name%22%3A%22string%22%2C%22last_name%22%3A%22string%22%2C%22role_id%22%3A%22integer%22%2C%22language%22%3A%22string%22%2C%22criteria%22%3A%22string%22%7D%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/user-learning-path"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"learningPath":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/user-learning-path',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"learningPath":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/user-learning-path'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"learningPath":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "inetger",
"user_id": "integer",
"learning_path_id": "intger",
"available_from": "date",
"available_to": "date",
"duration_days": "integer",
"duration_from": "string",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"status": "string",
"assigned_date": "date",
"assigned_by": "integer",
"score": "integer",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_learning_path": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"user": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"role": {
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date"
},
"user_status": "string"
},
"learning_path": {
"id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"learning_path_setting": {
"id": "integer",
"learning_path_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"learning_path_name": "string",
"learning_path_name_code": "string",
"learning_path_category_id": "string",
"lp_credits": "integer"
},
"status_code": "string"
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
Download user learning paths report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/user-learning-path/csv" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/user-learning-path/csv"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/user-learning-path/csv',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/user-learning-path/csv'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "inetger",
"user_id": "integer",
"learning_path_id": "intger",
"available_from": "date",
"available_to": "date",
"duration_days": "integer",
"duration_from": "string",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"status": "string",
"assigned_date": "date",
"assigned_by": "integer",
"score": "integer",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_learning_path": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"user": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"role": {
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date"
},
"user_status": "string"
},
"learning_path": {
"id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"learning_path_setting": {
"id": "integer",
"learning_path_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"learning_path_name": "string",
"learning_path_name_code": "string",
"learning_path_category_id": "string",
"lp_credits": "integer"
},
"status_code": "string"
}
]
}
Received response:
Request failed with error:
User Login Report
APIs for managing User Login Report
View user login report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/user-login?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22user%22%3A%7B%22username%22%3A%22string%22%2C%22level%22%3A%22string%22%2C%22email%22%3A%22string%22%2C%22first_name%22%3A%22string%22%2C%22last_name%22%3A%22string%22%2C%22role_id%22%3A%22integer%22%2C%22language%22%3A%22string%22%2C%22criteria%22%3A%22string%22%7D%2C%22from_login_date%22%3A%22string%22%2C%22to_login_date%22%3A%22string%22%2C%22criteria%22%3A%22string%22%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/user-login"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"},"from_login_date":"string","to_login_date":"string","criteria":"string"}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/user-login',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"},"from_login_date":"string","to_login_date":"string","criteria":"string"}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/user-login'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"},"from_login_date":"string","to_login_date":"string","criteria":"string"}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "integer",
"user_id": "integer",
"created_at": "date",
"updated_at": "date",
"user": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"role": {
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date"
},
"user_status": "string"
}
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
Download user login report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/user-login/csv" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/user-login/csv"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/user-login/csv',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/user-login/csv'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "integer",
"user_id": "integer",
"created_at": "date",
"updated_at": "date",
"user": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"role": {
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date"
},
"user_status": "string"
}
}
]
}
Received response:
Request failed with error:
User Session Report
APIs for managing User Session Report
View user sessions report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/user-sessions?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22course%22%3A%7B%22name%22%3A%22string%22%2C%22code%22%3A%22string%22%2C%22type%22%3A%22string%22%2C%22criteria%22%3A%22string%22%2C%22category%22%3A%22string%22%2C%22category_id%22%3A%22integer%22%7D%2C%22session%22%3A%7B%22name%22%3A%22string%22%2C%22tool%22%3A%22string%22%2C%22to_start_date%22%3A%22string%22%2C%22from_start_date%22%3A%22string%22%7D%2C%22from_completion_date%22%3A%22string%22%2C%22to_completion_date%22%3A%22string%22%2C%22status%22%3A%5Bstring%5D%2C%22from_assigned_date%22%3A%22string%22%2C%22to_assigned_date%22%3A%22string%22%2C%22criteria%22%3A%22string%22%2C%22user.branch_id%22%3A%22integer%22%2C%22user.descendant%22%3A%22enum%280%2C1%29%22%2C%22user%22%3A%7B%22username%22%3A%22string%22%2C%22level%22%3A%22string%22%2C%22email%22%3A%22string%22%2C%22first_name%22%3A%22string%22%2C%22last_name%22%3A%22string%22%2C%22role_id%22%3A%22integer%22%2C%22language%22%3A%22string%22%2C%22criteria%22%3A%22string%22%7D%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/user-sessions"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"course":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"session":{"name":"string","tool":"string","to_start_date":"string","from_start_date":"string"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/user-sessions',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"course":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"session":{"name":"string","tool":"string","to_start_date":"string","from_start_date":"string"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/user-sessions'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"course":{"name":"string","code":"string","type":"string","criteria":"string","category":"string","category_id":"integer"},"session":{"name":"string","tool":"string","to_start_date":"string","from_start_date":"string"},"from_completion_date":"string","to_completion_date":"string","status":[string],"from_assigned_date":"string","to_assigned_date":"string","criteria":"string","user.branch_id":"integer","user.descendant":"enum(0,1)","user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"}}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "inetger",
"course_session_id": "integer",
"course_id": "integer",
"user_id": "integer",
"session_id": "integer",
"assign_date": "date",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"score": "integer",
"status": "string",
"instructor": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"user": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"role": {
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date"
},
"user_status": "string"
},
"course": {
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_name": "string"
},
"session": {
"id": "integer",
"name": "string",
"description": "string",
"start_time": "date",
"duration": "integer",
"end_time": "date",
"timezone": "string",
"maximum_enrolments": "integer",
"tool": "string",
"account_id": "integer",
"instructor_id": "string",
"start_url": "string",
"join_url": "string",
"password": "string",
"meeting_id": "string",
"instructor_join_btn_display_time": "integer",
"utc_time_sessions": "date",
"user_join_btn_display_time": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"title": "string",
"account": "string",
"instructor": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
},
"account_meet": "string"
},
"status_code": "string",
"certificate_validity": "string",
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
Download user sessions report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/users-sessions/csv" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/users-sessions/csv"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/users-sessions/csv',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/users-sessions/csv'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "inetger",
"course_session_id": "integer",
"course_id": "integer",
"user_id": "integer",
"session_id": "integer",
"assign_date": "date",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"score": "integer",
"status": "string",
"instructor": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"user": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"role": {
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date"
},
"user_status": "string"
},
"course": {
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "date",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "date",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_name": "string"
},
"session": {
"id": "integer",
"name": "string",
"description": "string",
"start_time": "date",
"duration": "integer",
"end_time": "date",
"timezone": "string",
"maximum_enrolments": "integer",
"tool": "string",
"account_id": "integer",
"instructor_id": "string",
"start_url": "string",
"join_url": "string",
"password": "string",
"meeting_id": "string",
"instructor_join_btn_display_time": "integer",
"utc_time_sessions": "date",
"user_join_btn_display_time": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"title": "string",
"account": "string",
"instructor": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
},
"account_meet": "string"
},
"status_code": "string",
"certificate_validity": "string",
}
]
}
Received response:
Request failed with error:
User Terms Condition Report
APIs for managing User Terms Condition Report
View user term and conditions report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/user-term-condition?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22branches%22%3A%5B%22string%22%5D%2C%22user%22%3A%7B%22username%22%3A%22string%22%2C%22level%22%3A%22string%22%2C%22email%22%3A%22string%22%2C%22first_name%22%3A%22string%22%2C%22last_name%22%3A%22string%22%2C%22role_id%22%3A%22integer%22%2C%22language%22%3A%22string%22%2C%22criteria%22%3A%22string%22%7D%2C%22version%22%3A%22integer%22%2C%22from_acceptance_date%22%3A%22string%22%2C%22criteria%22%3A%22string%22%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/user-term-condition"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"branches":["string"],"user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"},"version":"integer","from_acceptance_date":"string","criteria":"string"}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/user-term-condition',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"branches":["string"],"user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"},"version":"integer","from_acceptance_date":"string","criteria":"string"}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/user-term-condition'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"branches":["string"],"user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"},"version":"integer","from_acceptance_date":"string","criteria":"string"}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "inetger",
"user_id": "integer",
"version_id": "intger",
"sub_version_id": "intger",
"accepted_date": "date",
"created_at": "date",
"updated_at": "date",
"user": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"user_status": "string"
},
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
Download user term and conditions report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/user-term-condition/csv" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/user-term-condition/csv"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/user-term-condition/csv',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/user-term-condition/csv'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "inetger",
"user_id": "integer",
"version_id": "intger",
"sub_version_id": "intger",
"accepted_date": "date",
"created_at": "date",
"updated_at": "date",
"user": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"user_status": "string"
},
}
]
}
Received response:
Request failed with error:
User Training Material Report
APIs for managing User Training Material Report
View user training material report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/user-learning-object?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22user%22%3A%7B%22username%22%3A%22string%22%2C%22level%22%3A%22string%22%2C%22email%22%3A%22string%22%2C%22first_name%22%3A%22string%22%2C%22last_name%22%3A%22string%22%2C%22role_id%22%3A%22integer%22%2C%22language%22%3A%22string%22%2C%22criteria%22%3A%22string%22%7D%2C%22course%22%3A%7B%22name%22%3A%22string%22%2C%22code%22%3A%22string%22%2C%22type%22%3A%22string%22%2C%22criteria%22%3A%22string%22%7D%2C%22training_materials_user%22%3A%7B%22from_completion_date%22%3A%22string%22%2C%22to_completion_date%22%3A%22string%22%2C%22status%22%3A%22string%22%2C%22from_assigned_date%22%3A%22string%22%2C%22to_assigned_date%22%3A%22string%22%7D%2C%22training_material%22%3A%7B%22title%22%3A%22string%22%2C%22type%22%3A%22string%22%7D%2C%22criteria%22%3A%22string%22%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/user-learning-object"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"},"course":{"name":"string","code":"string","type":"string","criteria":"string"},"training_materials_user":{"from_completion_date":"string","to_completion_date":"string","status":"string","from_assigned_date":"string","to_assigned_date":"string"},"training_material":{"title":"string","type":"string"},"criteria":"string"}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/user-learning-object',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"},"course":{"name":"string","code":"string","type":"string","criteria":"string"},"training_materials_user":{"from_completion_date":"string","to_completion_date":"string","status":"string","from_assigned_date":"string","to_assigned_date":"string"},"training_material":{"title":"string","type":"string"},"criteria":"string"}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/user-learning-object'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"user":{"username":"string","level":"string","email":"string","first_name":"string","last_name":"string","role_id":"integer","language":"string","criteria":"string"},"course":{"name":"string","code":"string","type":"string","criteria":"string"},"training_materials_user":{"from_completion_date":"string","to_completion_date":"string","status":"string","from_assigned_date":"string","to_assigned_date":"string"},"training_material":{"title":"string","type":"string"},"criteria":"string"}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "integer",
"user_id": "integer",
"training_material_id": "integer",
"checked_for_course_completion": "string",
"course_id": "integer",
"assign_date": "date",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"score": "integer",
"status": "string",
"attempt": "integer",
"created_at": "date",
"user": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "string",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "string",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"role": {
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date"
},
"user_status": "string"
},
"course": {
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "string",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_name": "string"
},
"training_material": {
"id": "integer",
"parent_training_material_id": "integer",
"title": "string",
"description": "string",
"thumbnail": "string",
"file": "string",
"original_name": "string",
"view_mode_desktop": "string",
"view_mode_tablet": "string",
"view_mode_mobile_app": "string",
"type": "string",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"file_type": "string"
}
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
Download user training material report
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/reports/user-learning-object/csv" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/reports/user-learning-object/csv"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/reports/user-learning-object/csv',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/reports/user-learning-object/csv'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "integer",
"user_id": "integer",
"training_material_id": "integer",
"checked_for_course_completion": "string",
"course_id": "integer",
"assign_date": "date",
"first_access_date": "date",
"last_access_date": "date",
"completion_date": "date",
"score": "integer",
"status": "string",
"attempt": "integer",
"created_at": "date",
"user": {
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "string",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "integer",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "string",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"role": {
"id": "integer",
"name": "string",
"created_at": "date",
"updated_at": "date"
},
"user_status": "string"
},
"course": {
"id": "integer",
"parent_course_id": "integer",
"name": "string",
"type": "string",
"description": "string",
"thumbnail": "string",
"code": "string",
"credits": "integer",
"material": "string",
"original_name": "string",
"language_id": "integer",
"status": "string",
"category_id": "integer",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"course_setting": {
"id": "integer",
"course_id": "integer",
"navigation": "string",
"completion": "string",
"enrollment": "string",
"start_date": "date",
"end_date": "string",
"duration_days": "integer",
"duration_from": "string",
"average_hours": "string",
"average_minutes": "string",
"average_seconds": "string",
"certificate_id": "integer",
"certificate_validity": "string",
"for_days": "integer",
"till_date": "date",
"allow_re_enroll_course": "integer",
"before_days_to_re_enroll": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"language": {
"id": "integer",
"code": "string",
"text": "string",
"created_at": "date",
"updated_at": "date"
},
"course_name": "string"
},
"training_material": {
"id": "integer",
"parent_training_material_id": "integer",
"title": "string",
"description": "string",
"thumbnail": "string",
"file": "string",
"original_name": "string",
"view_mode_desktop": "string",
"view_mode_tablet": "string",
"view_mode_mobile_app": "string",
"type": "string",
"created_by": "integer",
"updated_by": "integer",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date",
"file_type": "string"
}
}
]
}
Received response:
Request failed with error:
Users
APIs for managing users
Upload users via CSV
Example request:
curl --request POST \
"https://your_portal_url/v1/api/users/upload" \
--header "Content-Type: application/json" \
--header "Accept: application/json" \
--data "{
\"users\": \"esse\"
}"
const url = new URL(
"https://your_portal_url/v1/api/users/upload"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
let body = {
"users": "esse"
};
fetch(url, {
method: "POST",
headers,
body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->post(
'https://your_portal_url/v1/api/users/upload',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'json' => [
'users' => 'esse',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/users/upload'
payload = {
"users": "esse"
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('POST', url, headers=headers, json=payload)
response.json()
Example response (200):
{
"message": "OK"
}
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"message": "(number) out of (number) Users added successfully.",
"status": true
}
Example response (200):
{
"message": "(number) out of (number) Users added successfully. Download error file link",
"status": false,
"url": "url"
}
Example response (200):
{
"message": "The User must be a file of type: CSV",
"status": true
}
Received response:
Request failed with error:
Download sample file to upload users
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/users/sample" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/users/sample"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/users/sample',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/users/sample'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (200):
{
"message": "OK"
}
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"Username": "string",
"Level": "string",
"First Name": "string",
"Last Name": "string",
"Password": "string",
"Role": "string",
"Language": "string",
"Branch Code": "string"
}
Received response:
Request failed with error:
Retrieves all users, filtered on input parameters
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/users?sort_dir=string&sort_name=string&pageNumber=0&filter=string&size=0&advanced_filter=%7B%22branch_id%22%3A%221%22%2C%22descendant%22%3A%221%22%7D" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/users"
);
const params = {
"sort_dir": "string",
"sort_name": "string",
"pageNumber": "0",
"filter": "string",
"size": "0",
"advanced_filter": "{"branch_id":"1","descendant":"1"}",
};
Object.keys(params)
.forEach(key => url.searchParams.append(key, params[key]));
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/users',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
'query' => [
'sort_dir' => 'string',
'sort_name' => 'string',
'pageNumber' => '0',
'filter' => 'string',
'size' => '0',
'advanced_filter' => '{"branch_id":"1","descendant":"1"}',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/users'
params = {
'sort_dir': 'string',
'sort_name': 'string',
'pageNumber': '0',
'filter': 'string',
'size': '0',
'advanced_filter': '{"branch_id":"1","descendant":"1"}',
}
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers, params=params)
response.json()
Example response (500):
{
"message": "Internal server error"
}
Example response (403):
{
"message": "You are not authorized"
}
Example response (401):
{
"message": "Unauthenticated"
}
Example response (200):
{
"data": [
{
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "enum(0,1)",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"permission": {
"id": "integer",
"name": "string",
"permissions": "string",
"created_at": "date",
"updated_at": "date",
"deleted_at": "date"
},
"role": "string",
"branches": "array",
"user_status": "string"
}
],
"links": {
"first": "url",
"last": "url",
"prev": "url",
"next": "url"
},
"meta": {
"current_page": "integer",
"from": "integer",
"last_page": "integer",
"path": "url",
"per_page": "integer",
"to": "integer",
"total": "integer"
}
}
Received response:
Request failed with error:
View a user
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/users/1" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/users/1"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/users/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/users/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (401):
{
"message": "Unauthenticated"
}
Example response (400):
{
"message": "General Error"
}
Example response (500):
{
"message": "Internal server error"
}
Example response (200):
{
"id": "integer",
"username": "string",
"first_name": "string",
"last_name": "string",
"name": "string",
"email": "string",
"email_verified_at": "date",
"password_updated": "integer",
"profile_picture": "string",
"level": "string",
"status": "enum(0,1)",
"language": "string",
"date_format": "string",
"timezone": "string",
"permission_id": "integer",
"role_id": "integer",
"expire_on": "date",
"created_at": "date",
"updated_at": "date",
"branches": [
{
"id": "integer",
"name": "string",
"branch_code": "string",
"branch_id": "integer",
"created_at": "date",
"updated_at": "date",
"pivot": {
"user_id": "integer",
"branch_id": "integer"
}
}
],
"role": "string"
}
Example response (404):
{
"message": "No query results for model [App\\User] ID"
}
Received response:
Request failed with error:
Deletes a user
Example request:
curl --request DELETE \
"https://your_portal_url/v1/api/users/1" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/users/1"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "DELETE",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->delete(
'https://your_portal_url/v1/api/users/1',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/users/1'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('DELETE', url, headers=headers)
response.json()
Example response (401):
{
"message": "Unauthenticated"
}
Example response (400):
{
"message": "General Error"
}
Example response (500):
{
"message": "Internal server error"
}
Example response (200):
{
"message": "User deleted successfully.",
"status": true
}
Example response (404):
{
"message": "No query results for model [App\\User] ID"
}
Received response:
Request failed with error:
GET api/users/assign-courses-users/{id}/{status}
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/users/assign-courses-users/ut/aut" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/users/assign-courses-users/ut/aut"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/users/assign-courses-users/ut/aut',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/users/assign-courses-users/ut/aut'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (404):
Show headers
cache-control: no-cache, private
content-type: application/json
{
"message": "",
"exception": "Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException",
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Routing/AbstractRouteCollection.php",
"line": 43,
"trace": [
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Routing/RouteCollection.php",
"line": 162,
"function": "handleMatchedRoute",
"class": "Illuminate\\Routing\\AbstractRouteCollection",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
"line": 646,
"function": "match",
"class": "Illuminate\\Routing\\RouteCollection",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
"line": 635,
"function": "findRoute",
"class": "Illuminate\\Routing\\Router",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
"line": 624,
"function": "dispatchToRoute",
"class": "Illuminate\\Routing\\Router",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
"line": 166,
"function": "dispatch",
"class": "Illuminate\\Routing\\Router",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 128,
"function": "Illuminate\\Foundation\\Http\\{closure}",
"class": "Illuminate\\Foundation\\Http\\Kernel",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/app/Http/Middleware/SystemConfigurationMiddleware.php",
"line": 31,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 167,
"function": "handle",
"class": "App\\Http\\Middleware\\SystemConfigurationMiddleware",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/app/Http/Middleware/Localization.php",
"line": 49,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 167,
"function": "handle",
"class": "App\\Http\\Middleware\\Localization",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/fideloper/proxy/src/TrustProxies.php",
"line": 57,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 167,
"function": "handle",
"class": "Fideloper\\Proxy\\TrustProxies",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
"line": 21,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 167,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
"line": 21,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 167,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php",
"line": 27,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 167,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php",
"line": 87,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 167,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Middleware\\PreventRequestsDuringMaintenance",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
"line": 103,
"function": "Illuminate\\Pipeline\\{closure}",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
"line": 141,
"function": "then",
"class": "Illuminate\\Pipeline\\Pipeline",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
"line": 110,
"function": "sendRequestThroughRouter",
"class": "Illuminate\\Foundation\\Http\\Kernel",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
"line": 299,
"function": "handle",
"class": "Illuminate\\Foundation\\Http\\Kernel",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
"line": 287,
"function": "callLaravelOrLumenRoute",
"class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
"line": 92,
"function": "makeApiCall",
"class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
"line": 45,
"function": "makeResponseCall",
"class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Extracting/Strategies/Responses/ResponseCalls.php",
"line": 35,
"function": "makeResponseCallIfConditionsPass",
"class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
"line": 209,
"function": "__invoke",
"class": "Knuckles\\Scribe\\Extracting\\Strategies\\Responses\\ResponseCalls",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
"line": 166,
"function": "iterateThroughStrategies",
"class": "Knuckles\\Scribe\\Extracting\\Extractor",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Extracting/Extractor.php",
"line": 95,
"function": "fetchResponses",
"class": "Knuckles\\Scribe\\Extracting\\Extractor",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
"line": 122,
"function": "processRoute",
"class": "Knuckles\\Scribe\\Extracting\\Extractor",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
"line": 69,
"function": "extractEndpointsInfoFromLaravelApp",
"class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/GroupedEndpoints/GroupedEndpointsFromApp.php",
"line": 47,
"function": "extractEndpointsInfoAndWriteToDisk",
"class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/knuckleswtf/scribe/src/Commands/GenerateDocumentation.php",
"line": 51,
"function": "get",
"class": "Knuckles\\Scribe\\GroupedEndpoints\\GroupedEndpointsFromApp",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
"line": 36,
"function": "handle",
"class": "Knuckles\\Scribe\\Commands\\GenerateDocumentation",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Container/Util.php",
"line": 40,
"function": "Illuminate\\Container\\{closure}",
"class": "Illuminate\\Container\\BoundMethod",
"type": "::"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
"line": 93,
"function": "unwrapIfClosure",
"class": "Illuminate\\Container\\Util",
"type": "::"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php",
"line": 37,
"function": "callBoundMethod",
"class": "Illuminate\\Container\\BoundMethod",
"type": "::"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Container/Container.php",
"line": 610,
"function": "call",
"class": "Illuminate\\Container\\BoundMethod",
"type": "::"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Console/Command.php",
"line": 136,
"function": "call",
"class": "Illuminate\\Container\\Container",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/symfony/console/Command/Command.php",
"line": 298,
"function": "execute",
"class": "Illuminate\\Console\\Command",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Console/Command.php",
"line": 121,
"function": "run",
"class": "Symfony\\Component\\Console\\Command\\Command",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/symfony/console/Application.php",
"line": 1028,
"function": "run",
"class": "Illuminate\\Console\\Command",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/symfony/console/Application.php",
"line": 299,
"function": "doRunCommand",
"class": "Symfony\\Component\\Console\\Application",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/symfony/console/Application.php",
"line": 171,
"function": "doRun",
"class": "Symfony\\Component\\Console\\Application",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Console/Application.php",
"line": 93,
"function": "run",
"class": "Symfony\\Component\\Console\\Application",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php",
"line": 129,
"function": "run",
"class": "Illuminate\\Console\\Application",
"type": "->"
},
{
"file": "/var/www/html/knowzies_lms_api/artisan",
"line": 37,
"function": "handle",
"class": "Illuminate\\Foundation\\Console\\Kernel",
"type": "->"
}
]
}
Received response:
Request failed with error:
Re-send user creation mail to particular user
Example request:
curl --request GET \
--get "https://your_portal_url/v1/api/users/resend-mail/in" \
--header "Content-Type: application/json" \
--header "Accept: application/json"
const url = new URL(
"https://your_portal_url/v1/api/users/resend-mail/in"
);
const headers = {
"Content-Type": "application/json",
"Accept": "application/json",
};
fetch(url, {
method: "GET",
headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$response = $client->get(
'https://your_portal_url/v1/api/users/resend-mail/in',
[
'headers' => [
'Content-Type' => 'application/json',
'Accept' => 'application/json',
],
]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json
url = 'https://your_portal_url/v1/api/users/resend-mail/in'
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request('GET', url, headers=headers)
response.json()
Example response (400):
{
"message": "General Error"
}
Example response (500):
{
"message": "Internal server error"
}
Example response (404):
{
"message": "No query results for model [App\\User] ID"
}
Example response (200):
{
"message": "Send",
"status": true
}
Received response:
Request failed with error: