Nine Fives Switch API

SPDT switch state control

OpenAPI Specification

nine-fives-switch-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Nine Fives Programmable REST Attenuator Switch API
  version: '1.0'
  description: JSON REST API served on port 80 by the Nine Fives POE-ATTEN-6G programmable RF attenuator for programmatic control and monitoring. Faithfully transcribed from the published device reference manual; the device also exposes SCPI over raw TCP (port 5025) and HiSLIP (port 4880). No authentication is required — the API is served directly by the device over the local network (Ethernet or USB-C).
  contact:
    name: Nine Fives
    url: https://ninefives.com
  x-generated: '2026-07-20'
  x-method: generated
  x-source: https://docs.ninefives.com/attenuator/rest-api/overview/
servers:
- url: http://{deviceIp}
  description: Device-hosted API on port 80 (default Ethernet fallback IP 192.168.0.95, USB-C 192.168.42.95)
  variables:
    deviceIp:
      default: 192.168.0.95
      description: The IP address of the attenuator device on the local network
tags:
- name: Switch
  description: SPDT switch state control
paths:
  /api/switch:
    get:
      operationId: getSwitchState
      tags:
      - Switch
      summary: Get current switch state
      description: Returns the current switch state (0 = RF0, 1 = RF1).
      responses:
        '200':
          description: Current switch state
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SwitchState'
    post:
      operationId: setSwitchState
      tags:
      - Switch
      summary: Set switch state
      description: Sets the switch state. Valid values are 0 (RF0) or 1 (RF1).
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SwitchState'
      responses:
        '200':
          description: State applied
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SwitchState'
        '400':
          description: Invalid state value (must be 0 or 1)
        '500':
          description: Failed to set switch state
components:
  schemas:
    SwitchState:
      type: object
      required:
      - state
      properties:
        state:
          type: integer
          enum:
          - 0
          - 1
          description: 0 = RF0, 1 = RF1