api scripts reference
API Scripts Reference
Date: 2026-01-07
Purpose: Quick reference for network infrastructure API scripts
Available Scripts
1. Tailscale Admin API
Script: scripts/tailscale-admin-api.sh
Purpose: List and manage Tailscale devices via Admin API
Usage:
export TAILSCALE_API_TOKEN="tskey-..." bash scripts/tailscale-admin-api.sh
Get API Token:
- Go to: https://login.tailscale.com/admin/settings/keys
- Create API token with device management permissions
Rename Device:
export TAILSCALE_API_TOKEN="tskey-..." bash scripts/tailscale-api-rename.sh
2. GL-iNet Router UCI API
Script: scripts/glinet-uci-api.sh
Purpose: Get router configuration via SSH + UCI commands
Usage:
# Via Tailscale bash scripts/glinet-uci-api.sh # Or specify host export GLINET_HOST="glinet-router.tailcf98b3.ts.net" bash scripts/glinet-uci-api.sh
What It Gets:
- WiFi SSIDs and security settings
- Tailscale status
- Network interfaces
- Firewall rules
Requirements:
- SSH access to router
- SSH key configured (or password)
3. Synology DSM API
Script: scripts/synology-dsm-api.sh
Purpose: Discover and access NAS via DSM REST API
Usage:
# Auto-discovery bash scripts/synology-dsm-api.sh # Or specify IP export NAS_IP="192.168.68.100" export NAS_USER="admin" export NAS_PASS="password" bash scripts/synology-dsm-api.sh
What It Gets:
- NAS system information
- API capabilities
- Network configuration
Requirements:
- Network access to NAS
- DSM credentials (for authenticated endpoints)
4. Complete Network Setup
Script: scripts/complete-network-setup.sh
Purpose: Run all checks for remaining 5 tasks
Usage:
bash scripts/complete-network-setup.sh
What It Checks:
- Tailscale device status
- SSID documentation
- GL-iNet router status
- NAS discovery
- Token organization status
API Endpoints Reference
Tailscale Admin API
Base URL: https://api.tailscale.com/api/v2/
Endpoints:
GET /tailnet/{tailnet}/devices- List devicesPATCH /tailnet/{tailnet}/devices/{deviceId}- Update devicePOST /tailnet/{tailnet}/devices/{deviceId}/authorized- Authorize device
Authentication: Bearer token
Tailscale Local API
Base URL: http://localhost:58427/localapi/v0/
Endpoints:
GET /status- Device statusGET /prefs- PreferencesPOST /prefs- Update preferences
Note: Requires local access, may need different port
GL-iNet Router (OpenWrt UCI)
Access: SSH to router
Commands:
uci show wireless- WiFi configurationuci show firewall- Firewall rulesuci show network- Network interfacestailscale status- Tailscale status
Synology DSM API
Base URL: https://{nas-ip}:5001/webapi/
Endpoints:
GET /query.cgi?api=SYNO.API.Info- API info (no auth)POST /auth.cgi?api=SYNO.API.Auth- AuthenticationGET /entry.cgi?api=SYNO.Core.System- System info (requires auth)
Authentication: Session-based (login first)