Integrate
everything
Full programmatic access to KyberGate. 16 endpoints covering devices, users, policies, activity, alerts, and reports. Build custom workflows, sync with your SIS, or create dashboards.
$ curl https://api.kybergate.com/v1/devices \
-H "Authorization: Bearer kg_live_abc123..."
{
"data": [
{
"id": "dev_iPad5_8f2a",
"name": "iPad-5th-Gen",
"status": "online",
"user": "jsmith@school.edu",
"policy": "elementary-strict",
"lastSeen": "2026-04-17T12:34:56Z"
}
],
"total": 847,
"page": 1,
"perPage": 25
}16 Endpoints
Everything you need to manage filtering programmatically.
/v1/devices/v1/devices/:id/v1/devices/:id/command/v1/users/v1/users/v1/users/:id/v1/policies/v1/policies/v1/policies/:id/v1/activity/v1/activity/summary/v1/alerts/v1/alerts/:id/v1/reports/weekly/v1/reports/compliance/v1/reports/customCode examples
Get started in minutes with your language of choice.
curl -X GET "https://api.kybergate.com/v1/devices?status=online&limit=50" \ -H "Authorization: Bearer kg_live_abc123..." \ -H "Content-Type: application/json"
import requests
api_key = "kg_live_abc123..."
headers = {"Authorization": f"Bearer {api_key}"}
# List online devices
response = requests.get(
"https://api.kybergate.com/v1/devices",
headers=headers,
params={"status": "online", "limit": 50}
)
devices = response.json()["data"]
print(f"Online: {len(devices)} devices")const response = await fetch(
"https://api.kybergate.com/v1/devices?status=online&limit=50",
{
headers: {
"Authorization": "Bearer kg_live_abc123...",
"Content-Type": "application/json",
},
}
);
const { data: devices, total } = await response.json();
console.log(`Online: ${devices.length} of ${total}`);API Features
API Key Auth
Create multiple API keys with different permission scopes. Rotate, revoke, and monitor usage from the dashboard.
Granular Permissions
10 permission scopes — devices, users, policies, activity, alerts, and reports. Read-only or full CRUD per scope.
Rate Limiting
100 to 5,000 requests per minute depending on your tier. Response headers show remaining quota.
Pagination & Filtering
All list endpoints support cursor pagination, date ranges, field filtering, and sorting. Efficient at any scale.
Webhooks
Real-time push notifications for alerts, device events, and policy changes. Custom endpoints, Slack, or Discord.
SDKs Coming Soon
Auto-generated Python, Node.js, and Go SDKs from our OpenAPI spec. Type-safe with full IntelliSense.
Permission Scopes
Give each API key only the access it needs.
devices:readdevices:writeusers:readusers:writepolicies:readpolicies:writeactivity:readalerts:readalerts:writereports:readWhat people build with our API
SIS Roster Sync
Sync student rosters from PowerSchool, Infinite Campus, or Skyward. Auto-create users and assign to organizational units.
Custom Dashboards
Build Tableau or Power BI dashboards from activity and reporting endpoints. Visualize filtering data your way.
Helpdesk Automation
Connect with Zendesk or ServiceNow. Auto-unblock domains when teachers submit a ticket. Auto-resolve when done.
Compliance Reporting
Generate CIPA compliance reports on demand. Pull activity summaries for board meetings or E-Rate audits.
Ready to integrate?
API access is included with every Enterprise plan. Start building in minutes.