This is a custom integration for Home Assistant that adds service actions to query and activate visitor parking permits using MiPermit.
Caution
This project includes code produced with a "generative AI". This is documented here for transparency.
This integration needs a 'headless' browser that understands the Chrome DevTools Protocol (CDP) over a websocket.
The easiest way to set this up is probably alexbelgium's Browserless Chrome Home Assistant add-on, and this integration assumes that you're using this by default.
This project uses the MIT license.
Warning
This project is entirely unaffiliated with MiPermit Ltd, and any of MiPermit's partners, suppliers or customers.
Caution
This integration is offered without any warranty. It may break at any time and you will be liable for any consequences. I will not be paying your parking tickets.
Tip
You can create a unique 'member login' for Home Assistant to login into MiPermit in the Members & Vehicles section of the MiPermit website.
Retrieves all currently active visitor permits for a given operator.
| Parameter | Type | Required | Description |
|---|---|---|---|
operator |
string | Yes | Car Park Operator name (e.g. Cardiff City Council) |
action: mipermit.get_permits
data:
operator: "Cardiff City Council"success: true
permits:
- registration: BD51SMR
valid: 01/06/2026 15:22 to 16:22
remaining_time: 1 hour
status: Active # Only Active permits are returnedActivates a new visitor permit.
| Parameter | Type | Required | Description |
|---|---|---|---|
operator |
string | Yes | Car Park Operator name (e.g. Cardiff City Council) |
registration |
string | Yes | Vehicle registration number (e.g. BD51SMR) |
permit_type |
string | Yes | Case-sensitive regex matched against permit type options (e.g. Red) |
duration |
integer | Yes | Duration in whole hours, 1–100 (e.g. 1) |
action: mipermit.activate_permit
data:
operator: "Cardiff City Council"
registration: "BD51SMR"
permit_type: "Red"
duration: 1success: true
permit:
registration: BD51SMR
valid: 01/06/2026 15:23 to 16:23
remaining_time: 1 hour
status: Active
all_active_permits:
- registration: BD51SMR
valid: 01/06/2026 15:23 to 16:23
remaining_time: 1 hour
status: Active
-
Each action opens a fresh browser context in the remote Browserless instance, logs in to MiPermit, and navigates the site. Expect each call to take 10–30 seconds depending on network conditions.
-
The
permit_typeparameter is a case-sensitive regular expression, soRedmatches"(762 available) - Visitor - Red (850 x 1 hour) - 1 hour". Use(?i)redfor case-insensitive matching.