Supergood | Fiix CMMS API

Supergood | Fiix CMMS API

Programmatically access Fiix CMMS asset data, work orders, preventive maintenance schedules, and inventory/purchasing workflows with a stable REST API. Supergood builds and operates production-grade, unofficial Fiix integrations so your team can automate maintenance operations without heavy custom engineering.

Plain English: Fiix CMMS is maintenance management software used by facilities and industrial teams to manage assets, plan preventive maintenance, process work orders, track parts and purchasing, and report on uptime/downtime. An unofficial API lets you programmatically pull assets, work orders, PM schedules, parts and stock levels, meter readings, vendors, and purchase orders—and push new requests, work orders, PM updates, inventory adjustments, and procurement records into Fiix.

For a tech company integrating with Fiix, this means you can ingest real-time asset hierarchies and work order activity to power dashboards, sync POs and inventory to ERP/accounting (e.g., SAP, NetSuite, QuickBooks), automate PM generation or approvals from your product, or enrich your platform with maintenance history, failure codes, and parts consumption. You can also trigger notifications to technicians, attach documents and photos, create work orders from IoT sensor events, and keep stakeholder systems (ERP, analytics, EAM, IoT) in lockstep.

What is Fiix CMMS?

Fiix CMMS (https://www.fiixsoftware.com/) is a cloud-based computerized maintenance management system that centralizes asset management, work planning, parts inventory, purchasing, and maintenance reporting across plants, facilities, and field operations. Teams use Fiix to register equipment and locations, schedule preventive maintenance (calendar- or meter-based), process corrective work orders, manage parts and vendors, create and approve purchase orders, and analyze KPIs like MTTR, MTBF, and downtime—supported by a technician-friendly mobile app and configurable workflows.

Core product areas include:

  • Asset Management (Equipment, Locations, Hierarchies, Meters, Criticality, Documents)
  • Work Management (Work Orders, Requests, Scheduling, Assignments, Checklists, Failure Codes)
  • Preventive Maintenance & Reliability (PM Templates, Calendar/Meter-Based Triggers, Condition Monitoring)
  • Inventory & Purchasing (Parts/Stock, Warehouses, Vendors, Purchase Orders, Receiving)
  • Mobile & Field Operations (Technician App, Time & Parts Usage, Photos, Offline)
  • Reporting & Analytics (Dashboards, Uptime/Downtime, Compliance, Cost Tracking)

Common data entities:

  • Companies, Sites, Users, Roles/Permissions (Technicians, Planners, Requesters, Admins)
  • Assets/Equipment (metadata, parent/child relationships, location, meters/readings)
  • Work Orders (priority, type, assignments, checklist tasks, parts/labor, status)
  • Preventive Maintenance Schedules (templates, triggers, intervals, next due date)
  • Parts & Inventory (SKUs, stock levels, reorder points, warehouses/bins)
  • Vendors & Purchase Orders (line items, taxes, approvals, receiving)
  • Work Requests (intake, approvals, requester info)
  • Failure Codes & Root Cause (categories, codes, corrective actions)

The Fiix CMMS Integration Challenge

Maintenance teams rely on Fiix every day, but turning portal-based workflows into API-driven automation is non-trivial:

  • Role-aware views: Requesters, technicians, planners, and admins see different data, fields, and approval states
  • Complex relationships: Assets, PM templates, meter readings, work orders, parts, and vendors interconnect across modules
  • Portal-first features: Work request intake, checklists, approvals, and attachments are optimized for front-end flows
  • Authentication complexity: SSO/MFA, service accounts, and multi-site tenancy complicate headless automation
  • Data spread: Key objects span assets, WOs, PMs, inventory, and purchasing—with context spread across multiple screens
  • Export friction: Teams often report CSV-based exports, limited webhooks, and premium-tier API access that make automation harder and costlier than expected

How Supergood Creates Fiix CMMS APIs

Supergood reverse-engineers authenticated browser flows and network interactions to deliver a resilient API endpoint layer for your Fiix tenant.

  • Handles username/password, SSO/OAuth, and MFA (SMS, email, TOTP) securely
  • Maintains session continuity with automated refresh and change detection
  • Normalizes responses so you can integrate once and rely on consistent objects across modules
  • Aligns with customer entitlements and role-based permissions to ensure compliant access

Use Cases

Asset & Site Data Sync

  • Mirror assets, locations, and hierarchies into your internal systems
  • Keep asset metadata and meters current for analytics and reliability programs
  • Normalize criticality, categories, and custom fields for multi-site operations

Work Orders & PM Automation

  • Create corrective WOs from IoT alerts or user requests
  • Auto-generate PMs based on calendars or meter thresholds and assign technicians
  • Track statuses, parts/labor usage, and completion notes across teams

Inventory & Procurement Sync

  • Pull parts and stock levels to power procurement planning
  • Generate and approve purchase orders, then sync to ERP/accounting (e.g., SAP, NetSuite, QuickBooks)
  • Record receipts, update stock, and reconcile costs

Reporting & Downtime Analytics

  • Ingest downtime events and failure codes to drive reliability dashboards
  • Combine maintenance history with production data for MTTR/MTBF analysis
  • Trigger SLA alerts and compliance reports

Available Endpoints

Authentication

POST /sessions: Establish a session using credentials. Supergood manages MFA (SMS, email, TOTP) and SSO/OAuth when enabled. Returns a short-lived auth token maintained by the platform.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/sessions \
  --header 'Authorization: Basic <Base64 encoded token>' \
  --header 'Content-Type: application/json' \
  --data '{
    "username": "[email protected]",
    "password": "<password>",
    "mfa": { "type": "totp", "code": "123456" }
  }'

Example response

{
  "authToken": "eyJhbGciOi...",
  "expiresIn": 3600,
  "user": {
    "id": "u_fx_29f1c0",
    "name": "Maintenance Planner",
    "entitlements": ["assets", "work_orders", "pm_schedules", "inventory", "purchasing"]
  }
}

POST /sessions/refresh: Refresh an existing token to keep sessions uninterrupted.

Assets

GET /assets: List assets/equipment with filters and summary details.

Query parameters

  • siteId: string
  • status: active | inactive | retired
  • criticality: low | medium | high
  • updatedFrom, updatedTo: ISO 8601 timestamps
  • page, pageSize: integers for pagination

Example response

{
  "items": [
    {
      "assetId": "ast_1f8a20",
      "name": "Main Air Compressor",
      "category": "compressor",
      "status": "active",
      "criticality": "high",
      "location": {
        "siteId": "site_omaha_01",
        "area": "Utility Room",
        "line": "Line A"
      },
      "manufacturer": "Ingersoll Rand",
      "model": "IR-AC-450",
      "serialNumber": "AC450-88321",
      "parentAssetId": null,
      "meters": [
        {"meterId": "mtr_hours", "name": "Run Hours", "unit": "hours", "lastReading": 12984}
      ],
      "warrantyEndDate": "2026-12-31",
      "customFields": {"safetyCritical": true},
      "attachments": [{"fileName": "manual.pdf", "url": "https://files.example/manual.pdf"}],
      "updatedAt": "2026-01-20T13:45:00Z"
    }
  ],
  "page": 1,
  "pageSize": 50,
  "total": 1
}

Work Orders

POST /work-orders: Create a work order with priority, assignments, tasks, and planned parts/labor.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/work-orders \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "title": "Replace discharge hose",
    "description": "Hose shows cracking; replace and pressure test",
    "type": "corrective",
    "priority": "high",
    "requestedByUserId": "u_fx_req_7842",
    "assetId": "ast_1f8a20",
    "dueDate": "2026-02-03",
    "assignedToUserIds": ["u_fx_tech_441", "u_fx_tech_205"],
    "checklist": [
      {"step": 1, "text": "Lockout/tagout compressor", "required": true},
      {"step": 2, "text": "Remove and replace discharge hose", "required": true},
      {"step": 3, "text": "Pressure test to spec", "required": true}
    ],
    "plannedParts": [
      {"partId": "prt_hose_2in", "quantity": 1, "warehouseId": "wh_main"}
    ],
    "plannedLaborHours": 3.5,
    "failureCode": {"category": "Leak", "code": "LEAK-01"},
    "attachments": [
      {"fileName": "hose_spec.pdf", "uploadToken": "upl_9ca781"}
    ],
    "notifyAssignees": true,
    "referenceId": "iot-alert-9921"
  }'

Example response

{
  "workOrderId": "wo_7bc180",
  "number": 10527,
  "status": "open",
  "assetId": "ast_1f8a20",
  "priority": "high",
  "createdAt": "2026-01-21T11:20:44Z"
}

Preventive Maintenance Schedules

PATCH /pm-schedules/{pmScheduleId}: Update PM triggers, intervals, tasks, and next due date.

curl --request PATCH \
  --url https://api.supergood.ai/integrations/<integration_id>/pm-schedules/pm_31a55c \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "title": "Compressor Quarterly PM",
    "triggerType": "calendar",
    "intervalDays": 90,
    "gracePeriodDays": 7,
    "tasks": [
      {"step": 1, "text": "Inspect belts and alignment", "required": true},
      {"step": 2, "text": "Change oil and filter", "required": true},
      {"step": 3, "text": "Clean intake and check sensors", "required": false}
    ],
    "nextDueDate": "2026-03-31",
    "autoGenerateWorkOrder": true,
    "assignedToUserIds": ["u_fx_tech_441"],
    "notes": "Add sensor calibration task if deviation > 5%"
  }'

Example response

{
  "pmScheduleId": "pm_31a55c",
  "status": "active",
  "nextDueDate": "2026-03-31",
  "updatedAt": "2026-01-22T08:15:12Z"
}

Purchase Orders

POST /purchase-orders: Create a purchase order for parts with vendor, ship-to site, and line items.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/purchase-orders \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "vendorId": "ven_451293",
    "shipToSiteId": "site_omaha_01",
    "currency": "USD",
    "neededByDate": "2026-02-15",
    "lineItems": [
      {"partId": "prt_hose_2in", "description": "2\" Discharge Hose", "quantity": 4, "unit": "ea", "unitCost": 85.00, "taxRate": 7.5},
      {"partId": "prt_oil_filter_ac", "description": "Oil Filter", "quantity": 10, "unit": "ea", "unitCost": 12.50, "taxRate": 7.5}
    ],
    "terms": "Net 30",
    "notes": "Expedite shipping; partial deliveries allowed.",
    "attachments": [{"fileName": "quote.pdf", "uploadToken": "upl_7fa223"}],
    "referenceId": "erp-req-2981"
  }'

Example response

{
  "purchaseOrderId": "po_51af80",
  "number": "PO-2026-012",
  "status": "awaiting_approval",
  "subtotal": 610.00,
  "taxTotal": 45.75,
  "total": 655.75,
  "createdAt": "2026-01-21T11:20:44Z"
}

Get full API Specs →


Technical Specifications

  • Authentication: Username/password with MFA (SMS, email, TOTP) and SSO/OAuth where enabled; supports service accounts or customer-managed credentials
  • Response format: JSON with consistent resource schemas and pagination across modules
  • Rate limits: Tuned for enterprise throughput while honoring customer entitlements and usage controls
  • Session management: Automatic reauth and cookie/session rotation with health checks
  • Data freshness: Near real-time retrieval of assets, work orders, PM schedules, inventory, and purchasing objects
  • Security: Encrypted transport, scoped tokens, and audit logging; respects Fiix role-based permissions
  • Webhooks: Optional asynchronous delivery for long-running workflows (e.g., approvals, PM generation, PO status changes)

Performance Characteristics

  • Latency: Sub-second responses for list/detail queries under normal load
  • Throughput: Designed for high-volume asset/work order sync and PM/inventory processing
  • Reliability: Retry logic, backoff, and idempotency keys minimize duplicate actions
  • Adaptation: Continuous monitoring for UI/API changes with rapid adapter updates

Getting Started

  1. Schedule Integration Assessment

Book a 30-minute session to confirm your modules, licensing, and authentication model.

  1. Supergood Builds and Validates Your API

We deliver a hardened Fiix adapter tailored to your workflows and entitlements.

  1. Deploy with Monitoring

Go live with continuous monitoring and automatic adjustments as Fiix evolves.

Schedule Integration Call →


Frequently Asked Questions

Q: Which Fiix modules can this integration cover?

Supergood supports workflows across commonly used modules such as Asset Management (Equipment, Locations, Meters), Work Management (Work Orders, Requests, Checklists), Preventive Maintenance (PM Templates, Calendar/Meter Triggers), and Inventory & Purchasing (Parts, Vendors, Purchase Orders), subject to your licensing and entitlements. We scope coverage during integration assessment.

Q: How are MFA and SSO handled for automation?

We support username/password + MFA (SMS, email, TOTP) and can operate behind SSO/OAuth when enabled. Sessions are refreshed automatically with secure challenge handling.

Q: Can you sync inventory and POs to our ERP/accounting system?

Yes. We normalize parts, stock movements, purchase orders, and work order costs to match your ERP/accounting schema and deliver updates via webhooks or polling while complying with rate and permission constraints. We commonly integrate with SAP, NetSuite, and QuickBooks.

Q: Are meter-based PMs and failure codes supported?

Yes. We can ingest meter readings and failure codes, update PM schedules based on thresholds, and capture corrective actions, notes, and attachments with checksum validation and time-limited URLs.



Ready to automate your Fiix CMMS workflows?

Supergood can have your Fiix integration live in days with no ongoing engineering maintenance.

Get Started →

Read more