Deadline Assessment
Create Deadline Settings
This endpoint allows you to create a deadline settings for your assessment.
Request Body
- Name
year- Type
- number
- Description
Period of the deadline settings
- Name
deadline- Type
- array<object>
- Description
Array of deadline periods
- Name
deadline.*.month_period- Type
- number
- Description
Month should be included between 1 - 12
- Name
deadline.*.due_date- Type
- ISODate
- Description
Due Date/Deadline of the submission
- Name
deadline.*.notes- Type
- string
- Description
Additional Notes of the settings
Response
- Name
message- Type
- string
- Description
Success Message
- Name
status- Type
- string
- Description
Status of the insertion
Request
const data = {
year: 2024,
deadline: [
{ month_period: 1, due_date: "2024-01-31", notes: "" },
{ month_period: 2, due_date: "2024-02-29", notes: "" },
]
}
const response = axios.post(`/v1/kpi/assessment-deadline`, data);
Response
{
"status": "success",
"message": "Deadline Settings Created Successfully",
}
List Settings
This endpoint allows you to retrieve a paginated list of all your assessment deadline settings.
Request
Optional query
- Name
page- Type
- number
- Description
The page number of the paginated assessment deadline settings.
- Default
1
- Default
- Name
limit- Type
- number
- Description
The page size of the paginated assessment deadline settings.
- Default
10
- Default
Response
- Name
data- Type
- array<object>
- Description
Array of assessment deadline settings object
- Name
data.id- Type
- number
- Description
Unique identifier for the deadline settings.
- Name
data.year- Type
- string
- Description
The year.
- Name
data.current_deadline- Type
- string
- Description
Current assessment deadline
- Name
pagination.page- Type
- number
- Description
Page number.
- Name
pagination.page_size- Type
- number
- Description
Number of total document per page.
- Name
pagination.page_count- Type
- number
- Description
Total page count.
- Name
pagination.total_document- Type
- number
- Description
Total filtered document.
Request
const response = axios.get('/v1/kpi/assessment-deadline', {
params: {
page:1,
limit: 10
}
})
Response
{
"data": [
{
"id": 102189,
"year": 2024,
"current_deadline": "2024-09-09T10:00:00.000Z",
},
],
"pagination": {
"page": 1,
"page_size": 1,
"page_count": 1,
"total_document": 1
}
}
Update Deadline Settings
This endpoint allows you to update a deadline settings for your assessment based on a year.
Request Body
- Name
year- Type
- number
- Description
Period of the deadline settings
- Name
deadline- Type
- array<object>
- Description
Array of deadline periods
- Name
deadline.*.month_period- Type
- number
- Description
Month should be included between 1 - 12
- Name
deadline.*.due_date- Type
- ISODate
- Description
Due Date/Deadline of the submission
- Name
deadline.*.notes- Type
- string
- Description
Additional Notes of the settings
Response
- Name
message- Type
- string
- Description
Success Message
- Name
status- Type
- string
- Description
Status of the update
Request
const data = {
year: 2024,
deadline: [
{ month_period: 1, due_date: "2024-01-31", notes: "" },
{ month_period: 2, due_date: "2024-02-29", notes: "" },
]
}
const response = axios.put(`/v1/kpi/assessment-deadline/{year}`, data);
Response
{
"status": "success",
"message": "Deadline Settings Updated Successfully",
}
Delete Deadline Settings
This endpoint allows you to delete a deadline settings for your assessment on a year.
Request Params
- Name
year- Type
- number
- Description
Period of the deadline settings
Response
- Name
message- Type
- string
- Description
Success Message
- Name
status- Type
- string
- Description
Status of the deletion
Request
const year = '2024';
const response = axios.delete(`/v1/kpi/assessment-deadline/${year}`, data);
Response
{
"status": "success",
"message": "Deadline Settings Deleted Successfully",
}
List Late Penalties Reports (Denda)
This endpoint allows you to retrieve a paginated list of all employee's late penalties' report.
Request
Optional query
- Name
page- Type
- number
- Description
The page number of the paginated reports.
- Default
1
- Default
- Name
limit- Type
- number
- Description
The page size of the paginated reports.
- Default
10
- Default
- Name
filter.year- Type
- number
- Description
The year filter of the paginated reports.
- Name
filter.month- Type
- number
- Description
The month filter of the paginated reports.
- Name
filter.current- Type
- boolean
- Description
If set to
true, it returns a response with filter current user id
Response
- Name
data- Type
- array<object>
- Description
Array of penalties object
- Name
data.id- Type
- number
- Description
Unique identifier for the penalty.
- Name
data.issued_at- Type
- ISODate
- Description
The issued date.
- Name
data.amount- Type
- number
- Description
Penalty amount
- Name
data.name- Type
- string
- Description
Target User's Name
- Name
data.job_title- Type
- string
- Description
Target User's Job Title
- Name
data.department- Type
- string
- Description
Target User's Department
- Name
pagination.page- Type
- number
- Description
Page number.
- Name
pagination.page_size- Type
- number
- Description
Number of total document per page.
- Name
pagination.page_count- Type
- number
- Description
Total page count.
- Name
pagination.total_document- Type
- number
- Description
Total filtered document.
Request
const response = axios.get('/v1/reports/penalties', {
params: {
page:1,
limit: 10,
filters: {
year: 2023,
month: 1
},
}
})
Response
{
"data": [
{
"id": 102189,
"issued_at": "2024-09-09T10:00:00.000Z",
"amount": 100000,
"name": "John Doe",
"job_title": "Quality Control",
"department": "IT"
},
],
"pagination": {
"page": 1,
"page_size": 1,
"page_count": 1,
"total_document": 1
}
}

