Skip to main content
Tools Reference

Ubiquiti UISP Tools

Written By Christopher Scaminaci

Last updated 7 days ago

Ubiquiti UISP Tools

uisp_ · 258 tools · Free 118 · Pro 140 Ubiquiti's WISP and ISP line - airMAX, airFiber, airCube, UFiber, EdgeRouter - with a full CRM billing system. This is a different product from the UniFi connector and shares no host, header, device model or id space with it. Two static keys are used, chosen by the path: an NMS API token from Settings, Users, API Tokens, and a CRM app key from CRM, System, Security, App Keys. Either may be left out, because network-only and billing-only partners are both normal; a tool that reaches an unconfigured surface says so rather than failing as a credential error. The instance address is your own UISP server or uisp.com tenant and is required. Paging differs: CRM uses limit and offset capped at 1000, most NMS lists are unpaginated and filtered by site or parent, and the NMS task list requires both count and page. NMS returns string ids, CRM returns integers. A CRM app key's read, write or full level is fixed when it is created, so a read-only key connects cleanly and then refuses every write.

All connector tools · Ubiquiti UISP setup guide

Ubiquiti UISP tool groups

Network: Devices

ToolPlanAccessSummary
uisp_authorize_deviceProDestructiveAuthorize a device that is waiting to be adopted, bringing it under UISP management.
uisp_delete_deviceProDestructiveDESTRUCTIVE: remove a device from UISP management, discarding its configuration backups, statistics history and site placement.
uisp_get_deviceFreeRead-onlyGet one device's full status and detail — model, firmware version and whether an upgrade is available, management connection state, IP addressing, uptime, signal and the site it belongs to.
uisp_get_device_statisticsFreeRead-onlyGet one device's performance statistics over time — throughput, signal levels, CPU and memory, ping and errors.
uisp_list_device_macsFreeRead-onlyList every MAC address UISP knows about, mapped to its device.
uisp_list_device_ssidsFreeRead-onlyList the wireless configurations across every managed device — the SSIDs in use and which device broadcasts each.
uisp_list_devicesFreeRead-onlyList the network devices UISP manages, with their status, model, firmware, IP, uptime and parent/site placement.
uisp_locate_deviceProWriteStart flashing a device's locate LED so a technician can identify it physically on a tower or in a rack.
uisp_refresh_deviceProWriteForce UISP to re-read one device's state immediately instead of waiting for the next poll.
uisp_reset_device_statisticsProDestructiveDESTRUCTIVE: erase one device's accumulated statistics counters.
uisp_restart_deviceProDestructiveDESTRUCTIVE: reboot a live device.
uisp_stop_locate_deviceProWriteStop a device's locate LED flashing, reversing uisp_locate_device.

[Ubiquiti UISP] Authorize a device that is waiting to be adopted, bringing it under UISP management. Provide deviceId from uisp_list_devices (pending devices appear there with an unauthorized status). This is a real state change on the device — UISP takes over its management connection and may apply configuration — so it is not something to run speculatively. Removing it again is uisp_delete_device.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the pending device to authorize (from uisp_list_devices).

[Ubiquiti UISP] DESTRUCTIVE: remove a device from UISP management, discarding its configuration backups, statistics history and site placement. Provide deviceId from uisp_list_devices. The hardware keeps running with its current configuration — this removes UISP's record of it, not the device itself — but everything UISP knew about it is gone and re-adopting it starts from nothing. Check what is behind it first with uisp_list_devices using this id as parentId: those devices lose their place in the topology too.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the device to remove from management (from uisp_list_devices). Its backups, statistics and topology position are discarded.

[Ubiquiti UISP] Get one device's full status and detail — model, firmware version and whether an upgrade is available, management connection state, IP addressing, uptime, signal and the site it belongs to. Provide deviceId from uisp_list_devices. Unpaginated single object.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the device to read (from uisp_list_devices).

[Ubiquiti UISP] Get one device's performance statistics over time — throughput, signal levels, CPU and memory, ping and errors. Provide deviceId from uisp_list_devices. Use this to investigate a link that customers report as slow before deciding whether to reboot anything.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the device whose statistics to read (from uisp_list_devices).

[Ubiquiti UISP] List every MAC address UISP knows about, mapped to its device. Use this to identify a device from a MAC seen elsewhere — in a DHCP lease, a switch table or a support ticket — without scanning the whole device list. Unpaginated, whole-network.

[Ubiquiti UISP] List the wireless configurations across every managed device — the SSIDs in use and which device broadcasts each. Useful for auditing naming consistency or finding which radio serves a given SSID. Unpaginated, whole-network.

[Ubiquiti UISP] List the network devices UISP manages, with their status, model, firmware, IP, uptime and parent/site placement. This is the DISCOVERY TOOL for device ids — the id returned here is the deviceId every other uisp_ device tool takes. UNPAGINATED: UISP returns the entire collection in one response, which on a large ISP can be thousands of devices and may be truncated. Narrow it with siteId (from uisp_list_sites) or parentId (the id of an uplink device, to get everything behind it) rather than fetching everything and filtering afterwards.

ParamTypeRequiredDefaultDescription
parentIdstringnonullOptional parent device id to list only the devices behind one uplink (from a previous uisp_list_devices call).
siteIdstringnonullOptional site id to list only the devices at one site (from uisp_list_sites). Strongly recommended on a large network — this endpoint is unpaginated.

[Ubiquiti UISP] Start flashing a device's locate LED so a technician can identify it physically on a tower or in a rack. Provide deviceId from uisp_list_devices. Affects only the LED — no traffic, configuration or service is touched. Reverse it with uisp_stop_locate_device.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the device to flash (from uisp_list_devices).

[Ubiquiti UISP] Force UISP to re-read one device's state immediately instead of waiting for the next poll. Provide deviceId from uisp_list_devices. Use this when a device's reported status looks stale after a change was made on the device itself. It changes nothing on the device — it only refreshes what UISP has recorded.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the device to refresh (from uisp_list_devices).

[Ubiquiti UISP] DESTRUCTIVE: erase one device's accumulated statistics counters. Provide deviceId from uisp_list_devices. The history is discarded permanently — there is no undo and no export — so read anything you need with uisp_get_device_statistics first. Traffic and configuration are unaffected; only the recorded measurements are lost.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the device whose statistics to erase (from uisp_list_devices). The history cannot be recovered.

[Ubiquiti UISP] DESTRUCTIVE: reboot a live device. Provide deviceId from uisp_list_devices. Every customer behind this device loses their connection for the length of the reboot — on a tower radio or an uplink router that can be an entire neighbourhood, not one subscriber. Check what sits behind it first with uisp_list_devices using this device's id as parentId. The reboot cannot be cancelled once started.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the device to reboot (from uisp_list_devices). Everything behind it loses connectivity during the reboot.

[Ubiquiti UISP] Stop a device's locate LED flashing, reversing uisp_locate_device. Provide deviceId from uisp_list_devices. Affects only the LED.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the device to stop flashing (from uisp_list_devices).

Network: Device Configuration

ToolPlanAccessSummary
uisp_get_aircube_deviceFreeRead-onlyGet an airCube access point's device-specific detail.
uisp_get_aircube_network_configFreeRead-onlyGet an airCube's network configuration — addressing, VLANs and bridging.
uisp_get_aircube_system_configFreeRead-onlyGet an airCube's system configuration — hostname, timezone and administrative settings.
uisp_get_airmax_deviceFreeRead-onlyGet an airMAX radio's radio-specific detail — the wireless link data that uisp_get_device does not carry.
uisp_get_device_interfaceFreeRead-onlyGet one interface's full configuration and counters.
uisp_get_device_servicesFreeRead-onlyGet which services are enabled on a device — SSH, SNMP, web management, discovery and similar.
uisp_get_device_systemFreeRead-onlyGet a device's system configuration — hostname, timezone, administrative settings and the like.
uisp_get_device_unms_settingsFreeRead-onlyGet how one device is configured to talk back to UISP — the management connection settings on the device itself.
uisp_get_erouterFreeRead-onlyGet an EdgeRouter's router-specific detail, beyond what uisp_get_device returns for any device.
uisp_get_erouter_dhcp_serverFreeRead-onlyGet one DHCP server's full configuration on an EdgeRouter.
uisp_get_erouter_ospfFreeRead-onlyGet an EdgeRouter's OSPF routing configuration.
uisp_list_aircube_frequency_listsFreeRead-onlyList the frequency lists available to an airCube — the channels it may use.
uisp_list_aircube_stationsFreeRead-onlyList the wireless clients currently associated with an airCube, with their signal levels.
uisp_list_ap_profilesFreeRead-onlyList the access point profiles defined in UISP — the reusable wireless configurations applied to APs.
uisp_list_device_interfacesFreeRead-onlyList a device's network interfaces with their addressing, VLAN and link state.
uisp_list_erouter_dhcp_leasesFreeRead-onlyList the DHCP leases an EdgeRouter has issued — which MAC holds which address, and until when.
uisp_list_erouter_dhcp_serversFreeRead-onlyList the DHCP servers (scopes) configured on an EdgeRouter, with their subnets and ranges.
uisp_list_erouter_ospf_areasFreeRead-onlyList an EdgeRouter's OSPF areas and their settings.
uisp_list_erouter_routesFreeRead-onlyList an EdgeRouter's configured static routes.

[Ubiquiti UISP] Get an airCube access point's device-specific detail. Provide deviceId from uisp_list_devices; it must be an airCube.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the airCube (from uisp_list_devices).

[Ubiquiti UISP] Get an airCube's network configuration — addressing, VLANs and bridging. Provide deviceId from uisp_list_devices. Read-only: the matching write endpoint exists in UISP but is not exposed, because replacing an access point's network configuration remotely can strand it.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the airCube (from uisp_list_devices).

[Ubiquiti UISP] Get an airCube's system configuration — hostname, timezone and administrative settings. Provide deviceId from uisp_list_devices.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the airCube (from uisp_list_devices).

[Ubiquiti UISP] Get an airMAX radio's radio-specific detail — the wireless link data that uisp_get_device does not carry. Provide deviceId from uisp_list_devices; it must be an airMAX device.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the airMAX device (from uisp_list_devices).

[Ubiquiti UISP] Get one interface's full configuration and counters. Provide deviceId from uisp_list_devices and interfaceName from uisp_list_device_interfaces (for example eth0, eth0.100 or switch0 — pass it exactly as listed, dots and all).

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the device (from uisp_list_devices).
interfaceNamestringyesInterface name exactly as returned by uisp_list_device_interfaces, for example eth0 or eth0.100.

[Ubiquiti UISP] Get which services are enabled on a device — SSH, SNMP, web management, discovery and similar. Provide deviceId from uisp_list_devices. Useful for auditing whether management services are exposed consistently across the fleet.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the device (from uisp_list_devices).

[Ubiquiti UISP] Get a device's system configuration — hostname, timezone, administrative settings and the like. Provide deviceId from uisp_list_devices. Read-only: UISP can also write these, but StackJack does not expose that.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the device (from uisp_list_devices).

[Ubiquiti UISP] Get how one device is configured to talk back to UISP — the management connection settings on the device itself. Provide deviceId from uisp_list_devices. Useful when a device shows as disconnected but is otherwise reachable: this shows what it has been told to connect to.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the device (from uisp_list_devices).

[Ubiquiti UISP] Get an EdgeRouter's router-specific detail, beyond what uisp_get_device returns for any device. Provide deviceId from uisp_list_devices — it must be an EdgeRouter; other device types are not served by this endpoint.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the EdgeRouter (from uisp_list_devices).

[Ubiquiti UISP] Get one DHCP server's full configuration on an EdgeRouter. Provide deviceId from uisp_list_devices and serverName from uisp_list_erouter_dhcp_servers.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the EdgeRouter (from uisp_list_devices).
serverNamestringyesDHCP server name exactly as returned by uisp_list_erouter_dhcp_servers.

[Ubiquiti UISP] Get an EdgeRouter's OSPF routing configuration. Provide deviceId from uisp_list_devices. Read-only for the same reason as the routes above.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the EdgeRouter (from uisp_list_devices).

[Ubiquiti UISP] List the frequency lists available to an airCube — the channels it may use. Provide deviceId from uisp_list_devices. Useful when planning around interference.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the airCube (from uisp_list_devices).

[Ubiquiti UISP] List the wireless clients currently associated with an airCube, with their signal levels. Provide deviceId from uisp_list_devices. Use this to check whether a subscriber's equipment is actually connected before investigating further upstream.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the airCube (from uisp_list_devices).

[Ubiquiti UISP] List the access point profiles defined in UISP — the reusable wireless configurations applied to APs. Unpaginated, whole-instance. Use this to see which standard configurations exist before comparing a device against them.

[Ubiquiti UISP] List a device's network interfaces with their addressing, VLAN and link state. This is the DISCOVERY TOOL for interface names — the name returned here is the interfaceName that uisp_get_device_interface takes. Provide deviceId from uisp_list_devices.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the device (from uisp_list_devices).

[Ubiquiti UISP] List the DHCP leases an EdgeRouter has issued — which MAC holds which address, and until when. Provide deviceId from uisp_list_devices. This is the fastest way to tie a customer complaint to a specific address, and pairs with uisp_list_device_macs to identify the hardware.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the EdgeRouter (from uisp_list_devices).

[Ubiquiti UISP] List the DHCP servers (scopes) configured on an EdgeRouter, with their subnets and ranges. This is the DISCOVERY TOOL for DHCP server names — the name returned here is the serverName that uisp_get_erouter_dhcp_server takes. Provide deviceId from uisp_list_devices.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the EdgeRouter (from uisp_list_devices).

[Ubiquiti UISP] List an EdgeRouter's OSPF areas and their settings. Provide deviceId from uisp_list_devices.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the EdgeRouter (from uisp_list_devices).

[Ubiquiti UISP] List an EdgeRouter's configured static routes. Provide deviceId from uisp_list_devices. Read-only — StackJack does not expose the endpoints that add, change or delete a route, because a wrong route disconnects everything behind the router.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the EdgeRouter (from uisp_list_devices).

Network: Device Backups

ToolPlanAccessSummary
uisp_apply_device_backupProDestructiveDESTRUCTIVE: push a saved configuration back onto a live device, replacing whatever it is running now.
uisp_create_device_backupProWriteTake a fresh configuration backup of one device.
uisp_create_multi_device_backupProWriteTake configuration backups of several devices in one call.
uisp_delete_device_backupProDestructiveDESTRUCTIVE: delete one saved configuration backup.
uisp_get_device_backupFreeRead-onlyGet one configuration backup's metadata.
uisp_list_device_backupsFreeRead-onlyList the configuration backups UISP holds for one device, with when each was taken.

[Ubiquiti UISP] DESTRUCTIVE: push a saved configuration back onto a live device, replacing whatever it is running now. Provide deviceId from uisp_list_devices and backupId from uisp_list_device_backups. Everything configured since that backup was taken is lost, the device typically restarts, and customers behind it drop while it does. If the backup predates a change to the device's own addressing or management settings, the device can come back unreachable. Confirm the backup's date with uisp_get_device_backup first, and take a fresh backup with uisp_create_device_backup so the current state is recoverable.

ParamTypeRequiredDefaultDescription
backupIdstringyesId of the backup to apply (from uisp_list_device_backups). Everything configured after this backup was taken is lost.
deviceIdstringyesId of the device to restore (from uisp_list_devices). It will run the backed-up configuration and typically restarts.

[Ubiquiti UISP] Take a fresh configuration backup of one device. Provide deviceId from uisp_list_devices. Additive and safe: it records the device's current configuration and changes nothing on the device. Worth running before any configuration work so there is a known-good snapshot to return to.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the device to back up (from uisp_list_devices).

[Ubiquiti UISP] Take configuration backups of several devices in one call. Provide a JSON object body naming the devices to back up (device ids come from uisp_list_devices). Additive and safe: nothing on any device is changed. On a large fleet prefer a specific list over everything at once — each device is contacted individually.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body identifying the devices to back up, using device ids from uisp_list_devices.

[Ubiquiti UISP] DESTRUCTIVE: delete one saved configuration backup. Provide deviceId from uisp_list_devices and backupId from uisp_list_device_backups. The snapshot is gone permanently — if it was the last known-good configuration for that device, there is nothing to restore from afterwards. The device itself is untouched.

ParamTypeRequiredDefaultDescription
backupIdstringyesId of the backup to delete permanently (from uisp_list_device_backups).
deviceIdstringyesId of the device (from uisp_list_devices).

[Ubiquiti UISP] Get one configuration backup's metadata. Provide deviceId from uisp_list_devices and backupId from uisp_list_device_backups. Use this to confirm you have the backup you think you have — its date in particular — before running uisp_apply_device_backup.

ParamTypeRequiredDefaultDescription
backupIdstringyesId of the backup (from uisp_list_device_backups).
deviceIdstringyesId of the device (from uisp_list_devices).

[Ubiquiti UISP] List the configuration backups UISP holds for one device, with when each was taken. This is the DISCOVERY TOOL for backup ids — the id returned here is the backupId that uisp_get_device_backup, uisp_delete_device_backup and uisp_apply_device_backup take. Provide deviceId from uisp_list_devices.

ParamTypeRequiredDefaultDescription
deviceIdstringyesId of the device whose backups to list (from uisp_list_devices).

Network: Fibre (OLT & ONU)

ToolPlanAccessSummary
uisp_block_onuProDestructiveDESTRUCTIVE: block an ONU, cutting that subscriber's internet connection immediately.
uisp_create_olt_profileProWriteCreate a new profile on an OLT.
uisp_delete_oltProDestructiveDESTRUCTIVE: remove an OLT from UISP management, discarding its profiles, statistics and topology.
uisp_delete_olt_profileProDestructiveDESTRUCTIVE: delete a profile from an OLT.
uisp_delete_onuProDestructiveDESTRUCTIVE: remove an ONU from UISP management, discarding its statistics and its place in the network.
uisp_get_oltFreeRead-onlyGet one OLT's status and detail, including its PON ports.
uisp_get_onuFreeRead-onlyGet one ONU's status and detail — optical signal levels, firmware, uptime and its OLT port.
uisp_list_olt_profilesFreeRead-onlyList one OLT's profiles — the reusable bandwidth and service definitions applied to the ONUs on it.
uisp_list_oltsFreeRead-onlyList the UFiber OLTs — the operator-end fibre terminals every ONU connects through.
uisp_list_onu_clientsFreeRead-onlyList the client devices seen behind one ONU — what is connected inside the subscriber's premises.
uisp_list_onusFreeRead-onlyList the UFiber ONUs (the units in subscribers' premises) with their status, signal and the OLT they are connected to.
uisp_reset_onu_statisticsProDestructiveDESTRUCTIVE: erase one ONU's accumulated statistics counters.
uisp_unblock_onuProWriteRestore service to a blocked ONU, reversing uisp_block_onu.
uisp_update_olt_profileProDestructiveDESTRUCTIVE: replace an OLT profile's settings.
uisp_upgrade_onuProDestructiveDESTRUCTIVE: push a firmware upgrade to an ONU.

[Ubiquiti UISP] DESTRUCTIVE: block an ONU, cutting that subscriber's internet connection immediately. Provide onuId from uisp_list_onus. This is a real service interruption for a paying customer — confirm you have the right ONU with uisp_get_onu first, since ONU ids are not human-readable. Reverse it with uisp_unblock_onu. If the intent is a billing suspension, use uisp_suspend_service instead so the CRM side stays consistent with the network side.

ParamTypeRequiredDefaultDescription
onuIdstringyesId of the ONU to block (from uisp_list_onus). The subscriber loses their connection immediately.

[Ubiquiti UISP] Create a new profile on an OLT. Provide oltId from uisp_list_olts and a JSON object body describing the profile — read an existing one with uisp_list_olt_profiles first to see the expected shape. Additive: a new profile affects nobody until an ONU is assigned to it.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body describing the profile. Model it on an existing profile from uisp_list_olt_profiles.
oltIdstringyesId of the OLT (from uisp_list_olts).

[Ubiquiti UISP] DESTRUCTIVE: remove an OLT from UISP management, discarding its profiles, statistics and topology. Provide oltId from uisp_list_olts. This is the largest-blast-radius delete in the connector: an OLT carries every ONU on it, so check with uisp_list_onus using this id as parentId before running it. The hardware keeps running — this removes UISP's record — but the fibre network's structure in UISP is lost.

ParamTypeRequiredDefaultDescription
oltIdstringyesId of the OLT to remove from management (from uisp_list_olts). Check its ONUs first with uisp_list_onus.

[Ubiquiti UISP] DESTRUCTIVE: delete a profile from an OLT. Provide oltId from uisp_list_olts and profile from uisp_list_olt_profiles. Check what is using it first — deleting a profile that ONUs are assigned to affects those subscribers' service.

ParamTypeRequiredDefaultDescription
oltIdstringyesId of the OLT (from uisp_list_olts).
profilestringyesName of the profile to delete (from uisp_list_olt_profiles).

[Ubiquiti UISP] DESTRUCTIVE: remove an ONU from UISP management, discarding its statistics and its place in the network. Provide onuId from uisp_list_onus. Use this when a unit has genuinely been decommissioned — for a subscriber who is merely leaving, end their billing service with uisp_end_service instead, which keeps the network record intact.

ParamTypeRequiredDefaultDescription
onuIdstringyesId of the ONU to remove from management (from uisp_list_onus).

[Ubiquiti UISP] Get one OLT's status and detail, including its PON ports. Provide oltId from uisp_list_olts. When many ONUs on the same OLT report problems at once, start here rather than with the individual units.

ParamTypeRequiredDefaultDescription
oltIdstringyesId of the OLT (from uisp_list_olts).

[Ubiquiti UISP] Get one ONU's status and detail — optical signal levels, firmware, uptime and its OLT port. Provide onuId from uisp_list_onus. Optical receive power is the first thing to check on a fibre fault report.

ParamTypeRequiredDefaultDescription
onuIdstringyesId of the ONU (from uisp_list_onus).

[Ubiquiti UISP] List one OLT's profiles — the reusable bandwidth and service definitions applied to the ONUs on it. This is the DISCOVERY TOOL for profile names, which uisp_update_olt_profile and uisp_delete_olt_profile take. Provide oltId from uisp_list_olts.

ParamTypeRequiredDefaultDescription
oltIdstringyesId of the OLT (from uisp_list_olts).

[Ubiquiti UISP] List the UFiber OLTs — the operator-end fibre terminals every ONU connects through. This is the DISCOVERY TOOL for OLT ids, and an OLT's id is also the parentId that narrows uisp_list_onus to that OLT's subscribers. Unpaginated, whole-network.

[Ubiquiti UISP] List the client devices seen behind one ONU — what is connected inside the subscriber's premises. Provide onuId from uisp_list_onus. Use this to tell an empty connection apart from a busy one when a subscriber reports an outage.

ParamTypeRequiredDefaultDescription
onuIdstringyesId of the ONU (from uisp_list_onus).

[Ubiquiti UISP] List the UFiber ONUs (the units in subscribers' premises) with their status, signal and the OLT they are connected to. This is the DISCOVERY TOOL for ONU ids. UNPAGINATED — narrow it with siteId (from uisp_list_sites) or parentId (an OLT's device id, to list only the ONUs on that OLT) rather than pulling the whole network.

ParamTypeRequiredDefaultDescription
parentIdstringnonullOptional parent OLT device id to list only the ONUs behind that OLT (from uisp_list_olts).
siteIdstringnonullOptional site id to list only the ONUs at one site (from uisp_list_sites).

[Ubiquiti UISP] DESTRUCTIVE: erase one ONU's accumulated statistics counters. Provide onuId from uisp_list_onus. The history is discarded permanently with no undo — read anything you need first. The connection itself is unaffected; only the recorded measurements are lost, which matters when the counters are the evidence for an intermittent fault.

ParamTypeRequiredDefaultDescription
onuIdstringyesId of the ONU whose statistics to erase (from uisp_list_onus). The history cannot be recovered.

[Ubiquiti UISP] Restore service to a blocked ONU, reversing uisp_block_onu. Provide onuId from uisp_list_onus. This gives a subscriber their connection back — it is the recovery action, not a disruptive one. Note that if the subscriber was blocked because their UISP billing service is suspended, the CRM side may block them again; clear the suspension with uisp_cancel_service_suspension instead.

ParamTypeRequiredDefaultDescription
onuIdstringyesId of the ONU to restore (from uisp_list_onus).

[Ubiquiti UISP] DESTRUCTIVE: replace an OLT profile's settings. Provide oltId from uisp_list_olts, profile from uisp_list_olt_profiles, and a JSON object body. Two reasons this is not a light edit: the body REPLACES the profile wholesale, so any setting you omit is cleared rather than left alone — send the complete profile, reading the current one from uisp_list_olt_profiles first; and the change applies to EVERY ONU already using this profile, so a wrong bandwidth value re-rates every subscriber on it at once.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the COMPLETE profile. Omitted settings are cleared, not preserved — read the current profile from uisp_list_olt_profiles and send it back with your changes applied.
oltIdstringyesId of the OLT (from uisp_list_olts).
profilestringyesName of the profile to replace (from uisp_list_olt_profiles).

[Ubiquiti UISP] DESTRUCTIVE: push a firmware upgrade to an ONU. Provide onuId from uisp_list_onus. The subscriber loses their connection while it installs and reboots, and a failed flash can leave the unit needing a physical visit. Firmware cannot be rolled back from here. Check the current version with uisp_get_onu first, and prefer a maintenance window.

ParamTypeRequiredDefaultDescription
onuIdstringyesId of the ONU to upgrade (from uisp_list_onus). The subscriber is offline during the upgrade.

Network: Sites

ToolPlanAccessSummary
uisp_create_siteProWriteCreate a new site.
uisp_delete_siteProDestructiveDESTRUCTIVE: delete a site.
uisp_get_siteFreeRead-onlyGet one site's full detail — address, coordinates, contact information, elevation and status.
uisp_list_site_imagesFreeRead-onlyList the metadata for the photographs attached to a site — names, descriptions and ordering, as recorded during installs and surveys.
uisp_list_sitesFreeRead-onlyList the sites in UISP — towers, points of presence and subscriber locations — with their addresses, coordinates and status.
uisp_update_siteProDestructiveDESTRUCTIVE: replace a site's details.

[Ubiquiti UISP] Create a new site. Provide a JSON object body with the site's details — name, address and coordinates at minimum; read an existing site with uisp_get_site to see the full shape. Additive: a new site is an empty location record that affects nothing until devices are placed at it.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body describing the site — typically name, address and coordinates. Model it on the output of uisp_get_site.

[Ubiquiti UISP] DESTRUCTIVE: delete a site. Provide siteId from uisp_list_sites. Check what is at the site first with uisp_list_devices using this id as siteId: deleting a site with devices at it removes their location, their attached photographs and any survey record, and the billing side may reference the site through a bound subscriber service. There is no undo.

ParamTypeRequiredDefaultDescription
siteIdstringyesId of the site to delete (from uisp_list_sites). Check its devices first with uisp_list_devices.

[Ubiquiti UISP] Get one site's full detail — address, coordinates, contact information, elevation and status. Provide siteId from uisp_list_sites.

ParamTypeRequiredDefaultDescription
siteIdstringyesId of the site (from uisp_list_sites).

[Ubiquiti UISP] List the metadata for the photographs attached to a site — names, descriptions and ordering, as recorded during installs and surveys. Provide siteId from uisp_list_sites. This returns the records only, not the image data.

ParamTypeRequiredDefaultDescription
siteIdstringyesId of the site (from uisp_list_sites).

[Ubiquiti UISP] List the sites in UISP — towers, points of presence and subscriber locations — with their addresses, coordinates and status. This is the DISCOVERY TOOL for site ids, and a site id is the siteId filter that keeps the unpaginated uisp_list_devices and uisp_list_onus responses to a workable size. Start here when working on a network you do not already know.

ParamTypeRequiredDefaultDescription
siteIdstringnonullOptional site id to return just that one site instead of the whole list.

[Ubiquiti UISP] DESTRUCTIVE: replace a site's details. Provide siteId from uisp_list_sites and a JSON object body. This REPLACES the site record rather than patching it — any field you omit is cleared, not left alone — so read the current site with uisp_get_site and send it back with your changes applied. Losing a site's coordinates or address is not merely cosmetic: installation and field-job routing depend on them.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the COMPLETE site record. Omitted fields are cleared — read the current site with uisp_get_site first and send it back with your changes applied.
siteIdstringyesId of the site to replace (from uisp_list_sites).

Network: Health, Logs & Outages

ToolPlanAccessSummary
uisp_get_nms_settingsFreeRead-onlyGet the UISP instance's own settings — how it is configured to run.
uisp_get_nms_statisticsFreeRead-onlyGet network-wide statistics over a time interval.
uisp_get_nms_summaryFreeRead-onlyGet the whole-network summary — device and site counts, how many devices are online, disconnected or unauthorized, and outstanding firmware updates.
uisp_get_nms_update_statusFreeRead-onlyGet the UISP server's own software version and whether an update is available.
uisp_list_discovery_resultsFreeRead-onlyList devices UISP has discovered on the network but that are not yet managed.
uisp_list_firmwaresFreeRead-onlyList the device firmware images UISP holds, by platform and version.
uisp_list_logsFreeRead-onlyList UISP's system log entries — device connections and disconnections, configuration changes, alerts and administrative actions.
uisp_list_outagesFreeRead-onlyList recorded network outages — when devices went down, for how long, and whether they have recovered.

[Ubiquiti UISP] Get the UISP instance's own settings — how it is configured to run. Read-only: StackJack does not expose the matching write, because changing a live UISP server's settings from a chat tool is server administration rather than network operations.

[Ubiquiti UISP] Get network-wide statistics over a time interval. The interval is REQUIRED and must be exactly one of hour, day or month — UISP rejects the call without it, so there is no default. Use hour for a live incident, day for recent trends and month for capacity planning.

ParamTypeRequiredDefaultDescription
intervalstringyesREQUIRED. The time interval, exactly one of: hour, day, month.

[Ubiquiti UISP] Get the whole-network summary — device and site counts, how many devices are online, disconnected or unauthorized, and outstanding firmware updates. This is the cheapest overall health check and the right first call when asked how the network is doing.

ParamTypeRequiredDefaultDescription
logsLevelstringnonullOptional log level for the summary's log counts. UISP REQUIRES this parameter and rejects the call without it, so StackJack sends info when you omit it. Supply a value only if this UISP instance expects a different one.

[Ubiquiti UISP] Get the UISP server's own software version and whether an update is available. This is about UISP itself, not device firmware — for that use uisp_list_firmwares. Read-only: triggering the update is not exposed.

[Ubiquiti UISP] List devices UISP has discovered on the network but that are not yet managed. Use this to find newly installed equipment waiting to be adopted; adopt one with uisp_authorize_device.

[Ubiquiti UISP] List the device firmware images UISP holds, by platform and version. Use this to see which versions are available before upgrading anything, and to spot devices running something no longer in the inventory. This is device firmware — the UISP server's own version is uisp_get_nms_update_status.

[Ubiquiti UISP] List UISP's system log entries — device connections and disconnections, configuration changes, alerts and administrative actions. Narrow it with siteId (from uisp_list_sites) or deviceId (from uisp_list_devices); unfiltered, a busy network produces a very large response.

ParamTypeRequiredDefaultDescription
deviceIdstringnonullOptional device id to show only that device's log entries (from uisp_list_devices).
siteIdstringnonullOptional site id to show only that site's log entries (from uisp_list_sites).

[Ubiquiti UISP] List recorded network outages — when devices went down, for how long, and whether they have recovered. Narrow it with siteId (from uisp_list_sites) or deviceId (from uisp_list_devices). This is the tool for questions about reliability history and for telling a one-off from a recurring fault.

ParamTypeRequiredDefaultDescription
deviceIdstringnonullOptional device id to show only that device's outages (from uisp_list_devices).
siteIdstringnonullOptional site id to show only that site's outages (from uisp_list_sites).

Network: Tasks

ToolPlanAccessSummary
uisp_cancel_taskProDestructiveDESTRUCTIVE: cancel a running task.
uisp_get_taskFreeRead-onlyGet the per-device detail inside one task — for a mass upgrade, which devices succeeded, which failed and which are still pending.
uisp_list_tasksFreeRead-onlyList UISP's background tasks — mass firmware upgrades and similar long-running jobs — with their status and progress.

[Ubiquiti UISP] DESTRUCTIVE: cancel a running task. Provide taskId from uisp_list_tasks. Cancelling a mass firmware upgrade part-way leaves the fleet on MIXED versions — devices already upgraded stay upgraded, the rest do not — and a device mid-flash at the moment of cancellation may be left needing attention. Check what has already completed with uisp_get_task first. There is no resume; the remainder has to be started again from UISP.

ParamTypeRequiredDefaultDescription
taskIdstringyesId of the task to cancel (from uisp_list_tasks). Already-completed work is not undone.

[Ubiquiti UISP] Get the per-device detail inside one task — for a mass upgrade, which devices succeeded, which failed and which are still pending. Provide taskId from uisp_list_tasks. Paginated with mandatory count and page (defaults 100 and 1), because a mass upgrade can cover the whole fleet.

ParamTypeRequiredDefaultDescription
countintegerno100Results per page (default 100, maximum 1000). Always sent — UISP requires it.
pageintegerno1Page number, starting at 1 (default 1). Always sent — UISP requires it.
taskIdstringyesId of the task (from uisp_list_tasks).

[Ubiquiti UISP] List UISP's background tasks — mass firmware upgrades and similar long-running jobs — with their status and progress. This is the DISCOVERY TOOL for task ids. Unlike the rest of the UISP network surface this endpoint IS paginated, and its paging is mandatory: count and page are always sent (defaults 100 and 1). Optionally filter by status to see only what is still running.

ParamTypeRequiredDefaultDescription
countintegerno100Results per page (default 100, maximum 1000). Always sent — UISP requires it.
pageintegerno1Page number, starting at 1 (default 1). Always sent — UISP requires it.
statusstringnonullOptional status filter, to show only tasks in one state (for example still-running tasks).

Network: Operator Users

ToolPlanAccessSummary
uisp_create_operator_userProDestructiveCreate a staff account with access to UISP.
uisp_delete_operator_userProDestructiveDESTRUCTIVE: delete a staff account, revoking its access to UISP immediately.
uisp_list_operator_usersFreeRead-onlyList the staff accounts that can sign in to UISP, with their roles and status.
uisp_reinvite_operator_userProDestructiveResend the UISP invitation email to a staff account that has not finished signing up.
uisp_update_operator_userProDestructiveDESTRUCTIVE: replace a staff account's details and role.

[Ubiquiti UISP] Create a staff account with access to UISP. Provide a JSON object body with the user's details and role — read an existing user from uisp_list_operator_users to see the shape. This GRANTS access to the ISP's management system, so it is treated as a privileged action rather than an ordinary create: the new account can reach the network the role allows, and UISP typically emails the person an invitation. Check the role carefully before running it.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the new user's details and role. Model it on an existing user from uisp_list_operator_users, and check the role grants only what is intended.

[Ubiquiti UISP] DESTRUCTIVE: delete a staff account, revoking its access to UISP immediately. Provide userId from uisp_list_operator_users. There is no undo — the account has to be created again and the person re-invited — and deleting the last administrator can lock the organisation out of its own UISP instance. Confirm the account with uisp_list_operator_users first.

ParamTypeRequiredDefaultDescription
userIdstringyesId of the operator user to delete (from uisp_list_operator_users). Access is revoked immediately and cannot be restored.

[Ubiquiti UISP] List the staff accounts that can sign in to UISP, with their roles and status. These are the ISP's own operators, NOT its subscribers — for customers use uisp_list_clients. This is the DISCOVERY TOOL for operator user ids, and the right tool for an access review.

[Ubiquiti UISP] Resend the UISP invitation email to a staff account that has not finished signing up. Provide userId from uisp_list_operator_users. This SENDS REAL EMAIL to a real person and cannot be recalled once delivered, so check you have the right user — and that they have not already activated — before running it.

ParamTypeRequiredDefaultDescription
userIdstringyesId of the operator user to email again (from uisp_list_operator_users). A real message is sent immediately.

[Ubiquiti UISP] DESTRUCTIVE: replace a staff account's details and role. Provide userId from uisp_list_operator_users and a JSON object body. Two reasons for care: the body REPLACES the record, so any field you omit is cleared rather than left alone — read the current user first and send it back with your changes applied; and the record includes the ROLE, so a careless update can widen or remove someone's access to the whole management system.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the COMPLETE user record including the role. Omitted fields are cleared — read the current user from uisp_list_operator_users first.
userIdstringyesId of the operator user to replace (from uisp_list_operator_users).

Billing: Subscribers

ToolPlanAccessSummary
uisp_add_client_tagProWriteAttach a tag to a subscriber.
uisp_archive_clientProDestructiveDESTRUCTIVE: archive a subscriber, removing them from the active customer list.
uisp_create_clientProWriteCreate a new subscriber record.
uisp_create_client_logProWriteAdd a note to a subscriber's activity log.
uisp_delete_clientProDestructiveDESTRUCTIVE: delete a subscriber and everything hanging off them — services, invoices, payments and log history.
uisp_delete_client_logProDestructiveDESTRUCTIVE: delete a client log entry permanently.
uisp_geocode_clientProWriteWork out map coordinates for a subscriber from the address already on their record.
uisp_get_clientFreeRead-onlyGet one subscriber's full record — contact details, billing address, account balance, tags, custom attributes and status.
uisp_get_client_logFreeRead-onlyGet one client log entry in full.
uisp_list_client_logsFreeRead-onlyList the client activity log — the notes and recorded events staff have attached to subscriber accounts.
uisp_list_clientsFreeRead-onlyList the ISP's subscribers with their contact details, account balance and status.
uisp_remove_client_tagProWriteRemove a tag from a subscriber, reversing uisp_add_client_tag.
uisp_send_client_invitationProDestructiveEmail a subscriber an invitation to the UISP customer portal.
uisp_update_clientProWriteUpdate a subscriber's details.
uisp_update_client_logProWriteEdit an existing client log entry.

[Ubiquiti UISP] Attach a tag to a subscriber. Provide clientId from uisp_list_clients and tagId from uisp_list_client_tags. A reversible label with no billing or service effect; remove it again with uisp_remove_client_tag.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the subscriber (from uisp_list_clients).
tagIdstringyesId of the tag to attach (from uisp_list_client_tags).

[Ubiquiti UISP] DESTRUCTIVE: archive a subscriber, removing them from the active customer list. Provide clientId from uisp_list_clients. Archiving is how a former customer is retired — their billing history is kept — but it changes how the account behaves everywhere in UISP and is not an ordinary edit. End their subscription first with uisp_end_service; archiving is not itself a way to stop billing.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the subscriber to archive (from uisp_list_clients).

[Ubiquiti UISP] Create a new subscriber record. Provide a JSON object body with their details — read an existing subscriber with uisp_get_client to see the shape, including which organization the account belongs to. Additive: the new record bills nobody and affects no service until a subscription is added with uisp_create_service. It does not email the subscriber; that is uisp_send_client_invitation.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the subscriber's details. Model it on the output of uisp_get_client.

[Ubiquiti UISP] Add a note to a subscriber's activity log. Provide a JSON object body including the subscriber id (from uisp_list_clients) and the note. Additive: it records what happened and changes nothing about the account. Use it to leave an audit trail when acting on an account.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the subscriber id (from uisp_list_clients) and the note text. Model it on an entry from uisp_list_client_logs.

[Ubiquiti UISP] DESTRUCTIVE: delete a subscriber and everything hanging off them — services, invoices, payments and log history. Provide clientId from uisp_list_clients. This destroys billing records that an ISP normally has to retain, and it cannot be undone. For a customer who is simply leaving, use uisp_end_service and then uisp_archive_client instead, which keeps the financial history intact. Only delete a record created in error.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the subscriber to delete (from uisp_list_clients). Their services, invoices, payments and history go with them.

[Ubiquiti UISP] DESTRUCTIVE: delete a client log entry permanently. Provide logId from uisp_list_client_logs. There is no undo, and these entries are often the only record of what was agreed with a customer — on a disputed account, deleting one destroys the evidence.

ParamTypeRequiredDefaultDescription
logIdstringyesId of the log entry to delete permanently (from uisp_list_client_logs).

[Ubiquiti UISP] Work out map coordinates for a subscriber from the address already on their record. Provide clientId from uisp_list_clients. This fills in derived data and changes nothing the operator entered; run it after correcting an address so the subscriber appears in the right place on the map.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the subscriber (from uisp_list_clients).

[Ubiquiti UISP] Get one subscriber's full record — contact details, billing address, account balance, tags, custom attributes and status. Provide clientId from uisp_list_clients. Read this before any change to the account, and note the balance: it is what tells an overdue subscriber from a current one.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the subscriber (from uisp_list_clients).

[Ubiquiti UISP] Get one client log entry in full. Provide logId from uisp_list_client_logs.

ParamTypeRequiredDefaultDescription
logIdstringyesId of the log entry (from uisp_list_client_logs).

[Ubiquiti UISP] List the client activity log — the notes and recorded events staff have attached to subscriber accounts. Paginated with limit and offset (default 100, maximum 1000). Narrow to one subscriber with clientId from uisp_list_clients. This is where the history of a disputed account usually lives.

ParamTypeRequiredDefaultDescription
clientIdstringnonullOptional subscriber id to show only that account's log entries (from uisp_list_clients).
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] List the ISP's subscribers with their contact details, account balance and status. This is the DISCOVERY TOOL for client ids — the id returned here is the clientId that filters uisp_list_services, uisp_list_invoices, uisp_list_payments, uisp_list_quotes and uisp_list_credit_notes. Paginated with limit and offset (default 100 per page, maximum 1000). Optionally scope to one organization from uisp_list_organizations when the ISP bills under more than one legal entity.

ParamTypeRequiredDefaultDescription
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).
organizationIdstringnonullOptional organization id to list only that entity's subscribers (from uisp_list_organizations).

[Ubiquiti UISP] Remove a tag from a subscriber, reversing uisp_add_client_tag. Provide clientId from uisp_list_clients and tagId from uisp_list_client_tags. This detaches the label only — the tag itself and the subscriber are untouched.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the subscriber (from uisp_list_clients).
tagIdstringyesId of the tag to detach (from uisp_list_client_tags).

[Ubiquiti UISP] Email a subscriber an invitation to the UISP customer portal. Provide clientId from uisp_list_clients. This SENDS REAL EMAIL to a paying customer and cannot be recalled once delivered — check the address on their record with uisp_get_client first, and check they have not already signed up.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the subscriber to email (from uisp_list_clients). A real message is sent immediately.

[Ubiquiti UISP] Update a subscriber's details. Provide clientId from uisp_list_clients and a JSON object body with ONLY the fields you want to change — this is a partial update, so anything you omit is left as it is. Contact and address edits only; it does not touch their services, invoices or balance.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the subscriber to update (from uisp_list_clients).
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.

[Ubiquiti UISP] Edit an existing client log entry. Provide logId from uisp_list_client_logs and a JSON object body with only the fields to change — this is a partial update, so omitted fields are left alone.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.
logIdstringyesId of the log entry to edit (from uisp_list_client_logs).

Billing: Subscriber Contacts & Bank Accounts

ToolPlanAccessSummary
uisp_create_client_bank_accountProWriteStore a bank account against a subscriber for direct-debit collection.
uisp_create_client_contactProWriteAdd a contact to a subscriber's account.
uisp_create_client_tagProWriteCreate a new tag in the vocabulary.
uisp_create_custom_attributeProWriteDefine a new custom attribute for subscriber or service records.
uisp_delete_client_bank_accountProDestructiveDESTRUCTIVE: delete a stored bank account permanently.
uisp_delete_client_contactProDestructiveDESTRUCTIVE: delete a contact from a subscriber's account permanently.
uisp_delete_client_tagProDestructiveDESTRUCTIVE: delete a tag from the vocabulary.
uisp_delete_custom_attributeProDestructiveDESTRUCTIVE: delete a custom attribute definition.
uisp_get_client_bank_accountFreeRead-onlyGet one stored bank account's details.
uisp_get_client_contactFreeRead-onlyGet one contact's details.
uisp_get_client_tagFreeRead-onlyGet one tag's definition.
uisp_get_custom_attributeFreeRead-onlyGet one custom attribute definition.
uisp_list_client_bank_accountsFreeRead-onlyList the bank accounts stored against one subscriber for direct-debit collection.
uisp_list_client_contactsFreeRead-onlyList the additional contacts on one subscriber's account — the people beyond the primary contact who may be emailed or called.
uisp_list_client_tagsFreeRead-onlyList the tag vocabulary — the labels available to categorise subscribers.
uisp_list_custom_attributesFreeRead-onlyList the custom attribute definitions — the extra fields this ISP has added to subscriber and service records.
uisp_update_client_bank_accountProWriteUpdate a stored bank account's details.
uisp_update_client_contactProWriteUpdate a contact's details.
uisp_update_client_tagProWriteRename or recolour a tag.
uisp_update_custom_attributeProWriteUpdate a custom attribute's definition.

[Ubiquiti UISP] Store a bank account against a subscriber for direct-debit collection. Provide clientId from uisp_list_clients and a JSON object body with the account details. Additive: storing the account does not itself collect anything. Only enter details the customer has authorised you to hold.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the subscriber (from uisp_list_clients).
fieldsJsonstringyesJSON object body with the bank account details. Model it on an entry from uisp_list_client_bank_accounts.

[Ubiquiti UISP] Add a contact to a subscriber's account. Provide clientId from uisp_list_clients and a JSON object body with the contact's name, email and phone — model it on an entry from uisp_list_client_contacts. Additive, and it does not email anyone by itself; note that a contact marked to receive billing email will receive future invoices.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the subscriber (from uisp_list_clients).
fieldsJsonstringyesJSON object body with the contact's details. Model it on an entry from uisp_list_client_contacts.

[Ubiquiti UISP] Create a new tag in the vocabulary. Provide a JSON object body with its name and colour. Additive: a new tag is attached to nobody until uisp_add_client_tag is used.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the tag's name and colour. Model it on an entry from uisp_list_client_tags.

[Ubiquiti UISP] Define a new custom attribute for subscriber or service records. Provide a JSON object body with its name and type. Additive: a new attribute is empty on every existing record until someone fills it in.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the attribute's name and type. Model it on an entry from uisp_list_custom_attributes.

[Ubiquiti UISP] DESTRUCTIVE: delete a stored bank account permanently. Provide bankAccountId from uisp_list_client_bank_accounts. Future direct debits from that account stop, so a subscriber on automatic collection starts accruing unpaid invoices instead — check whether it is their only payment route first. The details cannot be recovered; the customer has to supply them again.

ParamTypeRequiredDefaultDescription
bankAccountIdstringyesId of the bank account to delete permanently (from uisp_list_client_bank_accounts).

[Ubiquiti UISP] DESTRUCTIVE: delete a contact from a subscriber's account permanently. Provide contactId from uisp_list_client_contacts. If that contact was the one receiving billing email, future invoices stop reaching them — check with uisp_get_client_contact first, and remember contact ids are global, so an id from the wrong list deletes a different subscriber's contact.

ParamTypeRequiredDefaultDescription
contactIdstringyesId of the contact to delete permanently (from uisp_list_client_contacts for the intended subscriber).

[Ubiquiti UISP] DESTRUCTIVE: delete a tag from the vocabulary. Provide tagId from uisp_list_client_tags. It is removed from EVERY subscriber currently carrying it, so any grouping or reporting that relied on it is lost across the whole customer base. To remove it from one subscriber only, use uisp_remove_client_tag instead.

ParamTypeRequiredDefaultDescription
tagIdstringyesId of the tag to delete (from uisp_list_client_tags). It is removed from every subscriber carrying it.

[Ubiquiti UISP] DESTRUCTIVE: delete a custom attribute definition. Provide attributeId from uisp_list_custom_attributes. Every VALUE stored in that attribute across every subscriber and service record is discarded with it — if the ISP used it to hold something like an installation reference or a pole number, that data is gone from the whole customer base with no undo.

ParamTypeRequiredDefaultDescription
attributeIdstringyesId of the custom attribute to delete (from uisp_list_custom_attributes). Every stored value for it is discarded.

[Ubiquiti UISP] Get one stored bank account's details. Provide bankAccountId from uisp_list_client_bank_accounts. Sensitive financial data; bank-account ids are global rather than per-subscriber, so take the id from that client-scoped list.

ParamTypeRequiredDefaultDescription
bankAccountIdstringyesId of the bank account (from uisp_list_client_bank_accounts).

[Ubiquiti UISP] Get one contact's details. Provide contactId from uisp_list_client_contacts. Contact ids are global rather than per-subscriber, so take the id from that client-scoped list rather than guessing.

ParamTypeRequiredDefaultDescription
contactIdstringyesId of the contact (from uisp_list_client_contacts).

[Ubiquiti UISP] Get one tag's definition. Provide tagId from uisp_list_client_tags.

ParamTypeRequiredDefaultDescription
tagIdstringyesId of the tag (from uisp_list_client_tags).

[Ubiquiti UISP] Get one custom attribute definition. Provide attributeId from uisp_list_custom_attributes.

ParamTypeRequiredDefaultDescription
attributeIdstringyesId of the custom attribute (from uisp_list_custom_attributes).

[Ubiquiti UISP] List the bank accounts stored against one subscriber for direct-debit collection. This is the DISCOVERY TOOL for bank-account ids. Provide clientId from uisp_list_clients. Treat the response as sensitive financial data.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the subscriber (from uisp_list_clients).

[Ubiquiti UISP] List the additional contacts on one subscriber's account — the people beyond the primary contact who may be emailed or called. This is the DISCOVERY TOOL for contact ids. Provide clientId from uisp_list_clients.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the subscriber (from uisp_list_clients).

[Ubiquiti UISP] List the tag vocabulary — the labels available to categorise subscribers. This is the DISCOVERY TOOL for tag ids, which uisp_add_client_tag and uisp_remove_client_tag take.

[Ubiquiti UISP] List the custom attribute definitions — the extra fields this ISP has added to subscriber and service records. Read this to understand any non-standard fields appearing in uisp_get_client output.

[Ubiquiti UISP] Update a stored bank account's details. Provide bankAccountId from uisp_list_client_bank_accounts and a JSON object body with only the fields to change. A partial update, but take care: this is the account direct debits are collected from, so a wrong number sends a real collection to the wrong place. Confirm with the customer before changing it.

ParamTypeRequiredDefaultDescription
bankAccountIdstringyesId of the bank account (from uisp_list_client_bank_accounts).
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.

[Ubiquiti UISP] Update a contact's details. Provide contactId from uisp_list_client_contacts and a JSON object body with only the fields to change — a partial update, so omitted fields are left alone.

ParamTypeRequiredDefaultDescription
contactIdstringyesId of the contact (from uisp_list_client_contacts).
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.

[Ubiquiti UISP] Rename or recolour a tag. Provide tagId from uisp_list_client_tags and a JSON object body with only the fields to change. The subscribers already carrying the tag keep it — only the label's own definition changes.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.
tagIdstringyesId of the tag (from uisp_list_client_tags).

[Ubiquiti UISP] Update a custom attribute's definition. Provide attributeId from uisp_list_custom_attributes and a JSON object body with only the fields to change. Renaming is safe; changing the TYPE of an attribute that already holds values on live records is not, so check what uses it first.

ParamTypeRequiredDefaultDescription
attributeIdstringyesId of the custom attribute (from uisp_list_custom_attributes).
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.

Billing: Services & Suspension

ToolPlanAccessSummary
uisp_accept_service_change_requestProWriteAccept a service change request, applying it to the live subscription.
uisp_activate_quoted_serviceProWriteTurn a quoted service into a live subscription.
uisp_bind_service_to_siteProDestructiveDESTRUCTIVE: link a billing subscription to a network site.
uisp_cancel_service_suspensionProWriteLift a suspension and restore a customer's internet, reversing uisp_suspend_service.
uisp_clear_service_traffic_shapingProDestructiveDESTRUCTIVE: remove a subscription's speed override, returning it to the plan's own limits.
uisp_create_prepaid_service_periodProWriteRecord a block of prepaid service.
uisp_create_serviceProWriteAdd a subscription to a customer.
uisp_create_service_change_requestProWriteRaise a service change request.
uisp_create_service_surchargeProWriteAdd a recurring surcharge to a subscription.
uisp_create_suspension_reasonProWriteDefine a new suspension reason.
uisp_delete_prepaid_service_periodProDestructiveDESTRUCTIVE: delete a prepaid service period.
uisp_delete_serviceProDestructiveDESTRUCTIVE: delete a subscription outright, discarding its billing history along with it.
uisp_delete_service_change_requestProDestructiveDESTRUCTIVE: discard a pending service change request.
uisp_delete_service_surchargeProDestructiveDESTRUCTIVE: remove a recurring surcharge from a subscription.
uisp_delete_suspension_reasonProDestructiveDESTRUCTIVE: delete a suspension reason from the vocabulary.
uisp_end_serviceProDestructiveDESTRUCTIVE: end a subscription — terminate the customer's service and stop billing it.
uisp_geocode_serviceProWriteWork out map coordinates for a service from the address already on it.
uisp_get_prepaid_service_periodFreeRead-onlyGet one prepaid service period's detail.
uisp_get_serviceFreeRead-onlyGet one subscription's full detail — plan, price, billing period, status, suspension state and the network site it is bound to.
uisp_get_service_change_requestFreeRead-onlyGet one change request in full — which service, which plan is being moved from and to, and when.
uisp_get_service_data_usageFreeRead-onlyGet a subscription's data usage as at a given point in time.
uisp_get_service_surchargeFreeRead-onlyGet one service surcharge's detail.
uisp_get_suspension_reasonFreeRead-onlyGet one suspension reason's definition.
uisp_list_prepaid_service_periodsFreeRead-onlyList prepaid service periods — the blocks of service customers have paid for in advance.
uisp_list_service_change_requestsFreeRead-onlyList pending service change requests — plan changes customers have asked for through the portal, waiting for the ISP to accept.
uisp_list_service_surchargesFreeRead-onlyList the recurring surcharges on one subscription — equipment rental, static IP fees and similar extras added to the plan price.
uisp_list_servicesFreeRead-onlyList subscriber services — each one a customer's internet subscription, with its plan, price, status and active dates.
uisp_list_suspension_reasonsFreeRead-onlyList the suspension reasons this ISP has defined — the categories attached to a suspended service, such as non-payment or customer request.
uisp_set_service_traffic_shapingProDestructiveDESTRUCTIVE: override a subscription's speed limits, ignoring what its plan allows.
uisp_suspend_serviceProDestructiveDESTRUCTIVE: suspend a subscription, cutting that customer's internet.
uisp_unbind_service_from_siteProDestructiveDESTRUCTIVE: sever the link between a billing subscription and its network site.
uisp_update_serviceProDestructiveDESTRUCTIVE: change a live subscription.
uisp_update_service_surchargeProDestructiveDESTRUCTIVE: change a surcharge on a live subscription.
uisp_update_suspension_reasonProWriteRename a suspension reason.

[Ubiquiti UISP] Accept a service change request, applying it to the live subscription. Provide requestId from uisp_list_service_change_requests. This is the agreed outcome of something the customer asked for, which is why it does not prompt — but it does re-rate their subscription and change their speed, so read the request with uisp_get_service_change_request first to confirm it says what you expect.

ParamTypeRequiredDefaultDescription
requestIdstringyesId of the change request to accept (from uisp_list_service_change_requests). The subscription is re-rated on acceptance.

[Ubiquiti UISP] Turn a quoted service into a live subscription. Provide serviceId from uisp_list_services (the service will be in a quoted state). This is the step that begins service and billing on something the customer has already agreed to, so it takes nothing away — but it does start charging them, so confirm the quote is accepted first.

ParamTypeRequiredDefaultDescription
serviceIdstringyesId of the quoted service to activate (from uisp_list_services).

[Ubiquiti UISP] DESTRUCTIVE: link a billing subscription to a network site. Provide serviceId from uisp_list_services and a JSON object body naming the site (from uisp_list_sites). This is the ONE place UISP's two halves meet: the binding is what lets a billing suspension actually cut the connection, and what ties usage on the network to the right invoice. Binding to the WRONG site therefore points enforcement at the wrong customer — check both ids first. Re-binding replaces any existing link.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body naming the network site to bind to (site ids come from uisp_list_sites).
serviceIdstringyesId of the service (from uisp_list_services).

[Ubiquiti UISP] Lift a suspension and restore a customer's internet, reversing uisp_suspend_service. Provide serviceId from uisp_list_services. This is the recovery action — it gives a paying customer their connection back — which is why it does not prompt for approval. Billing resumes as normal.

ParamTypeRequiredDefaultDescription
serviceIdstringyesId of the suspended service to restore (from uisp_list_services).

[Ubiquiti UISP] DESTRUCTIVE: remove a subscription's speed override, returning it to the plan's own limits. Provide serviceId from uisp_list_services. This is not always a restoration: the override may be a deliberate arrangement the customer is paying for, and clearing it changes what they receive. Check the current override with uisp_get_service before removing it. The previous values are not kept and have to be re-entered by hand.

ParamTypeRequiredDefaultDescription
serviceIdstringyesId of the service whose speed override to remove (from uisp_list_services). The previous values are not kept.

[Ubiquiti UISP] Record a block of prepaid service. Provide a JSON object body naming the service (from uisp_list_services) and the period covered. Additive: it credits the customer with service they have paid for.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body naming the service (from uisp_list_services) and the period covered.

[Ubiquiti UISP] Add a subscription to a customer. Provide clientId from uisp_list_clients and a JSON object body naming the service plan (from uisp_list_service_plans) and the start date — model it on an existing service from uisp_get_service. Additive: it takes nothing away from the customer. It DOES start billing them on the plan's schedule, so check the plan and price are the ones intended.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the subscriber (from uisp_list_clients).
fieldsJsonstringyesJSON object body naming the service plan (from uisp_list_service_plans) and start date. Model it on the output of uisp_get_service.

[Ubiquiti UISP] Raise a service change request. Provide a JSON object body naming the service (from uisp_list_services) and the plan to move to (from uisp_list_service_plans). Additive and inert: a request changes nothing until it is accepted with uisp_accept_service_change_request.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body naming the service (from uisp_list_services) and the target plan (from uisp_list_service_plans).

[Ubiquiti UISP] Add a recurring surcharge to a subscription. Provide serviceId from uisp_list_services and a JSON object body naming the surcharge (from uisp_list_surcharges) and its amount. Additive and removable — but it does INCREASE what a real customer pays every billing period, so confirm it was agreed.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body naming the surcharge (from uisp_list_surcharges) and its amount.
serviceIdstringyesId of the service (from uisp_list_services).

[Ubiquiti UISP] Define a new suspension reason. Provide a JSON object body with its name. Additive: it suspends nobody and only becomes a category available when a service is suspended.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the reason's name. Model it on an entry from uisp_list_suspension_reasons.

[Ubiquiti UISP] DESTRUCTIVE: delete a prepaid service period. Provide periodId from uisp_list_prepaid_service_periods. This removes the record of service the customer has ALREADY PAID FOR — they can then be billed again for a period they have settled, and the evidence that they paid is gone. Read it with uisp_get_prepaid_service_period first.

ParamTypeRequiredDefaultDescription
periodIdstringyesId of the prepaid period to delete (from uisp_list_prepaid_service_periods). The record of the customer's prepayment is destroyed.

[Ubiquiti UISP] DESTRUCTIVE: delete a subscription outright, discarding its billing history along with it. Provide serviceId from uisp_list_services. This is not how a customer leaves — for that use uisp_end_service, which closes the subscription and KEEPS the financial record an ISP normally has to retain. Delete only a service created in error. There is no undo.

ParamTypeRequiredDefaultDescription
serviceIdstringyesId of the service to delete (from uisp_list_services). Its billing history goes with it — use uisp_end_service for a departing customer instead.

[Ubiquiti UISP] DESTRUCTIVE: discard a pending service change request. Provide requestId from uisp_list_service_change_requests. The customer's request is dropped without being applied and without them being told — from their side it simply never happens. Read it with uisp_get_service_change_request first, and consider telling the customer.

ParamTypeRequiredDefaultDescription
requestIdstringyesId of the change request to discard (from uisp_list_service_change_requests). The customer is not notified.

[Ubiquiti UISP] DESTRUCTIVE: remove a recurring surcharge from a subscription. Provide surchargeId from uisp_list_service_surcharges. The customer stops being charged it from the next period — which is revenue the ISP no longer collects, and if the surcharge covered rented equipment they still hold, it stops being billed for. There is no undo other than adding it again.

ParamTypeRequiredDefaultDescription
surchargeIdstringyesId of the service surcharge to remove (from uisp_list_service_surcharges).

[Ubiquiti UISP] DESTRUCTIVE: delete a suspension reason from the vocabulary. Provide reasonId from uisp_list_suspension_reasons. Services currently suspended under it lose their recorded reason, which is what an audit or a customer dispute relies on. Check what is using it first.

ParamTypeRequiredDefaultDescription
reasonIdstringyesId of the suspension reason to delete (from uisp_list_suspension_reasons).

[Ubiquiti UISP] DESTRUCTIVE: end a subscription — terminate the customer's service and stop billing it. Provide serviceId from uisp_list_services. This is the permanent version of a suspension: it closes the subscription rather than pausing it, and re-instating the customer means creating a new service and possibly a new installation. Confirm with uisp_get_service that this is the right customer, and prefer uisp_suspend_service when the situation might be resolved.

ParamTypeRequiredDefaultDescription
serviceIdstringyesId of the service to terminate (from uisp_list_services). The subscription is closed, not paused.

[Ubiquiti UISP] Work out map coordinates for a service from the address already on it. Provide serviceId from uisp_list_services. Fills in derived data only; useful so the subscription appears in the right place for field-job routing.

ParamTypeRequiredDefaultDescription
serviceIdstringyesId of the service (from uisp_list_services).

[Ubiquiti UISP] Get one prepaid service period's detail. Provide periodId from uisp_list_prepaid_service_periods.

ParamTypeRequiredDefaultDescription
periodIdstringyesId of the prepaid period (from uisp_list_prepaid_service_periods).

[Ubiquiti UISP] Get one subscription's full detail — plan, price, billing period, status, suspension state and the network site it is bound to. Provide serviceId from uisp_list_services. Service ids are bare numbers with nothing human-readable in them, so this read is the only way to confirm which customer a suspend, end or re-rate will touch.

ParamTypeRequiredDefaultDescription
serviceIdstringyesId of the service (from uisp_list_services).

[Ubiquiti UISP] Get one change request in full — which service, which plan is being moved from and to, and when. Provide requestId from uisp_list_service_change_requests. Read this before accepting: accepting applies the change to a live subscription.

ParamTypeRequiredDefaultDescription
requestIdstringyesId of the change request (from uisp_list_service_change_requests).

[Ubiquiti UISP] Get a subscription's data usage as at a given point in time. Provide serviceId from uisp_list_services and datetime as the timestamp to report against. Use this to check a customer against a data allowance before acting on an over-usage alert.

ParamTypeRequiredDefaultDescription
datetimestringyesThe point in time to report usage as at, in the timestamp format UISP returns on the service record.
serviceIdstringyesId of the service (from uisp_list_services).

[Ubiquiti UISP] Get one service surcharge's detail. Provide surchargeId from uisp_list_service_surcharges.

ParamTypeRequiredDefaultDescription
surchargeIdstringyesId of the service surcharge (from uisp_list_service_surcharges).

[Ubiquiti UISP] Get one suspension reason's definition. Provide reasonId from uisp_list_suspension_reasons.

ParamTypeRequiredDefaultDescription
reasonIdstringyesId of the suspension reason (from uisp_list_suspension_reasons).

[Ubiquiti UISP] List prepaid service periods — the blocks of service customers have paid for in advance. This is the DISCOVERY TOOL for prepaid period ids. Paginated with limit and offset (default 100, maximum 1000).

ParamTypeRequiredDefaultDescription
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] List pending service change requests — plan changes customers have asked for through the portal, waiting for the ISP to accept. This is the DISCOVERY TOOL for change request ids. Paginated with limit and offset (default 100, maximum 1000).

ParamTypeRequiredDefaultDescription
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] List the recurring surcharges on one subscription — equipment rental, static IP fees and similar extras added to the plan price. This is the DISCOVERY TOOL for service-surcharge ids. Provide serviceId from uisp_list_services. Read this when a customer queries why their bill is higher than the advertised plan.

ParamTypeRequiredDefaultDescription
serviceIdstringyesId of the service (from uisp_list_services).

[Ubiquiti UISP] List subscriber services — each one a customer's internet subscription, with its plan, price, status and active dates. This is the DISCOVERY TOOL for service ids, which nearly every other billing tool takes. Paginated with limit and offset (default 100, maximum 1000). Narrow to one customer with clientId from uisp_list_clients.

ParamTypeRequiredDefaultDescription
clientIdstringnonullOptional subscriber id to list only that customer's services (from uisp_list_clients).
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] List the suspension reasons this ISP has defined — the categories attached to a suspended service, such as non-payment or customer request. This is the DISCOVERY TOOL for suspension reason ids.

[Ubiquiti UISP] DESTRUCTIVE: override a subscription's speed limits, ignoring what its plan allows. Provide serviceId from uisp_list_services and a JSON object body with the upload and download limits. This directly changes what a paying customer receives — set too low it is a throttle they will notice immediately, set too high it gives away bandwidth they are not paying for. Remove the override again with uisp_clear_service_traffic_shaping, which returns them to their plan's speeds.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the upload and download limits to enforce instead of the plan's.
serviceIdstringyesId of the service to override (from uisp_list_services).

[Ubiquiti UISP] DESTRUCTIVE: suspend a subscription, cutting that customer's internet. Provide serviceId from uisp_list_services. The interruption is real and usually immediate — UISP enforces it at the network layer — and for a household it may take out their phone and alarm as well. Confirm the customer and their balance with uisp_get_service and uisp_get_client first; a suspension raised on a misread balance is the single most damaging mistake available in this connector. Reverse it with uisp_cancel_service_suspension.

ParamTypeRequiredDefaultDescription
serviceIdstringyesId of the service to suspend (from uisp_list_services). The customer loses their connection.

[Ubiquiti UISP] DESTRUCTIVE: sever the link between a billing subscription and its network site. Provide serviceId from uisp_list_services. Afterwards a billing suspension on this service no longer cuts the connection and network usage no longer maps to the invoice — the customer keeps their internet whatever their account does. That silent decoupling is the danger: nothing else reports it. Check the current binding with uisp_get_service first.

ParamTypeRequiredDefaultDescription
serviceIdstringyesId of the service to unbind (from uisp_list_services). Billing suspensions stop being enforced on the network afterwards.

[Ubiquiti UISP] DESTRUCTIVE: change a live subscription. Provide serviceId from uisp_list_services and a JSON object body with only the fields to change. This is a partial update, but what it updates is what a paying customer is CHARGED and what speed they receive: changing the plan or price re-rates them from the next invoice, and changing the billing period shifts when they are billed. Read the current state with uisp_get_service first and confirm the customer agreed to the change.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. Changing the plan or price re-rates what the customer is billed.
serviceIdstringyesId of the service to change (from uisp_list_services). Confirm the customer with uisp_get_service first.

[Ubiquiti UISP] DESTRUCTIVE: change a surcharge on a live subscription. Provide surchargeId from uisp_list_service_surcharges and a JSON object body with only the fields to change. This alters what a paying customer is charged every period, from their next invoice onwards — read the current value with uisp_get_service_surcharge and confirm the change was agreed.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. This alters a real recurring charge.
surchargeIdstringyesId of the service surcharge (from uisp_list_service_surcharges).

[Ubiquiti UISP] Rename a suspension reason. Provide reasonId from uisp_list_suspension_reasons and a JSON object body with only the fields to change. Services already suspended under it keep their suspension.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.
reasonIdstringyesId of the suspension reason (from uisp_list_suspension_reasons).

Billing: Service Plans & Products

ToolPlanAccessSummary
uisp_add_service_plan_to_groupProWritePut a service plan into a group.
uisp_create_productProWriteCreate a one-off product — hardware, an installation fee or similar.
uisp_create_service_planProWriteCreate a new service plan.
uisp_create_service_plan_groupProWriteCreate a service plan group.
uisp_delete_productProDestructiveDESTRUCTIVE: delete a one-off product from the catalogue.
uisp_delete_service_planProDestructiveDESTRUCTIVE: delete a service plan.
uisp_delete_service_plan_groupProDestructiveDESTRUCTIVE: delete a service plan group.
uisp_get_productFreeRead-onlyGet one product's definition — price, tax treatment and description.
uisp_get_service_planFreeRead-onlyGet one service plan's full definition — speeds, price, billing period, tax treatment and data allowance.
uisp_get_service_plan_groupFreeRead-onlyGet one service plan group's definition.
uisp_get_service_plan_statisticsFreeRead-onlyGet subscriber counts and totals per service plan.
uisp_list_productsFreeRead-onlyList one-off products — hardware, installation fees and other items that can be added to an invoice, as distinct from recurring plans.
uisp_list_service_plan_groupsFreeRead-onlyList the service plan groups — how the ISP organises its tariffs, for example residential against business.
uisp_list_service_plansFreeRead-onlyList the ISP's service plans — the tariffs with their speeds, prices and billing periods.
uisp_list_service_plans_by_periodFreeRead-onlyList the service plans that use one billing period.
uisp_remove_service_plan_from_groupProWriteTake a service plan out of a group, reversing uisp_add_service_plan_to_group.
uisp_update_productProWriteUpdate a one-off product.
uisp_update_service_planProDestructiveDESTRUCTIVE: change a service plan.
uisp_update_service_plan_groupProWriteRename a service plan group.

[Ubiquiti UISP] Put a service plan into a group. Provide planId from uisp_list_service_plans and groupId from uisp_list_service_plan_groups. Organisational only — it changes no price, speed or subscriber — and uisp_remove_service_plan_from_group undoes it.

ParamTypeRequiredDefaultDescription
groupIdstringyesId of the group to add it to (from uisp_list_service_plan_groups).
planIdstringyesId of the service plan (from uisp_list_service_plans).

[Ubiquiti UISP] Create a one-off product — hardware, an installation fee or similar. Provide a JSON object body with its name, price and tax treatment. Additive: it charges nobody until it is added to an invoice.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the product's name, price and tax treatment. Model it on the output of uisp_get_product.

[Ubiquiti UISP] Create a new service plan. Provide a JSON object body with its name, speeds, price and billing period — model it on an existing plan from uisp_get_service_plan. Additive: a new plan bills nobody until a subscription is placed on it with uisp_create_service.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the plan's name, speeds, price and billing period. Model it on the output of uisp_get_service_plan.

[Ubiquiti UISP] Create a service plan group. Provide a JSON object body with its name. Additive and organisational: an empty group contains no plans and affects no subscriber.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the group's name.

[Ubiquiti UISP] DESTRUCTIVE: delete a one-off product from the catalogue. Provide productId from uisp_list_products. Invoices that already include it keep their line items, but the product can no longer be added to new ones and has to be recreated by hand if it is needed again.

ParamTypeRequiredDefaultDescription
productIdstringyesId of the product to delete (from uisp_list_products).

[Ubiquiti UISP] DESTRUCTIVE: delete a service plan. Provide planId from uisp_list_service_plans. Check its subscriber count with uisp_get_service_plan_statistics first: deleting a plan that subscriptions are on affects every one of them, and the tariff cannot be recreated identically afterwards. To retire a plan gracefully, stop selling it and leave existing subscribers on it instead.

ParamTypeRequiredDefaultDescription
planIdstringyesId of the service plan to delete (from uisp_list_service_plans). Check uisp_get_service_plan_statistics for how many subscribers are on it.

[Ubiquiti UISP] DESTRUCTIVE: delete a service plan group. Provide groupId from uisp_list_service_plan_groups. The plans themselves survive — this deletes the grouping, not the tariffs — but any organisation or customer-portal presentation that relied on it is lost.

ParamTypeRequiredDefaultDescription
groupIdstringyesId of the plan group to delete (from uisp_list_service_plan_groups). The plans in it survive.

[Ubiquiti UISP] Get one product's definition — price, tax treatment and description. Provide productId from uisp_list_products.

ParamTypeRequiredDefaultDescription
productIdstringyesId of the product (from uisp_list_products).

[Ubiquiti UISP] Get one service plan's full definition — speeds, price, billing period, tax treatment and data allowance. Provide planId from uisp_list_service_plans.

ParamTypeRequiredDefaultDescription
planIdstringyesId of the service plan (from uisp_list_service_plans).

[Ubiquiti UISP] Get one service plan group's definition. Provide groupId from uisp_list_service_plan_groups.

ParamTypeRequiredDefaultDescription
groupIdstringyesId of the plan group (from uisp_list_service_plan_groups).

[Ubiquiti UISP] Get subscriber counts and totals per service plan. Use this to see which tariffs the customer base actually sits on — and, before changing or deleting a plan, exactly how many subscribers that change would reach.

[Ubiquiti UISP] List one-off products — hardware, installation fees and other items that can be added to an invoice, as distinct from recurring plans. This is the DISCOVERY TOOL for product ids. Paginated with limit and offset (default 100, maximum 1000).

ParamTypeRequiredDefaultDescription
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] List the service plan groups — how the ISP organises its tariffs, for example residential against business. This is the DISCOVERY TOOL for group ids.

[Ubiquiti UISP] List the ISP's service plans — the tariffs with their speeds, prices and billing periods. This is the DISCOVERY TOOL for service plan ids, which uisp_create_service and the change-request tools take. Paginated with limit and offset (default 100, maximum 1000).

ParamTypeRequiredDefaultDescription
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] List the service plans that use one billing period. Provide periodId as returned on plan records. Useful when checking which tariffs share a billing cycle before changing that cycle.

ParamTypeRequiredDefaultDescription
periodIdstringyesId of the billing period, as it appears on plan records from uisp_list_service_plans.

[Ubiquiti UISP] Take a service plan out of a group, reversing uisp_add_service_plan_to_group. Provide planId from uisp_list_service_plans and groupId from uisp_list_service_plan_groups. Organisational only — the plan itself and every subscriber on it are untouched.

ParamTypeRequiredDefaultDescription
groupIdstringyesId of the group to remove it from (from uisp_list_service_plan_groups).
planIdstringyesId of the service plan (from uisp_list_service_plans).

[Ubiquiti UISP] Update a one-off product. Provide productId from uisp_list_products and a JSON object body with only the fields to change. A price change applies to invoices raised from now on; invoices already issued keep the price they were issued at.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.
productIdstringyesId of the product (from uisp_list_products).

[Ubiquiti UISP] DESTRUCTIVE: change a service plan. Provide planId from uisp_list_service_plans and a JSON object body with only the fields to change. A plan is SHARED: changing its price re-rates every subscriber on it from their next invoice, and changing its speeds changes what all of them receive. Check how many that is with uisp_get_service_plan_statistics before running it — this is the widest-reaching billing change in the connector, and it does not ask each customer individually.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. A price or speed change reaches every subscriber on this plan.
planIdstringyesId of the service plan (from uisp_list_service_plans). Check its subscriber count with uisp_get_service_plan_statistics first.

[Ubiquiti UISP] Rename a service plan group. Provide groupId from uisp_list_service_plan_groups and a JSON object body with only the fields to change. Organisational only.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.
groupIdstringyesId of the plan group (from uisp_list_service_plan_groups).

Billing: Invoices

ToolPlanAccessSummary
uisp_approve_invoiceProDestructiveDESTRUCTIVE: approve a draft invoice, turning it into an issued one.
uisp_create_invoiceProWriteCreate an invoice for a subscriber.
uisp_delete_invoiceProDestructiveDESTRUCTIVE: delete an invoice outright.
uisp_delete_invoice_itemProDestructiveDESTRUCTIVE: delete a line item from an invoice, reducing its total.
uisp_get_invoiceFreeRead-onlyGet one invoice in full — customer, dates, line items, tax, total, amount paid and status.
uisp_get_invoice_itemFreeRead-onlyGet one invoice line item in full.
uisp_list_invoice_itemsFreeRead-onlyList one invoice's line items — what each charge is for, its quantity, unit price and tax.
uisp_list_invoicesFreeRead-onlyList subscriber invoices with their number, date, total, amount outstanding and status (draft, issued, paid, void, overdue).
uisp_preview_invoiceProWriteCalculate what an invoice WOULD look like without creating it.
uisp_regenerate_invoice_pdfProWriteRe-render an invoice's PDF from its current data.
uisp_send_invoiceProDestructiveEmail an invoice to the subscriber.
uisp_update_invoiceProDestructiveDESTRUCTIVE: change an invoice.
uisp_update_invoice_itemProDestructiveDESTRUCTIVE: change one line item on an invoice, which changes the invoice total.
uisp_void_invoiceProDestructiveDESTRUCTIVE: void an issued invoice, cancelling the amount owed.

[Ubiquiti UISP] DESTRUCTIVE: approve a draft invoice, turning it into an issued one. Provide invoiceId from uisp_list_invoices. This is a ONE-WAY DOOR: an approved invoice takes its permanent number, becomes a live financial document and is added to what the customer owes. It cannot be returned to draft — the only reversal is uisp_void_invoice, which is itself a permanent accounting entry. Check every figure with uisp_get_invoice and uisp_list_invoice_items first.

ParamTypeRequiredDefaultDescription
invoiceIdstringyesId of the draft invoice to issue (from uisp_list_invoices). It cannot be returned to draft afterwards.

[Ubiquiti UISP] Create an invoice for a subscriber. Provide clientId from uisp_list_clients and a JSON object body with the line items. The invoice is created as a DRAFT — nothing is issued to the customer and nothing is sent — so this is safe to do and review. Making it real takes two further, deliberate steps: uisp_approve_invoice then uisp_send_invoice. Preview the figures without creating anything using uisp_preview_invoice.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the subscriber to invoice (from uisp_list_clients).
fieldsJsonstringyesJSON object body with the invoice's line items. Model it on the output of uisp_get_invoice.

[Ubiquiti UISP] DESTRUCTIVE: delete an invoice outright. Provide invoiceId from uisp_list_invoices. This ERASES a financial record an ISP is normally required to retain, leaving a gap in the invoice sequence that an audit will find. For an invoice that should not stand, use uisp_void_invoice instead — it cancels the amount while keeping the record. Delete only a draft raised in error, and confirm the status with uisp_get_invoice first.

ParamTypeRequiredDefaultDescription
invoiceIdstringyesId of the invoice to erase (from uisp_list_invoices). Prefer uisp_void_invoice for anything already issued.

[Ubiquiti UISP] DESTRUCTIVE: delete a line item from an invoice, reducing its total. Provide itemId from uisp_list_invoice_items. On an issued invoice the customer's copy no longer matches yours, and the charge is silently dropped. Read the item with uisp_get_invoice_item first.

ParamTypeRequiredDefaultDescription
itemIdstringyesId of the invoice item to delete (from uisp_list_invoice_items). The invoice total drops accordingly.

[Ubiquiti UISP] Get one invoice in full — customer, dates, line items, tax, total, amount paid and status. Provide invoiceId from uisp_list_invoices. Read this before approving, sending, voiding or editing: the status is what tells a draft from an already-issued document, and the two are not equally safe to change.

ParamTypeRequiredDefaultDescription
invoiceIdstringyesId of the invoice (from uisp_list_invoices).

[Ubiquiti UISP] Get one invoice line item in full. Provide itemId from uisp_list_invoice_items.

ParamTypeRequiredDefaultDescription
itemIdstringyesId of the invoice item (from uisp_list_invoice_items).

[Ubiquiti UISP] List one invoice's line items — what each charge is for, its quantity, unit price and tax. This is the DISCOVERY TOOL for invoice item ids. Provide invoiceId from uisp_list_invoices. This is where a customer's question about a specific charge is answered.

ParamTypeRequiredDefaultDescription
invoiceIdstringyesId of the invoice (from uisp_list_invoices).

[Ubiquiti UISP] List subscriber invoices with their number, date, total, amount outstanding and status (draft, issued, paid, void, overdue). This is the DISCOVERY TOOL for invoice ids. Paginated with limit and offset (default 100, maximum 1000). Narrow to one customer with clientId from uisp_list_clients — the usual first step on any billing query.

ParamTypeRequiredDefaultDescription
clientIdstringnonullOptional subscriber id to list only that customer's invoices (from uisp_list_clients).
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] Calculate what an invoice WOULD look like without creating it. Provide clientId from uisp_list_clients and a JSON object body with the proposed line items. Nothing is stored and no record is created — this endpoint explicitly does not persist. Use it to check totals and tax before committing to uisp_create_invoice.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the subscriber (from uisp_list_clients).
fieldsJsonstringyesJSON object body with the proposed line items. Nothing is stored.

[Ubiquiti UISP] Re-render an invoice's PDF from its current data. Provide invoiceId from uisp_list_invoices. Changes no figures and sends nothing — useful after an organisation's logo or address has changed. It does not email the customer; that is uisp_send_invoice.

ParamTypeRequiredDefaultDescription
invoiceIdstringyesId of the invoice (from uisp_list_invoices).

[Ubiquiti UISP] Email an invoice to the subscriber. Provide invoiceId from uisp_list_invoices. This SENDS A REAL BILL to a real customer and cannot be recalled once delivered — a wrong invoice sent is a support call and, if the figure is wrong, a credibility problem. Verify the customer, the total and the line items with uisp_get_invoice and uisp_list_invoice_items first.

ParamTypeRequiredDefaultDescription
invoiceIdstringyesId of the invoice to email (from uisp_list_invoices). A real bill is delivered and cannot be recalled.

[Ubiquiti UISP] DESTRUCTIVE: change an invoice. Provide invoiceId from uisp_list_invoices and a JSON object body with only the fields to change. On a draft this is ordinary editing; on an ISSUED invoice it silently alters a financial document the customer may already hold a PDF of, so their copy and yours no longer agree. Check the status with uisp_get_invoice first — for an issued invoice, voiding it and issuing a correct one is usually the right answer.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.
invoiceIdstringyesId of the invoice (from uisp_list_invoices). Check its status first — editing an issued invoice diverges from the customer's copy.

[Ubiquiti UISP] DESTRUCTIVE: change one line item on an invoice, which changes the invoice total. Provide itemId from uisp_list_invoice_items and a JSON object body with only the fields to change. On an issued invoice this diverges from the copy the customer holds. Read the item with uisp_get_invoice_item first.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.
itemIdstringyesId of the invoice item (from uisp_list_invoice_items). Changing it changes the invoice total.

[Ubiquiti UISP] DESTRUCTIVE: void an issued invoice, cancelling the amount owed. Provide invoiceId from uisp_list_invoices. Voiding is a permanent accounting entry, not an undo: the invoice stays in the ledger marked void, its number is not reused, and the customer's balance changes. If the customer has already paid it, void is the wrong tool — issue a credit note with uisp_create_credit_note instead. Confirm the status with uisp_get_invoice first.

ParamTypeRequiredDefaultDescription
invoiceIdstringyesId of the invoice to void (from uisp_list_invoices). A permanent ledger entry, not an undo.

Billing: Quotes & Credit Notes

ToolPlanAccessSummary
uisp_create_credit_noteProWriteIssue a credit note to a customer, reducing what they owe.
uisp_create_quoteProWriteCreate a quote for a customer.
uisp_delete_credit_noteProDestructiveDESTRUCTIVE: delete a credit note.
uisp_get_credit_noteFreeRead-onlyGet one credit note in full — customer, the invoice it relates to, line items and total.
uisp_get_quoteFreeRead-onlyGet one quote in full — customer, line items, totals and status.
uisp_list_credit_notesFreeRead-onlyList credit notes — the documents that reverse or reduce what a customer was invoiced.
uisp_list_quotesFreeRead-onlyList quotes — proposals issued to customers and prospects, with their number, date, total and status.
uisp_regenerate_credit_note_pdfProWriteRe-render a credit note's PDF from its current data.
uisp_send_credit_noteProDestructiveEmail a credit note to the customer.
uisp_update_credit_noteProDestructiveDESTRUCTIVE: change a credit note.
uisp_update_quoteProWriteUpdate a quote.

[Ubiquiti UISP] Issue a credit note to a customer, reducing what they owe. Provide clientId from uisp_list_clients and a JSON object body with the amounts and the invoice being credited. This is the CORRECT remedy for an invoice that overcharged someone — including one they have already paid, where voiding is the wrong tool. It works in the customer's favour, which is why it does not prompt; check the amount, because crediting too much gives money away.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the customer to credit (from uisp_list_clients).
fieldsJsonstringyesJSON object body with the amounts and the invoice being credited (invoice ids from uisp_list_invoices).

[Ubiquiti UISP] Create a quote for a customer. Provide clientId from uisp_list_clients and a JSON object body with the proposed line items. Additive and non-binding: a quote charges nobody and commits nothing until the customer accepts it and a service is created. It is not emailed by this call.

ParamTypeRequiredDefaultDescription
clientIdstringyesId of the customer to quote (from uisp_list_clients).
fieldsJsonstringyesJSON object body with the quote's line items. Model it on the output of uisp_get_quote.

[Ubiquiti UISP] DESTRUCTIVE: delete a credit note. Provide creditNoteId from uisp_list_credit_notes. The credit is withdrawn — the customer owes that money again — and the record of the correction is erased from the ledger, which is exactly the gap an audit looks for. If the customer has already been sent the credit note, they will hold a document that no longer exists. There is no undo.

ParamTypeRequiredDefaultDescription
creditNoteIdstringyesId of the credit note to delete (from uisp_list_credit_notes). The customer owes the credited amount again.

[Ubiquiti UISP] Get one credit note in full — customer, the invoice it relates to, line items and total. Provide creditNoteId from uisp_list_credit_notes.

ParamTypeRequiredDefaultDescription
creditNoteIdstringyesId of the credit note (from uisp_list_credit_notes).

[Ubiquiti UISP] Get one quote in full — customer, line items, totals and status. Provide quoteId from uisp_list_quotes.

ParamTypeRequiredDefaultDescription
quoteIdstringyesId of the quote (from uisp_list_quotes).

[Ubiquiti UISP] List credit notes — the documents that reverse or reduce what a customer was invoiced. This is the DISCOVERY TOOL for credit note ids. Paginated with limit and offset (default 100, maximum 1000). Narrow to one customer with clientId from uisp_list_clients.

ParamTypeRequiredDefaultDescription
clientIdstringnonullOptional subscriber id to list only that customer's credit notes (from uisp_list_clients).
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] List quotes — proposals issued to customers and prospects, with their number, date, total and status. This is the DISCOVERY TOOL for quote ids. Paginated with limit and offset (default 100, maximum 1000). Narrow to one customer with clientId from uisp_list_clients.

ParamTypeRequiredDefaultDescription
clientIdstringnonullOptional subscriber id to list only that customer's quotes (from uisp_list_clients).
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] Re-render a credit note's PDF from its current data. Provide creditNoteId from uisp_list_credit_notes. Changes no figures and sends nothing.

ParamTypeRequiredDefaultDescription
creditNoteIdstringyesId of the credit note (from uisp_list_credit_notes).

[Ubiquiti UISP] Email a credit note to the customer. Provide creditNoteId from uisp_list_credit_notes. This SENDS A REAL DOCUMENT to a real customer and cannot be recalled — one sent in error tells them they are owed money they are not. Verify it with uisp_get_credit_note first.

ParamTypeRequiredDefaultDescription
creditNoteIdstringyesId of the credit note to email (from uisp_list_credit_notes). A real document is delivered and cannot be recalled.

[Ubiquiti UISP] DESTRUCTIVE: change a credit note. Provide creditNoteId from uisp_list_credit_notes and a JSON object body with only the fields to change. A credit note is a financial document that has already altered what the customer owes, so changing its amount alters their balance again — and if it was sent, their copy no longer matches yours. Read it with uisp_get_credit_note first.

ParamTypeRequiredDefaultDescription
creditNoteIdstringyesId of the credit note (from uisp_list_credit_notes). Changing the amount alters the customer's balance.
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.

[Ubiquiti UISP] Update a quote. Provide quoteId from uisp_list_quotes and a JSON object body with only the fields to change. A quote binds nothing, so this is ordinary editing — but if the customer already has a copy, they will be looking at different figures until you send them the new one.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.
quoteIdstringyesId of the quote (from uisp_list_quotes).

Billing: Payments & Refunds

ToolPlanAccessSummary
uisp_attach_paymentProDestructiveDESTRUCTIVE: allocate a received payment against one or more invoices.
uisp_cancel_payment_planProDestructiveDESTRUCTIVE: cancel a recurring payment plan, ending the standing authority to collect from that customer.
uisp_create_paymentProDestructiveDESTRUCTIVE: record a payment against a customer's account.
uisp_create_payment_methodProWriteAdd a payment method to the ISP's list of accepted options.
uisp_create_payment_planProDestructiveDESTRUCTIVE: set up a recurring payment plan for a customer.
uisp_create_refundProDestructiveDESTRUCTIVE: issue a refund to a customer.
uisp_delete_credit_cardProDestructiveDESTRUCTIVE: remove a stored card from a customer's account.
uisp_delete_paymentProDestructiveDESTRUCTIVE: delete a recorded payment.
uisp_delete_payment_methodProDestructiveDESTRUCTIVE: remove a payment method from the ISP's accepted list.
uisp_delete_refundProDestructiveDESTRUCTIVE: delete a refund record.
uisp_detach_paymentProDestructiveDESTRUCTIVE: remove a payment's allocation, leaving it unapplied.
uisp_get_credit_cardFreeRead-onlyGet one stored card's detail.
uisp_get_paymentFreeRead-onlyGet one payment in full — amount, date, method, note and its allocation across invoices.
uisp_get_payment_methodFreeRead-onlyGet one payment method's definition.
uisp_get_payment_planFreeRead-onlyGet one recurring payment plan's detail — the customer, the amount and the schedule.
uisp_get_refundFreeRead-onlyGet one refund's detail.
uisp_list_credit_cardsFreeRead-onlyList the cards stored against customer accounts for automatic collection.
uisp_list_payment_methodsFreeRead-onlyList the payment methods this ISP accepts — cash, bank transfer, card and so on.
uisp_list_payment_plansFreeRead-onlyList recurring payment plans — the standing authorities that collect from customers automatically.
uisp_list_paymentsFreeRead-onlyList recorded payments with their amount, date, method and which invoices they are allocated against.
uisp_list_refundsFreeRead-onlyList refunds issued to customers, with amounts and dates.
uisp_send_payment_receiptProDestructiveEmail a payment receipt to the customer.
uisp_update_credit_card_settingsProDestructiveDESTRUCTIVE: change a stored card's settings, including whether it is used for automatic collection.
uisp_update_paymentProDestructiveDESTRUCTIVE: change a recorded payment.
uisp_update_payment_methodProWriteRename a payment method.

[Ubiquiti UISP] DESTRUCTIVE: allocate a received payment against one or more invoices. Provide paymentId from uisp_list_payments and a JSON object body naming the invoices (from uisp_list_invoices). No money moves, but the allocation is what decides which invoices count as SETTLED — attaching to the wrong one leaves a genuinely unpaid invoice looking paid and vice versa, which then drives dunning and suspension. Read the current allocation with uisp_get_payment first.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body naming the invoices to allocate it against (invoice ids from uisp_list_invoices).
paymentIdstringyesId of the payment to allocate (from uisp_list_payments).

[Ubiquiti UISP] DESTRUCTIVE: cancel a recurring payment plan, ending the standing authority to collect from that customer. Provide planId from uisp_list_payment_plans. Automatic collection stops immediately — the customer's future invoices go unpaid until they set up payment again, which usually means asking them to re-authorise. It cannot be reinstated from here. Confirm the customer with uisp_get_payment_plan first.

ParamTypeRequiredDefaultDescription
planIdstringyesId of the payment plan to cancel (from uisp_list_payment_plans). Automatic collection stops and cannot be reinstated here.

[Ubiquiti UISP] DESTRUCTIVE: record a payment against a customer's account. Provide a JSON object body with the customer (from uisp_list_clients), the amount, the method (from uisp_list_payment_methods) and optionally the invoices it settles. This is REAL MONEY in the ledger: recording one marks invoices as paid and reduces what the customer owes, so a payment entered for the wrong customer or amount stops legitimate collection on one account and misstates another. Confirm the customer and their outstanding invoices with uisp_get_client and uisp_list_invoices first.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the customer id, amount, payment method and optionally the invoices it settles.

[Ubiquiti UISP] Add a payment method to the ISP's list of accepted options. Provide a JSON object body with its name. Configuration rather than money: it collects nothing and only becomes selectable when recording a payment.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the payment method's name.

[Ubiquiti UISP] DESTRUCTIVE: set up a recurring payment plan for a customer. Provide a JSON object body with the customer (from uisp_list_clients), the amount and the schedule. This creates a STANDING AUTHORITY to take money from them automatically, so the amount and interval must be exactly what they agreed — an error here collects the wrong sum repeatedly. Cancel it again with uisp_cancel_payment_plan.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the customer id, amount and schedule. This authorises recurring collection.

[Ubiquiti UISP] DESTRUCTIVE: issue a refund to a customer. Provide a JSON object body with the customer (from uisp_list_clients), the amount and the payment being refunded. This gives REAL MONEY back and, depending on the ISP's payment processor, may move funds immediately and irreversibly. Check the original payment with uisp_get_payment first; refunding more than was taken, or refunding the wrong payment, is not something the API will stop you doing.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the customer id, the amount and the payment being refunded.

[Ubiquiti UISP] DESTRUCTIVE: remove a stored card from a customer's account. Provide cardId from uisp_list_credit_cards. Automatic collection from that card stops, so a customer on autopay starts accruing unpaid invoices — check whether it is their only payment route with uisp_list_payment_plans first. The card details cannot be recovered; the customer has to enter them again.

ParamTypeRequiredDefaultDescription
cardIdstringyesId of the stored card to remove (from uisp_list_credit_cards). The customer must re-enter their details to restore autopay.

[Ubiquiti UISP] DESTRUCTIVE: delete a recorded payment. Provide paymentId from uisp_list_payments. Every invoice it was settling returns to OUTSTANDING and the customer's balance rises by the amount — so a customer who paid can be chased, dunned and in an automated setup suspended, on the strength of a record that no longer exists. The money itself is untouched. Read it with uisp_get_payment first, and only delete an entry recorded in error.

ParamTypeRequiredDefaultDescription
paymentIdstringyesId of the payment to delete (from uisp_list_payments). Its invoices return to outstanding and the customer's balance rises.

[Ubiquiti UISP] DESTRUCTIVE: remove a payment method from the ISP's accepted list. Provide methodId from uisp_list_payment_methods. Check what uses it first — historical payments recorded against it and any automation that names it are affected, and it cannot be restored with the same id.

ParamTypeRequiredDefaultDescription
methodIdstringyesId of the payment method to remove (from uisp_list_payment_methods).

[Ubiquiti UISP] DESTRUCTIVE: delete a refund record. Provide refundId from uisp_list_refunds. This removes the LEDGER ENTRY, not the money — if funds were actually returned to the customer, deleting the record hides that fact and the accounts will not reconcile. Read it with uisp_get_refund first, and only delete an entry recorded in error.

ParamTypeRequiredDefaultDescription
refundIdstringyesId of the refund record to delete (from uisp_list_refunds). This removes the record, not the money.

[Ubiquiti UISP] DESTRUCTIVE: remove a payment's allocation, leaving it unapplied. Provide paymentId from uisp_list_payments. The invoices it was settling go back to OUTSTANDING, so a customer who has genuinely paid can immediately look overdue — and depending on the ISP's automation that can lead to a dunning notice or a suspension. Read the current allocation with uisp_get_payment first and re-attach it promptly.

ParamTypeRequiredDefaultDescription
paymentIdstringyesId of the payment to un-allocate (from uisp_list_payments). Its invoices return to outstanding.

[Ubiquiti UISP] Get one stored card's detail. Provide cardId from uisp_list_credit_cards. Treat the response as sensitive.

ParamTypeRequiredDefaultDescription
cardIdstringyesId of the stored card (from uisp_list_credit_cards).

[Ubiquiti UISP] Get one payment in full — amount, date, method, note and its allocation across invoices. Provide paymentId from uisp_list_payments. Read this before changing, deleting or re-allocating anything: the allocation is what decides which invoices count as settled.

ParamTypeRequiredDefaultDescription
paymentIdstringyesId of the payment (from uisp_list_payments).

[Ubiquiti UISP] Get one payment method's definition. Provide methodId from uisp_list_payment_methods.

ParamTypeRequiredDefaultDescription
methodIdstringyesId of the payment method (from uisp_list_payment_methods).

[Ubiquiti UISP] Get one recurring payment plan's detail — the customer, the amount and the schedule. Provide planId from uisp_list_payment_plans.

ParamTypeRequiredDefaultDescription
planIdstringyesId of the payment plan (from uisp_list_payment_plans).

[Ubiquiti UISP] Get one refund's detail. Provide refundId from uisp_list_refunds.

ParamTypeRequiredDefaultDescription
refundIdstringyesId of the refund (from uisp_list_refunds).

[Ubiquiti UISP] List the cards stored against customer accounts for automatic collection. This is the DISCOVERY TOOL for card ids. Paginated with limit and offset (default 100, maximum 1000). Treat the response as sensitive.

ParamTypeRequiredDefaultDescription
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] List the payment methods this ISP accepts — cash, bank transfer, card and so on. This is the DISCOVERY TOOL for payment method ids, which uisp_create_payment takes.

[Ubiquiti UISP] List recurring payment plans — the standing authorities that collect from customers automatically. This is the DISCOVERY TOOL for payment plan ids. Paginated with limit and offset (default 100, maximum 1000).

ParamTypeRequiredDefaultDescription
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] List recorded payments with their amount, date, method and which invoices they are allocated against. This is the DISCOVERY TOOL for payment ids. Paginated with limit and offset (default 100, maximum 1000). Narrow to one customer with clientId from uisp_list_clients — the first place to look when someone says they have already paid.

ParamTypeRequiredDefaultDescription
clientIdstringnonullOptional subscriber id to list only that customer's payments (from uisp_list_clients).
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] List refunds issued to customers, with amounts and dates. This is the DISCOVERY TOOL for refund ids. Paginated with limit and offset (default 100, maximum 1000).

ParamTypeRequiredDefaultDescription
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] Email a payment receipt to the customer. Provide paymentId from uisp_list_payments. This SENDS REAL EMAIL and cannot be recalled — a receipt sent for the wrong payment tells a customer their money arrived when it did not. Verify with uisp_get_payment first.

ParamTypeRequiredDefaultDescription
paymentIdstringyesId of the payment to send a receipt for (from uisp_list_payments). A real message is delivered.

[Ubiquiti UISP] DESTRUCTIVE: change a stored card's settings, including whether it is used for automatic collection. Provide cardId from uisp_list_credit_cards and a JSON object body. Turning automatic collection on starts charging that card on schedule; turning it off means the customer's invoices stop being paid. Read the current settings with uisp_get_credit_card first.

ParamTypeRequiredDefaultDescription
cardIdstringyesId of the stored card (from uisp_list_credit_cards).
fieldsJsonstringyesJSON object body with the settings to change, including automatic-collection behaviour.

[Ubiquiti UISP] DESTRUCTIVE: change a recorded payment. Provide paymentId from uisp_list_payments and a JSON object body with only the fields to change. Changing the amount changes what the customer is shown as having paid, which can move a settled invoice back into arrears and start chasing a customer who paid correctly. Read it with uisp_get_payment first.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.
paymentIdstringyesId of the payment (from uisp_list_payments). Changing the amount alters what the customer is shown as having paid.

[Ubiquiti UISP] Rename a payment method. Provide methodId from uisp_list_payment_methods and a JSON object body with only the fields to change. Payments already recorded against it keep their allocation.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.
methodIdstringyesId of the payment method (from uisp_list_payment_methods).

Billing: Field Jobs & Scheduling

ToolPlanAccessSummary
uisp_create_jobProWriteSchedule a field job.
uisp_create_job_attachmentProWriteCreate a job attachment record.
uisp_create_job_commentProWriteAdd a comment to a job.
uisp_create_job_taskProWriteAdd a checklist task to a job.
uisp_delete_jobProDestructiveDESTRUCTIVE: delete a field job together with its tasks, comments and attachment records.
uisp_delete_job_attachmentProDestructiveDESTRUCTIVE: delete a job attachment permanently.
uisp_delete_job_commentProDestructiveDESTRUCTIVE: delete a job comment permanently.
uisp_delete_job_taskProDestructiveDESTRUCTIVE: delete a job task permanently.
uisp_get_jobFreeRead-onlyGet one field job in full — customer, address, scheduled time, assigned technician, status and description.
uisp_get_job_attachmentFreeRead-onlyGet one job attachment's record — its name, type and which job it belongs to.
uisp_get_job_commentFreeRead-onlyGet one job comment in full.
uisp_get_job_taskFreeRead-onlyGet one job task's detail.
uisp_list_job_attachmentsFreeRead-onlyList job attachment records — the photographs and documents technicians attached to visits, as metadata rather than file content.
uisp_list_job_commentsFreeRead-onlyList job comments — what technicians and staff recorded against visits.
uisp_list_job_tasksFreeRead-onlyList job tasks — the checklist items technicians work through on a visit.
uisp_list_jobsFreeRead-onlyList field jobs — scheduled installs, repairs and site visits, with their date, assignee, customer and status.
uisp_update_jobProWriteUpdate a field job — reschedule it, reassign it or change its status.
uisp_update_job_attachmentProWriteUpdate a job attachment's record — its name or description.
uisp_update_job_commentProWriteEdit a job comment.
uisp_update_job_taskProWriteUpdate a job task — mark it complete or change its description.

[Ubiquiti UISP] Schedule a field job. Provide a JSON object body with the customer (from uisp_list_clients), the date and the description — model it on an existing job from uisp_get_job. Additive: it puts a visit on the calendar and takes nothing away. Note that assigning a technician may notify them through UISP.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the customer id, date, assignee and description. Model it on the output of uisp_get_job.

[Ubiquiti UISP] Create a job attachment record. Provide a JSON object body naming the job (from uisp_list_jobs) and the attachment's details. Additive.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body naming the job (from uisp_list_jobs) and the attachment's details.

[Ubiquiti UISP] Add a comment to a job. Provide a JSON object body naming the job (from uisp_list_jobs) and the comment text. Additive: it records what happened without changing the job.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body naming the job (from uisp_list_jobs) and the comment text.

[Ubiquiti UISP] Add a checklist task to a job. Provide a JSON object body naming the job (from uisp_list_jobs) and the task. Additive.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body naming the job (from uisp_list_jobs) and describing the task.

[Ubiquiti UISP] DESTRUCTIVE: delete a field job together with its tasks, comments and attachment records. Provide jobId from uisp_list_jobs. For a completed visit this destroys the only account of what the technician did and found; for a scheduled one it silently removes the appointment, and the customer may still be expecting someone. To cancel a visit, update its status with uisp_update_job instead. There is no undo.

ParamTypeRequiredDefaultDescription
jobIdstringyesId of the job to delete (from uisp_list_jobs). Its tasks, comments and attachment records go with it.

[Ubiquiti UISP] DESTRUCTIVE: delete a job attachment permanently. Provide attachmentId from uisp_list_job_attachments. Installation photographs are the usual attachment, and they are what an ISP relies on to show how equipment was left — deleting one cannot be undone.

ParamTypeRequiredDefaultDescription
attachmentIdstringyesId of the attachment to delete (from uisp_list_job_attachments).

[Ubiquiti UISP] DESTRUCTIVE: delete a job comment permanently. Provide commentId from uisp_list_job_comments. Comments are frequently the only written account of what a technician found on site, so deleting one destroys evidence that a later dispute or warranty claim may depend on.

ParamTypeRequiredDefaultDescription
commentIdstringyesId of the job comment to delete (from uisp_list_job_comments).

[Ubiquiti UISP] DESTRUCTIVE: delete a job task permanently. Provide taskId from uisp_list_job_tasks. If the task was completed, the record that it was done goes with it — mark it complete with uisp_update_job_task rather than deleting it.

ParamTypeRequiredDefaultDescription
taskIdstringyesId of the job task to delete (from uisp_list_job_tasks).

[Ubiquiti UISP] Get one field job in full — customer, address, scheduled time, assigned technician, status and description. Provide jobId from uisp_list_jobs.

ParamTypeRequiredDefaultDescription
jobIdstringyesId of the job (from uisp_list_jobs).

[Ubiquiti UISP] Get one job attachment's record — its name, type and which job it belongs to. Provide attachmentId from uisp_list_job_attachments. This returns the record, not the file content.

ParamTypeRequiredDefaultDescription
attachmentIdstringyesId of the attachment (from uisp_list_job_attachments).

[Ubiquiti UISP] Get one job comment in full. Provide commentId from uisp_list_job_comments.

ParamTypeRequiredDefaultDescription
commentIdstringyesId of the job comment (from uisp_list_job_comments).

[Ubiquiti UISP] Get one job task's detail. Provide taskId from uisp_list_job_tasks.

ParamTypeRequiredDefaultDescription
taskIdstringyesId of the job task (from uisp_list_job_tasks).

[Ubiquiti UISP] List job attachment records — the photographs and documents technicians attached to visits, as metadata rather than file content. This is the DISCOVERY TOOL for attachment ids. Paginated with limit and offset (default 100, maximum 1000).

ParamTypeRequiredDefaultDescription
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] List job comments — what technicians and staff recorded against visits. This is the DISCOVERY TOOL for comment ids, and usually the only written account of what was found on site. Paginated with limit and offset (default 100, maximum 1000).

ParamTypeRequiredDefaultDescription
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] List job tasks — the checklist items technicians work through on a visit. This is the DISCOVERY TOOL for job task ids. Paginated with limit and offset (default 100, maximum 1000).

ParamTypeRequiredDefaultDescription
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] List field jobs — scheduled installs, repairs and site visits, with their date, assignee, customer and status. This is the DISCOVERY TOOL for job ids. Paginated with limit and offset (default 100, maximum 1000).

ParamTypeRequiredDefaultDescription
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] Update a field job — reschedule it, reassign it or change its status. Provide jobId from uisp_list_jobs and a JSON object body with only the fields to change. A partial update. Rescheduling or reassigning may notify the technician and, depending on the ISP's setup, the customer.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.
jobIdstringyesId of the job (from uisp_list_jobs).

[Ubiquiti UISP] Update a job attachment's record — its name or description. Provide attachmentId from uisp_list_job_attachments and a JSON object body with only the fields to change.

ParamTypeRequiredDefaultDescription
attachmentIdstringyesId of the attachment (from uisp_list_job_attachments).
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.

[Ubiquiti UISP] Edit a job comment. Provide commentId from uisp_list_job_comments and a JSON object body with only the fields to change.

ParamTypeRequiredDefaultDescription
commentIdstringyesId of the job comment (from uisp_list_job_comments).
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.

[Ubiquiti UISP] Update a job task — mark it complete or change its description. Provide taskId from uisp_list_job_tasks and a JSON object body with only the fields to change.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.
taskIdstringyesId of the job task (from uisp_list_job_tasks).

Billing: Organizations

ToolPlanAccessSummary
uisp_create_organizationProWriteCreate a new legal entity for issuing invoices.
uisp_delete_organizationProDestructiveDESTRUCTIVE: delete a legal entity.
uisp_enqueue_emailProDestructiveDispatch a queued email.
uisp_geocode_addressFreeRead-onlyTurn a postal address into map coordinates using UISP's own geocoder.
uisp_get_next_invoice_numberFreeRead-onlyGet the next invoice number an organization will issue.
uisp_get_next_proforma_invoice_numberFreeRead-onlyGet the next proforma invoice number an organization will issue.
uisp_get_next_quote_numberFreeRead-onlyGet the next quote number an organization will issue.
uisp_get_organizationFreeRead-onlyGet one organization in full — trading name, address, currency, tax registration and invoicing defaults.
uisp_get_permission_groupFreeRead-onlyGet one CRM permission group's definition — exactly what the role allows.
uisp_list_organizationsFreeRead-onlyList the ISP's own legal entities — the businesses that issue invoices, each with its name, address, currency and tax registration.
uisp_list_permission_groupsFreeRead-onlyList the CRM permission groups — the roles that decide what staff can do on the billing side.
uisp_suggest_addressFreeRead-onlyGet address suggestions for a partial query — the autocomplete behind UISP's address fields.
uisp_update_organizationProDestructiveDESTRUCTIVE: change a legal entity's details.

[Ubiquiti UISP] Create a new legal entity for issuing invoices. Provide a JSON object body with its name, address, currency and tax registration — model it on an existing one from uisp_get_organization. Additive: a new organization issues nothing until invoices are raised under it. Most ISPs need only one, so check uisp_list_organizations before adding another.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the entity's name, address, currency and tax registration. Model it on the output of uisp_get_organization.

[Ubiquiti UISP] DESTRUCTIVE: delete a legal entity. Provide organizationId from uisp_list_organizations. This is among the widest-reaching deletes available: every subscriber, service, invoice and payment belongs to an organization, and removing the entity that issued them affects the whole billing history. On a single-entity ISP it takes out the entire CRM. There is no undo — do this only for an entity created in error with nothing under it, and confirm with uisp_list_clients that it has no subscribers.

ParamTypeRequiredDefaultDescription
organizationIdstringyesId of the organization to delete (from uisp_list_organizations). Confirm it has no subscribers with uisp_list_clients first.

[Ubiquiti UISP] Dispatch a queued email. Provide the emailId of the queued message. This DELIVERS REAL EMAIL to a real customer and cannot be recalled once sent — it is the generic send behind UISP's mail queue, so confirm what the message is before dispatching it.

ParamTypeRequiredDefaultDescription
emailIdstringyesId of the queued email to dispatch. A real message is delivered and cannot be recalled.

[Ubiquiti UISP] Turn a postal address into map coordinates using UISP's own geocoder. Provide the address as text. This is a lookup and stores nothing — use it to check an address resolves before saving it on a subscriber or site. To geocode a record already in UISP, use uisp_geocode_client or uisp_geocode_service instead.

ParamTypeRequiredDefaultDescription
addressstringyesThe postal address to look up, as free text.

[Ubiquiti UISP] Get the next invoice number an organization will issue. Provide organizationId from uisp_list_organizations. Useful for reconciling against an external accounting system, or for checking the sequence has no gap.

ParamTypeRequiredDefaultDescription
organizationIdstringyesId of the organization (from uisp_list_organizations).

[Ubiquiti UISP] Get the next proforma invoice number an organization will issue. Provide organizationId from uisp_list_organizations. Proformas have their own sequence, separate from real invoices.

ParamTypeRequiredDefaultDescription
organizationIdstringyesId of the organization (from uisp_list_organizations).

[Ubiquiti UISP] Get the next quote number an organization will issue. Provide organizationId from uisp_list_organizations. Quotes have their own sequence.

ParamTypeRequiredDefaultDescription
organizationIdstringyesId of the organization (from uisp_list_organizations).

[Ubiquiti UISP] Get one organization in full — trading name, address, currency, tax registration and invoicing defaults. Provide organizationId from uisp_list_organizations.

ParamTypeRequiredDefaultDescription
organizationIdstringyesId of the organization (from uisp_list_organizations).

[Ubiquiti UISP] Get one CRM permission group's definition — exactly what the role allows. Provide groupId from uisp_list_permission_groups.

ParamTypeRequiredDefaultDescription
groupIdstringyesId of the permission group (from uisp_list_permission_groups).

[Ubiquiti UISP] List the ISP's own legal entities — the businesses that issue invoices, each with its name, address, currency and tax registration. This is the DISCOVERY TOOL for organization ids, and the cheapest read on the billing side, which is why it doubles as the CRM connection check. Most ISPs have exactly one.

[Ubiquiti UISP] List the CRM permission groups — the roles that decide what staff can do on the billing side. Read-only: StackJack does not expose creating or changing them, because that is privilege administration. This is the DISCOVERY TOOL for permission group ids and the right tool for an access review.

[Ubiquiti UISP] Get address suggestions for a partial query — the autocomplete behind UISP's address fields. Provide the partial text. A lookup that stores nothing; useful for resolving a half-remembered address before creating a subscriber or site.

ParamTypeRequiredDefaultDescription
querystringyesPartial address text to get suggestions for.

[Ubiquiti UISP] DESTRUCTIVE: change a legal entity's details. Provide organizationId from uisp_list_organizations and a JSON object body with only the fields to change. These details — trading name, address, tax registration, currency — appear on EVERY invoice this entity issues from now on, so an error here goes out on real financial documents to every customer. Read the current values with uisp_get_organization and confirm the change is correct before running it.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.
organizationIdstringyesId of the organization (from uisp_list_organizations). Its details appear on every invoice it issues.

Billing: Taxes, Surcharges & Documents

ToolPlanAccessSummary
uisp_create_surchargeProWriteAdd a surcharge to the catalogue.
uisp_create_taxProWriteCreate a tax rate.
uisp_delete_documentProDestructiveDESTRUCTIVE: delete a stored document permanently.
uisp_delete_surchargeProDestructiveDESTRUCTIVE: delete a surcharge from the catalogue.
uisp_delete_taxProDestructiveDESTRUCTIVE: delete a tax rate.
uisp_get_documentFreeRead-onlyGet one document's record — its name, type and what it is attached to.
uisp_get_surchargeFreeRead-onlyGet one surcharge's definition.
uisp_get_taxFreeRead-onlyGet one tax rate's definition.
uisp_list_documentsFreeRead-onlyList stored document records — contracts, agreements and files kept against the account, as metadata rather than file content.
uisp_list_surchargesFreeRead-onlyList the surcharge catalogue — the reusable extra charges (equipment rental, static IP and similar) that can be added to a subscription.
uisp_list_taxesFreeRead-onlyList the tax rates defined in UISP, with their names and percentages.
uisp_update_surchargeProDestructiveDESTRUCTIVE: change a surcharge in the catalogue.
uisp_update_taxProDestructiveDESTRUCTIVE: change a tax rate.

[Ubiquiti UISP] Add a surcharge to the catalogue. Provide a JSON object body with its name and amount. Additive: it charges nobody until it is applied to a subscription with uisp_create_service_surcharge.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the surcharge's name and amount.

[Ubiquiti UISP] Create a tax rate. Provide a JSON object body with its name and percentage. Additive: a new rate taxes nothing until a service plan or product is set to use it. Adding a rate is the safe way to handle a tax change — see uisp_update_tax for why editing an existing one is not.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with the tax's name and percentage.

[Ubiquiti UISP] DESTRUCTIVE: delete a stored document permanently. Provide documentId from uisp_list_documents. Documents held against accounts are usually contracts and signed agreements, so deleting one destroys the record of what the customer agreed to. Read what it is with uisp_get_document first. There is no undo.

ParamTypeRequiredDefaultDescription
documentIdstringyesId of the document to delete permanently (from uisp_list_documents).

[Ubiquiti UISP] DESTRUCTIVE: delete a surcharge from the catalogue. Provide surchargeId from uisp_list_surcharges. Subscriptions carrying it stop being charged it, which is revenue no longer collected — and if it covered rented equipment the customer still has, the ISP simply stops billing for it. Check what uses it first.

ParamTypeRequiredDefaultDescription
surchargeIdstringyesId of the surcharge to delete (from uisp_list_surcharges). Subscriptions carrying it stop being charged.

[Ubiquiti UISP] DESTRUCTIVE: delete a tax rate. Provide taxId from uisp_list_taxes. Plans and products referencing it lose their tax treatment, so subsequent invoices can be raised with no tax at all — a quiet failure that is only noticed at the next return. Check what uses it before deleting, and prefer leaving an obsolete rate in place so historical invoices remain explicable.

ParamTypeRequiredDefaultDescription
taxIdstringyesId of the tax rate to delete (from uisp_list_taxes). Plans referencing it lose their tax treatment.

[Ubiquiti UISP] Get one document's record — its name, type and what it is attached to. Provide documentId from uisp_list_documents. This returns the record, not the file content.

ParamTypeRequiredDefaultDescription
documentIdstringyesId of the document (from uisp_list_documents).

[Ubiquiti UISP] Get one surcharge's definition. Provide surchargeId from uisp_list_surcharges. Note this is the catalogue entry, not a surcharge applied to a particular subscription — for that use uisp_get_service_surcharge.

ParamTypeRequiredDefaultDescription
surchargeIdstringyesId of the surcharge (from uisp_list_surcharges).

[Ubiquiti UISP] Get one tax rate's definition. Provide taxId from uisp_list_taxes.

ParamTypeRequiredDefaultDescription
taxIdstringyesId of the tax rate (from uisp_list_taxes).

[Ubiquiti UISP] List stored document records — contracts, agreements and files kept against the account, as metadata rather than file content. This is the DISCOVERY TOOL for document ids. Paginated with limit and offset (default 100, maximum 1000).

ParamTypeRequiredDefaultDescription
limitintegerno100Results per page (default 100, maximum 1000).
offsetintegerno0How many records to skip, for paging (default 0).

[Ubiquiti UISP] List the surcharge catalogue — the reusable extra charges (equipment rental, static IP and similar) that can be added to a subscription. This is the DISCOVERY TOOL for surcharge ids, which uisp_create_service_surcharge takes.

[Ubiquiti UISP] List the tax rates defined in UISP, with their names and percentages. This is the DISCOVERY TOOL for tax ids, which service plans and products reference. Read this when checking why an invoice's tax figure is what it is.

[Ubiquiti UISP] DESTRUCTIVE: change a surcharge in the catalogue. Provide surchargeId from uisp_list_surcharges and a JSON object body with only the fields to change. The surcharge is SHARED: changing its amount alters what every subscription carrying it is billed, from their next invoice. Check the current value with uisp_get_surcharge first.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.
surchargeIdstringyesId of the surcharge (from uisp_list_surcharges). Every subscription carrying it is affected.

[Ubiquiti UISP] DESTRUCTIVE: change a tax rate. Provide taxId from uisp_list_taxes and a JSON object body with only the fields to change. A rate is SHARED by every plan and product referencing it, and it is a legal figure — a wrong percentage produces incorrectly-taxed invoices across the whole customer base, which then have to be corrected individually. When a real tax rate changes, the safer pattern is usually to create a NEW rate with uisp_create_tax and move plans onto it, so historical invoices keep the rate they were issued at.

ParamTypeRequiredDefaultDescription
fieldsJsonstringyesJSON object body with only the fields to change. Omitted fields are left unchanged.
taxIdstringyesId of the tax rate (from uisp_list_taxes). Every plan and product using it is affected.