API Specifications

This application exposes a REST API built with Django REST Framework (DRF) and documented interactively with DRF-Spectacular.

Base URL

All API endpoints live under /api/v1/.

Resources & endpoints

ResourceEndpointOperations
Sites /api/v1/sites/ list, create, retrieve, update, delete
Devices /api/v1/devices/ list, create, retrieve, update, delete
Interfaces /api/v1/interfaces/ list, create, retrieve, update, delete
Connections /api/v1/connections/ list, create, retrieve, update, delete
Traced connections /api/v1/connections/traced/ list all connections touching a site, device, or interface.
Query parameters: type (site / device / interface) and id (primary key).

Browse traced connections

Use the form below to open the traced-connections endpoint directly in your browser. You must be logged in (session cookie) for the request to succeed.

Authentication

The API uses Django session authentication. Log in via the Admin interface (or any standard Django login view) to obtain a session cookie, then include that cookie in subsequent API requests.

Read operations (GET) are available to any authenticated user. Write operations (POST, PUT, PATCH, DELETE) are restricted to superusers only.

Interactive documentation

Two interactive API browsers are available. Both let you authenticate with your session cookie and make live requests directly from the browser.

How to use Swagger UI

  1. Log in to the Admin interface in another browser tab so your session cookie is set.
  2. Open Swagger UI.
  3. Click Authorize, then tick sessionAuth and click Authorize.
  4. Expand any endpoint, click Try it out, fill in any required fields, and click Execute.