Reference
Tools
Your AI uses these tools. You don't call them yourself, but knowing them helps you ask for the right thing.
| Tool | What it does |
|---|---|
servicem8addons_guide | FloConnector's guide to building ServiceM8 add-ons, and ServiceM8's API reference. Your AI reads it before writing an add-on. |
servicem8addons_list_addons | Every add-on in the account, and which ones FloConnector built. |
servicem8addons_get_addon | One add-on's status, and for ones FloConnector built, the saved draft and what is live. |
servicem8addons_save_draft | Checks an add-on and saves it as a draft. Nothing reaches ServiceM8. |
servicem8addons_preview_addon | Opens the preview of a saved draft. |
servicem8addons_deploy_addon | Puts the saved draft live, once you've approved it. |
servicem8addons_disable_addon | Switches an add-on off, keeping its draft. |
servicem8addons_get_logs | Listens to an add-on's logs for up to 45 seconds while you use it. |
servicem8addons_request_secret | Makes a one-time link where you enter a key for another service. |
servicem8addons_list_secrets | Lists an add-on's secrets by name. Values are never shown. |
servicem8addons_delete_secret | Deletes one secret. |
Limits
| Limit | |
|---|---|
| Code | One file, up to 256 KB, using only what is built into Node 24. No packages. |
| Settings | Up to 10, shown in ServiceM8 under Settings, Preferences, Add-ons. |
| Requests to ServiceM8 | 180 a minute and 20,000 a day, per add-on, per account. Separate from FloConnector's own connection. |
| Saved memory | 64 KB per job and 64 KB for the whole account, for each add-on. |
| Deploys | 20 to 40 seconds. New buttons and menu entries can take a few minutes more to appear. |
| Automatic runs | About 17 seconds after the change. Changes in the first 10 seconds or so after a deploy can be missed. |
| Watching logs | Up to 45 seconds per listen, plus a few seconds before it starts. |
What add-ons can't do
Add-ons add things to ServiceM8. They can't change how ServiceM8's own screens work, and they only run when something triggers them.
- They can't show a person a different ServiceM8. An add-on can't hide a diary item from one staff member while showing it to another, in ServiceM8's own diary. What it can do is move the item out of the diary for everyone, and show it behind its own button to the roles you choose. That keeps the diary tidy, but it isn't a lock: the item is visible until the add-on gets to it, a phone that already synced it may keep a copy, and anything with access to your ServiceM8 data can still read it.
- They only run when something happens. Someone clicks a button, opens a menu page, or a record the add-on watches changes. There is no "every morning at 8".
- They react to changes, not events. An automatic add-on watches fields on a record, such as a job's status. That covers events like "job completed" too, because completing a job changes its status and completion date.
- They can't use outside code libraries. One file, built from what Node already includes.
Fixes for common problems
I deployed it but can't see the button. Wait a couple of minutes and reload ServiceM8. New add-ons can take a few minutes to appear. In the app, give it a moment to sync. Check you're looking in the right place: on a job under More, Addons for a job button, and under Account, Addons for an add-on page.
The button shows an error, or does nothing. Ask your AI to watch the logs while you click it. The log usually says exactly what failed.
The logs show "403" or a permission error. The add-on is calling something its permissions don't cover. Ask your AI to add the permission it needs, then review and deploy again.
An automatic add-on didn't run. It runs about 17 seconds after the change, and only when a field it watches changes. A change made in the first few seconds after a deploy can be missed, so try again.
It forgets things it should remember. Saving its own settings or notes needs the "save its own settings and notes" permission. Without it, saves fail quietly.
The deploy failed with "Manifest processing failed". Most often an icon link that isn't
a public https:// image, or that has stopped working. Ask your AI to check the icons.
The preview doesn't appear. Your AI app may not show interactive results. Ask for a summary of the draft instead, and test it in a test account.
