About Nautobot
Nautobot is an open-source network source of truth and automation platform from Network to Code. It records network devices, their interfaces and IP addresses, circuits, and the locations they live in. Serval connects to your own Nautobot 3.x instance and reads from it. The integration never writes to Nautobot. The integration is marked Beta in the connect screen.What the Nautobot integration enables
Prepare Nautobot
Serval needs an API token for a Nautobot user whose permissions cover the data Serval should read.Create a service user
Grant view permissions
- Devices: devices, device types, manufacturers, platforms, software versions, roles, statuses, racks, and tags
- Locations: locations and location types
- Interfaces and IP addresses: interfaces, IP addresses, prefixes, and namespaces
- Circuits: circuits, circuit terminations, circuit types, providers, and provider networks
- Tenancy: tenants
Create a read-only API token
Connect in Serval
Open the Nautobot connect form
Enter the Nautobot URL
network.example.com or network.example.com:8443. Nautobot must be served over HTTPS at the root of the host. A URL starting with http://, or one with a path, is rejected when you save.Paste the API token
Save, then run the health checks
Verifying the connection
The connection ships five health checks that make live calls to Nautobot:- Validate API connection: reads Nautobot’s status endpoint. On success: “Successfully connected to Nautobot [version].” It fails if the instance runs a Nautobot release other than 3.x.
- List devices: reads one device and reports how many devices the token can see.
- List interfaces: reads one interface and reports how many interfaces the token can see.
- List circuits: reads one circuit and reports how many circuits the token can see.
- Query GraphQL API: runs a one-device GraphQL query. Asset ingestion reads through GraphQL, so ingestion can’t work until this check passes.
Syncing Nautobot inventory into Serval
Install the ingestion workflows you need and use them as asset sync sources:Gotchas and troubleshooting
Your Nautobot instance must be reachable from Serval
Your Nautobot instance must be reachable from Serval
Records are missing even though the health checks pass
Records are missing even though the health checks pass
Only interfaces with IP addresses are synced
Only interfaces with IP addresses are synced
has_ip_addresses filter.Site-specific fields come from custom fields
Site-specific fields come from custom fields
Some Nautobot endpoints are not covered by the typed API
Some Nautobot endpoints are not covered by the typed API
name__ic, name__nisw, and so on) aren’t part of it. Exact-match and range filters are.Serval pins the API version
Serval pins the API version
Need help? Contact support@serval.com for assistance with your Nautobot integration.

