v62

latestOpenAPI 3.1.0Dual (AGPL3.0, Commercial License Available)raw.githubusercontent.com2026-08-03211303932.5 KB
Topologies
internal

Unified entity-set endpoint for the topology view.

?snapshot_id=<id> resolves to the snapshot's taken_at and returns the as-of-T entity set; otherwise returns live entities. The frontend TopologyTab is the sole intended consumer.

get/api/v1/topology/data

Query parameters

network_idstring uuid required

Network to read entities for. Required.

snapshot_idstring uuid nullable

When set, returns the entity set as it was when this snapshot was taken. When omitted, returns live entities.

mark_viewedboolean nullable

When true, records the FirstTopologyRebuild onboarding milestone (the user has viewed their topology). Only the frontend's explicit on-tab view sets this — the background topology-data query never does — so the milestone never fires from other tabs. One-time per org (guarded below + subscriber dedup).

Response

Topology entity bundle

errorstring nullable

Human-readable failure message. Omitted on success.

successboolean required

true when the request succeeded. false responses carry error instead of data.

Example response

{
  "data": {
    "bindings": [
      {
        "created_at": "2026-07-29T15:23:06.660397Z",
        "first_discovery_id": null,
        "id": "bdb8981f-4fca-4ed5-a9f6-0ee40dfa6ca7",
        "ip_address_id": "550e8400-e29b-41d4-a716-446655440005",
        "last_discovery_id": null,
        "last_seen_at": "2026-07-29T15:23:06.660397Z",
        "lineage_id": null,
        "network_id": "550e8400-e29b-41d4-a716-446655440002",
        "port_id": "550e8400-e29b-41d4-a716-446655440006",
        "service_id": "550e8400-e29b-41d4-a716-446655440007",
        "type": "Port",
        "updated_at": "2026-07-29T15:23:06.660397Z",
        "valid_from": "2026-07-29T15:23:06.660397Z",
        "valid_to": null
      }
    ],
    "dependencies": [
      {
        "color": "Blue",
        "created_at": "2026-01-15T10:30:00Z",
        "dependency_type": "RequestPath",
        "description": "HTTP/HTTPS services dependency",
        "edge_style": "Bezier",
        "id": "550e8400-e29b-41d4-a716-446655440008",
        "lineage_id": null,
        "members": {
          "service_ids": [],
          "type": "Services"
        },
        "name": "Web Services",
        "network_id": "550e8400-e29b-41d4-a716-446655440002",
        "source": {
          "type": "Manual"
        },
        "tags": [],
        "updated_at": "2026-01-15T10:30:00Z",
        "valid_from": "2026-01-15T10:30:00Z",
        "valid_to": null
      }
    ],
    "hosts": [
      {
        "created_at": "2026-01-15T10:30:00Z",
        "credential_assignments": [],
        "description": "Primary web server",
        "first_discovery_id": null,
        "hidden": false,
        "hostname": "web-server-01.local",
        "id": "550e8400-e29b-41d4-a716-446655440003",
        "last_discovery_id": null,
        "last_seen_at": "2026-01-15T10:30:00Z",
        "lineage_id": null,
        "name": "web-server-01",
        "network_id": "550e8400-e29b-41d4-a716-446655440002",
        "source": {
          "type": "Manual"
        },
        "tags": [],
        "updated_at": "2026-01-15T10:30:00Z",
        "valid_from": "2026-01-15T10:30:00Z",
        "valid_to": null,
        "virtualization": null
      }
    ],
    "interfaces": [
      {
        "cdp_address": "192.168.1.1",
        "lldp_mgmt_addr": "192.168.1.1",
        "mac_address": "a4:bb:6d:12:34:56"
      }
    ],
    "ip_addresses": [
      {
        "created_at": "2026-01-15T10:30:00Z",
        "first_discovery_id": null,
        "host_id": "550e8400-e29b-41d4-a716-446655440003",
        "id": "550e8400-e29b-41d4-a716-446655440005",
        "ip_address": "192.168.1.100",
        "last_discovery_id": null,
        "last_seen_at": "2026-01-15T10:30:00Z",
        "lineage_id": null,
        "mac_address": "DE:AD:BE:EF:CA:FE",
        "name": "eth0",
        "network_id": "550e8400-e29b-41d4-a716-446655440002",
        "position": 0,
        "subnet_id": "550e8400-e29b-41d4-a716-446655440004",
        "updated_at": "2026-01-15T10:30:00Z",
        "valid_from": "2026-01-15T10:30:00Z",
        "valid_to": null
      }
    ],
    "ports": [
      {
        "created_at": "2026-01-15T10:30:00Z",
        "first_discovery_id": null,
        "host_id": "550e8400-e29b-41d4-a716-446655440003",
        "id": "550e8400-e29b-41d4-a716-446655440006",
        "last_discovery_id": null,
        "last_seen_at": "2026-01-15T10:30:00Z",
        "lineage_id": null,
        "network_id": "550e8400-e29b-41d4-a716-446655440002",
        "number": 80,
        "protocol": "Tcp",
        "type": "Http",
        "updated_at": "2026-01-15T10:30:00Z",
        "valid_from": "2026-01-15T10:30:00Z",
        "valid_to": null
      }
    ],
    "services": [
      {
        "bindings": [
          {
            "created_at": "2026-07-29T15:23:06.660341Z",
            "first_discovery_id": null,
            "id": "999dbf39-0357-4b20-8bd8-cc20520334ea",
            "ip_address_id": "550e8400-e29b-41d4-a716-446655440005",
            "last_discovery_id": null,
            "last_seen_at": "2026-07-29T15:23:06.660341Z",
            "lineage_id": null,
            "network_id": "550e8400-e29b-41d4-a716-446655440002",
            "port_id": "550e8400-e29b-41d4-a716-446655440006",
            "service_id": "550e8400-e29b-41d4-a716-446655440007",
            "type": "Port",
            "updated_at": "2026-07-29T15:23:06.660341Z",
            "valid_from": "2026-07-29T15:23:06.660341Z",
            "valid_to": null
          }
        ],
        "created_at": "2026-01-15T10:30:00Z",
        "first_discovery_id": null,
        "host_id": "550e8400-e29b-41d4-a716-446655440003",
        "id": "550e8400-e29b-41d4-a716-446655440007",
        "last_discovery_id": null,
        "last_seen_at": "2026-01-15T10:30:00Z",
        "lineage_id": null,
        "name": "nginx",
        "network_id": "550e8400-e29b-41d4-a716-446655440002",
        "position": 0,
        "service_definition": "Unclaimed Open Ports",
        "source": {
          "type": "Manual"
        },
        "tags": [],
        "updated_at": "2026-01-15T10:30:00Z",
        "valid_from": "2026-01-15T10:30:00Z",
        "valid_to": null,
        "virtualization": null
      }
    ],
    "subnets": [
      {
        "cidr": "192.168.1.0/24",
        "created_at": "2026-01-15T10:30:00Z",
        "description": "Local area network",
        "first_discovery_id": null,
        "id": "550e8400-e29b-41d4-a716-446655440004",
        "last_discovery_id": null,
        "last_seen_at": "2026-01-15T10:30:00Z",
        "lineage_id": null,
        "name": "LAN",
        "network_id": "550e8400-e29b-41d4-a716-446655440002",
        "source": {
          "type": "Manual"
        },
        "subnet_type": "Lan",
        "tags": [],
        "updated_at": "2026-01-15T10:30:00Z",
        "valid_from": "2026-01-15T10:30:00Z",
        "valid_to": null
      }
    ],
    "tags": [
      {
        "color": "Green",
        "created_at": "2026-01-15T10:30:00Z",
        "description": "Production environment resources",
        "id": "550e8400-e29b-41d4-a716-44665544000a",
        "is_application": false,
        "lineage_id": null,
        "name": "production",
        "organization_id": "550e8400-e29b-41d4-a716-446655440001",
        "updated_at": "2026-01-15T10:30:00Z",
        "valid_from": "2026-01-15T10:30:00Z",
        "valid_to": null
      }
    ]
  },
  "meta": {
    "api_version": 1,
    "server_version": "0.17.7"
  }
}