@john/tailscale
v2026.03.02.1
Tailscale tailnet management — 10 model types covering devices, users, ACLs, DNS, auth keys, webhooks, settings, contacts, posture, and log config. 22 workflows for device inventory, user lifecycle, ACL audit, security audit, compliance, incident response, monitoring, and more. Fix: OAuth token cache now keys on credentials so different tailnets/OAuth clients no longer share tokens.
Labels
Quality score
How well-documented and verifiable this extension is.
Not yet scored.
A score will be generated the next time this extension is published. The owner can also trigger scoring manually.
Install
$ swamp extension pull @john/tailscale| Argument | Type | Description |
|---|---|---|
| integrationId | string | Posture integration ID |
| Argument | Type | Description |
|---|---|---|
| provider | string | Provider name |
| cloudId | string | |
| clientId | string | |
| tenantId | string |
| Argument | Type | Description |
|---|---|---|
| integrationId | string | Posture integration ID |
| cloudId | string | |
| clientId | string | |
| tenantId | string |
| Argument | Type | Description |
|---|---|---|
| string | New email address |
| Argument | Type | Description |
|---|---|---|
| devicesApprovalOn | boolean | |
| devicesAutoUpdatesOn | boolean | |
| devicesKeyDurationDays | number | |
| usersApprovalOn | boolean | |
| usersRoleAllowedToJoinExternalTailnets | string | |
| networkFlowLoggingOn | boolean | |
| regionalRoutingOn | boolean | |
| postureIdentityCollectionOn | boolean |
| Argument | Type | Description |
|---|---|---|
| deviceId | string | Device ID |
| Argument | Type | Description |
|---|---|---|
| deviceId | string | Device ID to delete |
| Argument | Type | Description |
|---|---|---|
| deviceId | string | Device ID |
| Argument | Type | Description |
|---|---|---|
| deviceId | string | Device ID |
| Argument | Type | Description |
|---|---|---|
| deviceId | string | Device ID |
| Argument | Type | Description |
|---|---|---|
| deviceId | string | Device ID |
| Argument | Type | Description |
|---|---|---|
| deviceId | string | Device ID |
| Argument | Type | Description |
|---|---|---|
| deviceId | string | Device ID |
| name | string | New device name (FQDN) |
| Argument | Type | Description |
|---|---|---|
| deviceId | string | Device ID |
| ipv4 | string | New IPv4 address |
| Argument | Type | Description |
|---|---|---|
| deviceId | string | Device ID |
Resources
| Argument | Type | Description |
|---|---|---|
| endpointId | string | Webhook endpoint ID |
| Argument | Type | Description |
|---|---|---|
| endpointUrl | string | URL to receive webhook events |
| Argument | Type | Description |
|---|---|---|
| endpointId | string | Webhook endpoint ID |
| Argument | Type | Description |
|---|---|---|
| endpointId | string | Webhook endpoint ID to delete |
| Argument | Type | Description |
|---|---|---|
| endpointId | string | Webhook endpoint ID to test |
Resources
| Argument | Type | Description |
|---|---|---|
| userId | string | User ID |
| Argument | Type | Description |
|---|---|---|
| userId | string | User ID to approve |
| Argument | Type | Description |
|---|---|---|
| userId | string | User ID to suspend |
| Argument | Type | Description |
|---|---|---|
| userId | string | User ID to restore |
| Argument | Type | Description |
|---|---|---|
| userId | string | User ID to delete |
| Argument | Type | Description |
|---|---|---|
| userId | string | User ID |
| Argument | Type | Description |
|---|---|---|
| keyId | string | Auth key ID |
| Argument | Type | Description |
|---|---|---|
| keyId | string | Auth key ID to delete |
Onboard a new user — approve them and create a pre-authorized auth key
Offboard a user — suspend them and list their devices for cleanup
Full ACL audit — collect the current ACL policy, all devices, and all users for cross-referencing
Authorize a pending device to join the tailnet
Complete DNS configuration snapshot — nameservers, search paths, MagicDNS preferences, and split DNS
Complete tailnet summary — devices, users, DNS nameservers, ACL policy, and tailnet settings
Collect posture data for all devices — discover the fleet and posture integrations, then gather posture attributes per device
Find all devices in the tailnet and quarantine stale ones — deauthorize and tag as stale
Set up webhook monitoring and enable flow logging — configure log streaming, then create and test a webhook for security events
Create a new webhook and send a test event to verify delivery
Audit all device subnet routes — discover devices then collect advertised and enabled routes for each
Emergency device lockdown — deauthorize a suspect device, tag for investigation, collect routes and posture for forensics
Quarantine a device — deauthorize it and apply a quarantine tag
Validate then apply ACL changes — validation must pass before the policy is set
Full network configuration export — DNS (nameservers, search paths, MagicDNS, split DNS), ACL (JSON + raw HuJSON), and tailnet settings
Full compliance data collection — tailnet settings, contacts, ACL policy, posture integrations, log config, all users, and all devices
Complete user offboarding — suspend the user, snapshot ACL, list all devices and auth keys, then fetch device details for cleanup
Full security posture audit — devices, users, ACL policy, webhooks, and tailnet settings
Complete user onboarding — snapshot ACL and settings for audit trail, approve the user, set their role, create a pre-authorized auth key, then verify
Rotate auth keys — list existing keys and create a new replacement key
User access review — collect all users, devices, ACL policy, and auth keys, then fetch full profiles for each user
Discover all devices in the tailnet — hostname, OS, user, authorization status, tags, connectivity, and key expiry
Tailscale tailnet management — 10 model types covering devices, users, ACLs, DNS, auth keys, webhooks, settings, contacts, posture, and log config. 22 workflows for device inventory, user lifecycle, ACL audit, security audit, compliance, incident response, monitoring, and more.