Starlink Router Config
Reference: Starlink Portal UI for Router Configuration
⚠️ Note: These router configurations are allowed and managed only via the official Starlink Portal.
The images shown below are provided for reference purposes only.


✅ Starlink Router Config Update allowed via provided API – Parameters
All the router config present on Starlink Portal can be configured
⚠️ Note: Starlink documentation does not provide official definitions or detailed descriptions
Router config Have 2 section:
Network Configuration
General Settings
⚙️ Network Configuration Parameter Mapping
🔧 1.1 WiFi Networks Configuration (basicServiceSets
)

Field Label (UI) | Config Parameter | Type | Notes/Conditions |
---|---|---|---|
Empty Networks |
| object | |
Network Name |
| string | SSID of the network |
Password |
| string | Network password |
WiFi Security |
| object | Security type of this network |
Split 2.4/5 GHz Bands | N/A | N/A | Enable to broadcast 2.4 GHz and 5GHz networks with different SSIDs |
Ethernet Only |
| NA | Ethernet only networks will not be available via WiFi and are for routing only |
🔐 WiFi Security Type Mapping
UI Option | Config Key | Requires Password | Notes |
---|---|---|---|
WPA2 |
| ✅ |
|
WPA3 |
| ✅ |
|
WPA2/WPA3 |
| ✅ |
|
WPA3-OWE |
| ❌ | No password object |
RADIUS |
| ✅/❓ | External config needed |
OPEN |
| ❌ | No password object |
🌐 1.2 Networking Options

Field Label (UI) | Config Parameter | Type | Notes/Conditions |
---|---|---|---|
Subnet |
| string | IPv4 Address and subnet |
VLAN |
| integer | Override the default VLANs used by Starlink mesh. Setting this VLAN may break Starlink mesh functionality. |
Guest |
| boolean | When enabled, clients will not be able to use the Starlink app locally. The router will add a firewall rule for this network that will block local Starlink device APIs |
Hidden SSID |
| boolean | Hidden networks do not broadcast their SSID and must be joined manually |
Client Isolation |
| boolean | Block client-to-client (intra-network) traffic. The router will add a layer 3 and layer 2 firewall rule to drop traffic with the same source and destination network. |
Disable Network When Offline |
| boolean | Disable this WiFi network if the router is offline for more than 5 minutes, and automatically re-enable when the router is back online. |
Landing Page |
| string | Landing page (aka captive portal) for this network |
📝 Note: If not selected or using default value, do not send these parameters.
📦 1.3 DHCP Configuration

Field Label (UI) | Config Parameter | Type | Notes/Conditions |
---|---|---|---|
DHCP Disabled |
| boolean | Disable DHCP for this network |
DHCP Start |
| integer | Lowest DHCP lease index that will be assigned |
DHCP End |
| integer | Highest DHCP lease index that will be assigned |
1.4 Sandboxing Configuration

Field Label (UI) | Config Parameter | Type | Notes/Conditions |
---|---|---|---|
Client Sandboxing |
| boolean | Enable client sandboxing on this network. Sandboxed clients can only access Sandbox Allowed Domains until unsandboxed via remote APIs |
Sandbox ID |
| integer | Sandboxes with the same ID share sandbox state |
Sandbox Allowed Domains |
| array of strings | Public domains accessible while sandboxed, wildcard prefixes allowed |
🌐 1.5 DNS Configuration: (InProgress)

Field Label (UI) | Config Parameter | Type | Notes |
---|---|---|---|
TBD | TBD | TBD | Not specified |
🧭 1.6 Routing Configuration:(In Progress)

Field Label (UI) | Config Parameter | Type | Notes |
---|---|---|---|
TBD | TBD | TBD | Not specified |
🔧 Example JSON Payload for Network Configuration:
{
"networks": [
{
"basicServiceSets": [
{
"authWpa2": {
},
"band": "RF_2GHZ", "hidden":true, }, { "authWpa2": { }, "band": "RF_5GHZ", "hidden": true } ], "clientIsolation": true, "dhcpDisabled": true, "dhcpv4End": 120, "dhcpv4Start": 10, "disableWhenOffline": true, "guest": true, "ipv4": "10.10.1.255/25", "landing": "https.google.com", "vlan": 1 } ]
}
⚙️ General Settings Parameter Mapping: (In Progress)
Field Label (UI) | Config Parameter(s) | Type | Notes/Conditions |
---|---|---|---|
Country Code (l) |
| boolean | Use |
Disable Pending Install Reboot |
| boolean | |
Bypass Mode |
| boolean | |
Geo Fencing (l) | Not specified | TBD | TBD |
Outdoor Mode |
| boolean | |
DFS Enabled |
| boolean | |
Disable 2.4 GHz Radio |
| boolean | |
Disable 5 GHz Radio |
| boolean | |
Disable 5 GHz High Radio |
| boolean | |
Channel 2.4 GHz (l) |
| integer | Manual channel selection |
Channel 5 GHz (l) |
| integer | Manual channel selection |
HT Bandwidth 2.4 GHz (l) |
| string | e.g., |
HT Bandwidth 5 GHz (l) |
| string | |
VHT Bandwidth (l) |
| string | Applies to 5GHz high-band |
Functionality Requirements: Support for Router Configuration via Kognitive Starlink Services Portal
Case 1: Router already has a configuration assigned
Option 1: Update the existing config
Consideration: Changes will apply to all routers associated with the same
configId
.
Option 2: Create a new
configId
based on the existing config (with updates) and assign it to the routerConsideration: Over time, this approach will lead to a large number of configurations being created.
Case 2: Router has no configuration
Create a new config and assign it to the router
UI Requirements
When the admin clicks on "Update Router Config":
Fetch the latest router config
Allow the user to update the config as per their requirement
Let the user choose:
**Update the same config
Create a new config (and assign it to the router)
User confirms the action
Internal APIs to Apply Router Configuration
(For Development Team Use Only)
1. 📡 Get Router Configuration
Endpoint
GET /get_router_configs
Query Parameters
Parameter | Type | Required | Description |
---|---|---|---|
| String | ✅ Yes | Unique ID of the organization |
| String | ✅ Yes | Account number associated with the router/device |
| String | ✅ Yes | configId of config associated to router |
Example Request
GET /get_router_configs?organizationId=DP-1126&accountNumber=ACC-7155004-11306-98&configId=DVC_CFG-DF-112024-61058-55
Response
✅ Success Response
{
"success": true,
"configJson": "{ \"networks\": [ { \"basicServiceSets\": [ { \"ssid\": \"strlink\", \"band\": \"RF_2GHZ\", \"authWpa2\": { \"password\": \"1234qwad\" } } ] } ] }"
}
ℹ️ Note:
configJson
is returned as a stringified JSON. You may need to parse it into a JSON object in your application.
2.🔧 Update Router Configuration
Updates the router configuration . Can apply the new configuration or update same router config file.
Endpoint
PUT /v2/update_router_config
Request Body
Field | Type | Required | Description |
---|---|---|---|
| String | ✅ Yes | Unique identifier for the organization |
| String | ✅ Yes | Account number associated with the router |
| String | ✅ Yes | Unique router identifier |
| String | ✅ Yes | Identifier for the configuration file being applied |
| Boolean | ✅ Yes | Whether to apply the new configuration or update existing config |
| JSON | ✅ Yes | The actual router configuration in JSON format |
Status: In progress