from netbox.api.routers import NetBoxRouter from . import views router = NetBoxRouter() router.APIRootView = views.DCIMRootView # Sites router.register('regions', views.RegionViewSet) router.register('site-groups', views.SiteGroupViewSet) router.register('sites', views.SiteViewSet) # Racks router.register('locations', views.LocationViewSet) router.register('rack-roles', views.RackRoleViewSet) router.register('racks', views.RackViewSet) router.register('rack-reservations', views.RackReservationViewSet) # Device/module types router.register('manufacturers', views.ManufacturerViewSet) router.register('device-types', views.DeviceTypeViewSet) router.register('module-types', views.ModuleTypeViewSet) # Device type components router.register('console-port-templates', views.ConsolePortTemplateViewSet) router.register('console-server-port-templates', views.ConsoleServerPortTemplateViewSet) router.register('power-port-templates', views.PowerPortTemplateViewSet) router.register('power-outlet-templates', views.PowerOutletTemplateViewSet) router.register('interface-templates', views.InterfaceTemplateViewSet) router.register('front-port-templates', views.FrontPortTemplateViewSet) router.register('rear-port-templates', views.RearPortTemplateViewSet) router.register('module-bay-templates', views.ModuleBayTemplateViewSet) router.register('device-bay-templates', views.DeviceBayTemplateViewSet) router.register('inventory-item-templates', views.InventoryItemTemplateViewSet) # Device/modules router.register('device-roles', views.DeviceRoleViewSet) router.register('platforms', views.PlatformViewSet) router.register('devices', views.DeviceViewSet) router.register('virtual-device-contexts', views.VirtualDeviceContextViewSet) router.register('modules', views.ModuleViewSet) # Device components router.register('console-ports', views.ConsolePortViewSet) router.register('console-server-ports', views.ConsoleServerPortViewSet) router.register('power-ports', views.PowerPortViewSet) router.register('power-outlets', views.PowerOutletViewSet) router.register('interfaces', views.InterfaceViewSet) router.register('front-ports', views.FrontPortViewSet) router.register('rear-ports', views.RearPortViewSet) router.register('module-bays', views.ModuleBayViewSet) router.register('device-bays', views.DeviceBayViewSet) router.register('inventory-items', views.InventoryItemViewSet) # Device component roles router.register('inventory-item-roles', views.InventoryItemRoleViewSet) # Cables router.register('cables', views.CableViewSet) router.register('cable-terminations', views.CableTerminationViewSet) # Virtual chassis router.register('virtual-chassis', views.VirtualChassisViewSet) # Power router.register('power-panels', views.PowerPanelViewSet) router.register('power-feeds', views.PowerFeedViewSet) # Miscellaneous router.register('connected-device', views.ConnectedDeviceViewSet, basename='connected-device') app_name = 'dcim-api' urlpatterns = router.urls