Skip to content

rConfig V8 Core REST API guide

rConfig V8 Core ships a token-authenticated REST API for programmatic access to your network configuration data. Use it to manage devices, retrieve and search configurations, trigger on-demand backups, and manage supporting data (templates, categories, commands, vendors, tags, tasks, users) from scripts, schedulers, or other systems.

The API is available from V8 Core 8.2.3 onwards.

All requests are authenticated with an API token that you create in the web interface:

  1. Go to Settings → REST API.
  2. Click New Token, give it a descriptive name, and generate it.
  3. Copy the token immediately: it is shown only once. If you lose it, delete it and create a new one.

To revoke access, delete the token from the same screen. Revocation takes effect immediately for any client using that token.

Send your token in the apitoken request header on every call:

Terminal window
curl -H "apitoken: YOUR_API_TOKEN" \
-H "Accept: application/json" \
https://your-rconfig-server.com/api/v1/devices

Alternatively, you can pass it as an apitoken query parameter (useful for quick browser testing of GET endpoints):

https://your-rconfig-server.com/api/v1/devices?apitoken=YOUR_API_TOKEN

The same token works for both the v1 and v2 endpoints. A missing or invalid token returns 401 Unauthorized.

fetch("https://your-rconfig-server.com/api/v1/devices", {
headers: {
Accept: "application/json",
"Content-Type": "application/json",
apitoken: "YOUR_API_TOKEN",
},
})
.then((response) => response.json())
.then((data) => console.log(data));

The API is exposed under two version prefixes:

VersionBase URLFocus
v1https://your-rconfig-server.com/api/v1/Broad CRUD across devices, configs, templates, categories, commands, vendors, tags, tasks, users, and device credentials
v2https://your-rconfig-server.com/api/v2/Newer endpoints: device summary/enable/disable, config search and status, config changes, and dashboard health

The version is part of the URL path and is required on every request. See the in-app documentation for the exact endpoints available in each version.

Endpoints return JSON and use standard HTTP status codes:

  • 200: success
  • 401: missing or invalid API token
  • 404: resource not found
  • 422: validation error (the response body describes the failing fields)

Most endpoints wrap their payload in a consistent envelope:

{
"success": true,
"data": {},
"message": "Success"
}

List endpoints are paginated; pass perPage (and page) to control page size. Some list endpoints also support filtering and sorting query parameters: the in-app reference documents these per endpoint.

At a glance, the REST API lets you:

  • Devices: list, view, create, update, delete, enable/disable, and a backup summary (v2).
  • Configurations: list, view, delete, search across stored configs, and fetch configs by device or status. Config change diffs are available in v2.
  • On-demand backups: trigger a download for a device (/api/v1/download-now/{id}).
  • Supporting data: full CRUD for templates, categories, commands, vendors, tags, tasks, users, and device credentials.
  • System: basic dashboard and health information.