RouterOS Interface API

Network interface management

Operations 3

GET /interface List Interfaces #
GET /interface/{id} Get Interface #
PATCH /interface/{id} Update Interface #

Documentation

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/routeros-interface-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

routeros-interface-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: RouterOS REST Bridge Interface API
  description: The RouterOS REST API is a JSON wrapper over the RouterOS console API, available from RouterOS v7.1beta4+. It provides CRUD operations on all RouterOS configuration menus via standard HTTP methods. Authentication uses HTTP Basic Auth with console credentials. All values in responses are encoded as strings.
  version: 7.1+
  contact:
    name: MikroTik Support
    url: https://mikrotik.com/support
  license:
    name: Proprietary
    url: https://mikrotik.com
servers:
- url: https://{routerIP}/rest
  description: RouterOS REST API (HTTPS recommended)
  variables:
    routerIP:
      default: 192.168.88.1
      description: IP address of the RouterOS device
security:
- basicAuth: []
tags:
- name: Interface
  description: Network interface management
paths:
  /interface:
    get:
      operationId: listInterfaces
      summary: List Interfaces
      description: Retrieve all network interfaces on the device.
      tags:
      - Interface
      parameters:
      - name: type
        in: query
        description: Filter by interface type (ether, bridge, vlan, etc.)
        schema:
          type: string
      - name: running
        in: query
        description: Filter by running state
        schema:
          type: string
          enum:
          - 'true'
          - 'false'
      responses:
        '200':
          description: List of interfaces
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Interface'
  /interface/{id}:
    get:
      operationId: getInterface
      summary: Get Interface
      description: Retrieve a specific interface by ID.
      tags:
      - Interface
      parameters:
      - $ref: '#/components/parameters/RecordId'
      responses:
        '200':
          description: Interface details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Interface'
    patch:
      operationId: updateInterface
      summary: Update Interface
      description: Modify an existing interface configuration.
      tags:
      - Interface
      parameters:
      - $ref: '#/components/parameters/RecordId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InterfaceUpdate'
      responses:
        '200':
          description: Interface updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Interface'
components:
  schemas:
    InterfaceUpdate:
      type: object
      properties:
        name:
          type: string
        mtu:
          type: string
        disabled:
          type: string
          enum:
          - 'true'
          - 'false'
        comment:
          type: string
    Interface:
      type: object
      description: RouterOS network interface
      properties:
        .id:
          type: string
          description: Internal RouterOS record ID
        name:
          type: string
          description: Interface name
          example: ether1
        type:
          type: string
          description: Interface type (ether, bridge, vlan, pppoe, etc.)
          example: ether
        mtu:
          type: string
          description: Maximum transmission unit
          example: '1500'
        mac-address:
          type: string
          description: MAC address
          example: AA:BB:CC:DD:EE:FF
        running:
          type: string
          description: Whether the interface is running
          enum:
          - 'true'
          - 'false'
        disabled:
          type: string
          enum:
          - 'true'
          - 'false'
        comment:
          type: string
  parameters:
    RecordId:
      name: id
      in: path
      required: true
      description: RouterOS internal record identifier
      schema:
        type: string
      example: '*1'
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic Auth using RouterOS console credentials