Skip to main content
Maintenance sheets document work performed on equipment, including preventive maintenance and corrective repairs. They track costs, parts used, and technical observations.

Endpoints

Create maintenance sheet

POST /api/maintenance/sheets/
Creates a new maintenance sheet for documenting equipment maintenance work.
project_id
integer
required
Project associated with the maintenance
resource_item_id
integer
required
Equipment/resource being maintained
date
string
required
Date of maintenance work (YYYY-MM-DD format)
type_maintenance
string
required
Type of maintenance. Options:
  • PREVENTIVO - Preventive maintenance
  • CORRECTIVO - Corrective/repair maintenance
fault_description
text
Description of the fault or issue (required for CORRECTIVO)
fault_causes
text
Analysis of fault causes
parts_used
text
List of parts and materials used
work_performed
text
Detailed description of work performed
observations
text
Additional notes and recommendations
daily_rate
decimal
Daily labor rate
logistics_cost
decimal
Transportation and logistics costs
total_cost
decimal
Total maintenance cost
technician_name
string
Name of technician performing work
supervisor_name
string
Name of supervisor approving work
{
  "success": true,
  "message": "Maintenance sheet created successfully",
  "data": {
    "id": 15,
    "sheet_number": "MNT-2025-0015",
    "project_id": 5,
    "resource_item": {
      "id": 12,
      "code": "BS-001",
      "name": "BATERIA SANITARIA HOMBRE"
    },
    "date": "2025-03-01",
    "type_maintenance": "PREVENTIVO",
    "total_cost": "150.00",
    "status": "IN_PROGRESS"
  }
}

Get maintenance sheet

GET /api/maintenance/sheets/{sheet_id}/
Retrieves complete details of a maintenance sheet.
sheet_id
integer
required
Maintenance sheet ID
{
  "success": true,
  "data": {
    "id": 15,
    "sheet_number": "MNT-2025-0015",
    "project": {
      "id": 5,
      "partner_name": "PETROECUADOR",
      "location": "Camp Site A"
    },
    "resource_item": {
      "id": 12,
      "code": "BS-001",
      "name": "BATERIA SANITARIA HOMBRE",
      "type_equipment": "BTSNHM"
    },
    "date": "2025-03-01",
    "type_maintenance": "PREVENTIVO",
    "fault_description": null,
    "fault_causes": null,
    "parts_used": "Cleaning supplies, lubricants",
    "work_performed": "Routine inspection and cleaning of all components",
    "observations": "Equipment in good condition",
    "daily_rate": "100.00",
    "logistics_cost": "50.00",
    "total_cost": "150.00",
    "technician_name": "Juan Pérez",
    "supervisor_name": "María López",
    "status": "COMPLETED",
    "approved_by": "María López",
    "approved_at": "2025-03-01T18:30:00Z"
  }
}

Update maintenance sheet

PUT /api/maintenance/sheets/
Updates an existing maintenance sheet.
id
integer
required
Maintenance sheet ID to update
date
string
Updated date
fault_description
text
Updated fault description
work_performed
text
Updated work description
total_cost
decimal
Updated total cost
status
string
Updated status: IN_PROGRESS, COMPLETED, APPROVED
Only provide fields that need to be updated. Other fields remain unchanged.

Delete maintenance sheet

DELETE /api/maintenance/sheets/{pk}/delete/
Soft deletes a maintenance sheet (marks as inactive).
pk
integer
required
Maintenance sheet ID to delete
Deleted maintenance sheets can be restored by setting is_deleted=False through the admin interface.

Maintenance sheet model

id
integer
Unique identifier
sheet_number
string
Auto-generated sheet number (format: MNT-YYYY-NNNN)
project
object
Associated project
resource_item
object
Equipment being maintained
date
string
Date of maintenance work
type_maintenance
string
Maintenance type: PREVENTIVO or CORRECTIVO
fault_description
text
Description of fault or issue (required for corrective maintenance)
fault_causes
text
Analysis of what caused the fault
parts_used
text
List of replacement parts and materials used
work_performed
text
Detailed description of maintenance work performed
observations
text
Additional notes, recommendations, or follow-up actions
daily_rate
decimal
Daily labor rate charged
logistics_cost
decimal
Transportation and logistics expenses
total_cost
decimal
Total cost of maintenance
technician_name
string
Name of technician who performed the work
supervisor_name
string
Name of supervisor who reviewed the work
status
string
Current status: IN_PROGRESS, COMPLETED, APPROVED
approved_by
string
Name of person who approved the sheet
approved_at
datetime
Timestamp of approval
is_deleted
boolean
Soft delete flag

Maintenance types

Preventivo

Scheduled maintenance to prevent failures:
  • Routine inspections
  • Cleaning and lubrication
  • Component replacement before failure
  • System calibration

Correctivo

Repairs to fix identified problems:
  • Emergency repairs
  • Component replacement after failure
  • System restoration
  • Problem diagnostics

Workflow example

1

Create maintenance sheet

Create a sheet for preventive maintenance:
curl -X POST https://mantis.peisol.com.ec/api/maintenance/sheets/ \
  -H "Content-Type: application/json" \
  -d '{
    "project_id": 5,
    "resource_item_id": 12,
    "date": "2025-03-01",
    "type_maintenance": "PREVENTIVO",
    "work_performed": "Routine inspection and cleaning",
    "parts_used": "Cleaning supplies, lubricants",
    "daily_rate": 100.00,
    "logistics_cost": 50.00,
    "total_cost": 150.00,
    "technician_name": "Juan Pérez"
  }'
2

Document the work

For corrective maintenance, include fault details:
curl -X POST https://mantis.peisol.com.ec/api/maintenance/sheets/ \
  -H "Content-Type: application/json" \
  -d '{
    "project_id": 5,
    "resource_item_id": 12,
    "date": "2025-03-02",
    "type_maintenance": "CORRECTIVO",
    "fault_description": "Pump not operating, no pressure output",
    "fault_causes": "Worn impeller, damaged seals",
    "parts_used": "New impeller (P/N 12345), Seal kit (P/N 67890)",
    "work_performed": "Replaced pump impeller and seals, tested operation",
    "observations": "Pump now operating at normal pressure. Recommend monitoring",
    "total_cost": 450.00,
    "technician_name": "Juan Pérez"
  }'
3

Complete and approve

Update status when work is completed:
curl -X PUT https://mantis.peisol.com.ec/api/maintenance/sheets/ \
  -H "Content-Type: application/json" \
  -d '{
    "id": 15,
    "status": "COMPLETED"
  }'
Supervisor approves the work:
curl -X PUT https://mantis.peisol.com.ec/api/maintenance/sheets/ \
  -H "Content-Type: application/json" \
  -d '{
    "id": 15,
    "status": "APPROVED",
    "supervisor_name": "María López"
  }'

Best practices

Preventive maintenance:
  • Schedule based on equipment frequency settings
  • Focus on preventing failures
  • Document routine procedures
  • Track patterns over time
Corrective maintenance:
  • Always document the fault clearly
  • Include root cause analysis
  • Detail all parts replaced
  • Note if emergency service was required
Maintenance sheet numbers are auto-generated in the format MNT-YYYY-NNNN:
  • MNT: Maintenance prefix
  • YYYY: Current year
  • NNNN: Sequential number
Break down costs clearly:
  • daily_rate: Labor costs (technician time)
  • logistics_cost: Transportation, fuel, travel expenses
  • total_cost: Labor + logistics + parts
Include parts costs in the total_cost field.
Good maintenance documentation should:
  • Be detailed enough for another technician to understand
  • Include specific part numbers when components are replaced
  • Note any deviations from standard procedures
  • Provide recommendations for future maintenance
Follow this progression:
  1. IN_PROGRESS: Work is being performed
  2. COMPLETED: Work is done, awaiting approval
  3. APPROVED: Work has been reviewed and approved
Approval should be done by a supervisor or project manager.

Integration with scheduling

Maintenance sheets are often created based on scheduled maintenance from the calendar system. The calendar tracks:
  • Frequency types: DAY (interval), WEEK (specific weekdays), MONTH (specific dates)
  • Next maintenance due: Calculated based on last maintenance and frequency
  • Automatic reminders: When maintenance is overdue
See the Calendar scheduling guide for more details.

Calendar events

Schedule maintenance operations

Project resources

View equipment maintenance settings

Equipment

Update equipment status after maintenance

Build docs developers (and LLMs) love