Mikrotik Api Examples May 2026

leases = api(cmd='/ip/dhcp-server/lease/print') for lease in leases: if lease['comment'] == 'printer-api': print(f"Lease: {lease['address']} -> {lease['mac-address']}") Toggle a rule by comment (safer than index).

Let me know in the comments. Want the code as a ready-to-use Python script? Download the gist here. mikrotik api examples

print(f"Active connections: TCP={tcp_count}, UDP={udp_count}") Limit a client’s bandwidth via script. '') result = await loop.run_in_executor(None

import asyncio from librouteros import connect async def get_interfaces(): loop = asyncio.get_event_loop() api = await loop.run_in_executor(None, connect, '192.168.88.1', 'admin', '') result = await loop.run_in_executor(None, api, '/interface/print') return result comment='api-created') For production

Board: RB750Gr3 Uptime: 3d5h12m CPU Load: 7% Automating DHCP reservations.

api(cmd='/ip/dhcp-server/lease/add', address='192.168.88.50', mac_address='AA:BB:CC:DD:EE:FF', comment='printer-api') To verify:

api(cmd='/queue/simple/add', name='client-limited', target='192.168.88.100/32', max_limit='5M/5M', comment='api-created') For production, always use SSL on port 8729.