Skip to main content

Python package

MikrotikApi

MikrotikApi is a project intended for managing RouterOS.

:warning: WARNING: This project is currently in a beta stage. It's still under active development and might undergo changes. Use it at your own risk.

Installation

MikrotikApi was developed using the Python programming language. You can install the project's dependencies with pip:

pip install mikrotikapi

Or using poetry:

poetry add mikrotikapi

Usage

import os
from mikrotikapi import ROSApi
from mikrotikapi.schemes import NatScheme
from mikrotikapi.schemes.fields.action import ActionController
from mikrotikapi.schemes.fields.chain import ChainController



your_login = os.getenv("your_login")
your_password = os.getenv("your_password")
mikrotik_address = os.getenv("mikrotik_address") # look setting www-ssl port
mikrotik_port = os.getenv("mikrotik_port")

api = ROSApi(
    url=mikrotik_address,
    username=your_login,
    password=your_password,
)

nat = NatScheme(
    src_address="172.22.8.0/30",
    chain="srcnat",
    action="masquerade",
)

# NatScheme(to_addresses=None, chain=<ChainController.srcnat: 'srcnat'>,
# dst_addresses=None, dst_address=None, src_address_list=None, src_address=IPv4Network
# ('172.22.8.0/30'), action=<ActionController.masquerade: 'masquerade'>, 
# to_ports=None, protocol=None, id=None, bytes=0, comment='', disabled=False, 
# dst_port=None, dynamic=None, invalid=None, log=False, log_prefix='', packets=None,
# routing_mark=None, in_interface='', out_interface='')

# or...

nat = NatScheme(
    src_address="172.22.8.0/30",
    chain=ChainController.srcnat,
    action=ActionController.masquerade,
)

# or...
nat = NatScheme()
nat.src_address = "172.22.8.0/30"
nat.chain = ChainController.srcnat
nat.action = ActionController.masquerade

# create
api.create(nat)

# or update
nat.comment = "first comment"
api.update(nat) # old api.objects(NatScheme).update(nat)

# or...

all_nats = api.objects(NatScheme).all()

Release files for mikrotikapi 0.4.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mikrotikapi 0.4.2
File Size Uploaded
mikrotikapi-0.4.2.tar.gz 15.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mikrotikapi 0.4.2
File Interpreter ABI Platform
mikrotikapi-0.4.2-py3-none-any.whl Python 3 none any Details

Total release size: 45.3 kB

Release files / mikrotikapi-0.4.2.tar.gz

Download URL mikrotikapi-0.4.2.tar.gz
Size 15.6 kB
Tags Source
SHA-256 checksum
How to use checksums
8858b1ebf510cb31226b0e40f1a39c9b11e8a9247f13133499bf27fc329386e5
BLAKE2b-256 checksum
How to use checksums
b60aaa384118697fd5249eab5877744c7c2e44ad8f1481dc4f1d52f30524f6f0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.2 CPython/3.10.13 Linux/6.5.0-1015-azure

Release files / mikrotikapi-0.4.2-py3-none-any.whl

Download URL mikrotikapi-0.4.2-py3-none-any.whl
Size 29.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
338d253d95cbe9e67e1b1820ac4e44d07225b60e110cb6ed56187fc1e27530ff
BLAKE2b-256 checksum
How to use checksums
8cb8b4f9aa4b6bc9e1b8803ce22f9aa1c0a871bb2bfc9fa37b75bc612a93c27c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.8.2 CPython/3.10.13 Linux/6.5.0-1015-azure

Release history Release notifications | RSS feed

This release

0.4.2 This release

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.13

2 release files

0.3.12

2 release files

0.3.11

2 release files

0.3.10

2 release files

0.3.9

2 release files

0.3.8

2 release files

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.17

2 release files

0.2.15

2 release files

0.2.14

2 release files

0.2.13

2 release files

0.2.12

2 release files

0.2.11

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

1 release file

0.2.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page