Integrate FieldFix fleet data into your applications, AI agents, or custom dashboards. Read and update machines, hours and service logs, read expenses, alerts and fleet totals, and run AI diagnoses. The API is part of FieldFix Pro.
Get up and running in 5 minutes.
On Pro, open app.fieldfix.ai/settings, tap New API key under API, and copy the key. It's only shown once.
All API requests require a Bearer token in the Authorization header.
Keep your API key secret. Don't expose it in client-side code or public repositories.
Manage your fleet inventory.
/machines List all machines in your fleet.
| status | Filter by status: operational, needs_attention, out_of_service |
| type | Filter by machine tag |
/machines/:id Get detailed information about a specific machine.
/machines/:id/hours Update the current hour meter reading.
Track maintenance and service history.
/machines/:id/service Get service history for a machine.
/machines/:id/service Log a new service entry.
Read a machine's fuel, parts, payment and other costs.
/machines/:id/expenses Get expense history for a machine, with all-time, year-to-date and month-to-date totals and an all-time total for each category.
| period | all, ytd or mtd |
| limit | Number of expenses to return (default 50, max 100) |
Service reminders and maintenance alerts.
/alerts Get all active alerts across your fleet.
AI-powered troubleshooting and diagnostics.
/diagnostics Get AI-powered diagnostic analysis for a machine issue.
Aggregate fleet statistics and cost analysis.
/fleet/summary Get fleet-wide statistics.
/fleet/costs Get cost analysis across your fleet.
Connect FieldFix to AI agents using the Model Context Protocol (MCP).
MCP is an open protocol that lets AI assistants securely access external data sources. With FieldFix's MCP integration, your AI can query fleet data directly — no dashboard required.
The FieldFix MCP server is on npm. Run it with:
See the GitHub repository for configuration details.
All errors return a consistent JSON structure.
| HTTP Status | Code | Description |
|---|---|---|
| 400 | invalid_body, invalid_json, missing_field, invalid_field | The request body is missing, isn't valid JSON, or a field is missing or wrong |
| 401 | missing_auth, invalid_auth_format, invalid_key_format, invalid_key, key_revoked | No API key, a badly formed header or key, a key that doesn't match, or a revoked key |
| 403 | subscription_required | The account isn't on FieldFix Pro |
| 404 | not_found | Machine not found |
| 429 | rate_limit_exceeded | Daily limit reached |
| 500 | database_error, create_failed, update_failed | Something went wrong on our end |
| Plan | Requests a day |
|---|---|
| Pro | 10,000 |
| Older Operator plan | 1,000 |
The count resets at midnight UTC. You can see today's count under Calls today in Settings. Past the limit, requests
return 429 with rate_limit_exceeded until the next day.
POST /diagnostics also has a ceiling of 60 AI diagnoses a day, the same as the app.