OrbitPlans - API
Starlink API
Overview
The Starlink External API enables authorized partners to securely access Starlink account, service line, and billing data through the Kognitive platform. This manual provides step-by-step guidance for obtaining access credentials, authenticating API requests, and using Starlink Production environments effectively. It covers the key APIs for retrieving details about Starlink products, custom plans, billing usage, service line details, Pause/Resume Service lines, and Create new Service lines along with helper APIs that ensure valid and accurate operations. Users are encouraged to begin testing in the Sandbox environment before moving to Production and to maintain data integrity.
Get Readme IO Access
Obtain your URL and password for Kognitive readme.io from the Kognitive Support team.
API Key
You will need the valid API key for the Distribution Partner (DP) or Organization under which users are being managed.
· Please send an email to the Kognitive Support team requesting an auth key for the DP ID you want to use.
· Access privilege: Starlink Access.
· Authentication tokens are environment-specific. Separate keys will be issued for Sandbox and Production environments.
· Example email:
Subject: Request for Auth Key for DP ID <Your DP ID>
Body: Hello, please provide an Auth Key for DP ID <Your DP ID> to access Starlink external APIs.
· Once you receive your auth key, login to Kognitive readme.io and use this key in the X-Auth-Key header for all requests. Navigate to the Starlink Production section from the left menu bar.
o Starlink Sandbox: For testing purposes only.
o Starlink Production: For actual API requests and real data.
Each request must include:
auth-key: <your-production-auth-key>
Content-Type: application/json
The different types of APIs available are:
Get Starlink products, custom plans, and pools
Get billing usage details
Get all service line details
Pause a Starlink service line
Resume a Starlink service line
Get address details
Create a new Starlink service line
Get terminal status details
Track the progress of Create Service Line
1. Get Starlink products, custom plans, and pools
Purpose
The Get Starlink products, custom plans, and pools API retrieves all available Starlink products, custom plans, and pools associated with a DP account. It helps identify valid product reference IDs and plan details required for operations such as resuming or updating service lines.
Endpoint
Method: GET
URL: https://api.kognitive.net/ext/v1/starlink/getAvailableProducts
Each request must include:
auth-key: <your-production-auth-key>
Content-Type: application/json
Steps to Use
§ Obtain your Production API key from the Kognitive Support team.
§ Choose a tool: http://Readme.io , Postman, curl, etc.
§ Set request headers with your API key and JSON accept header.
§ Send the GET request to the endpoint.
§ Check the response for the results.
Sample Response
"success": true,
"message": "",
"data": [
{
"account_number": "ACC-2239913-53353-13",
"account_name": "Main organization",
"region_code": "GB",
"is_pooled": false,
"products": [
{
"product_reference_id": "gb-enterprise-global-priority-terminal-access-fee-usd",
"name": "Global Priority Terminal Access Charge",
"alias": "",
"price": 150,
"iso_currency_code": "USD",
"usage_limit_gb": null,
"active": true,
"data_blocks": [
{
"account_number": "ACC-2239913-53353-13",
"product_id": "gb-enterprise-global-priority-500gb-data-block-usd",
"product_reference_id": "gb-enterprise-global-priority-terminal-access-fee-usd",
"data_amount": 500,
"data_unit": "GB",
"price": 500,
"iso_currency_code": "USD",
"active": true
},
{
"account_number": "ACC-2239913-53353-13",
"product_id": "gb-enterprise-global-priority-50gb-data-block-usd",
"product_reference_id": "gb-enterprise-global-priority-terminal-access-fee-usd",
"data_amount": 50,
"data_unit": "GB",
"price": 100,
"iso_currency_code": "USD",
"active": true
}
]
}
]
}
2. Get billing usage details
Purpose
The Get Billing Usage Details API provides detailed insights into monthly billing and daily data usage for each Starlink service line. It helps partners monitor consumption, track billing cycles, and analyze data usage patterns for accurate reporting and account management.
Endpoint
Method: GET
URL: https://api.kognitive.net/ext/v1/starlink/getBillingUsage
Query Parameters:
Parameter | Type | Default | Description |
page | Integer | 1 | Page number |
limit | integer | 25 | Number of results per page |
search | string | "" | Optional search keyword |
Sample Response
{
"success": true,
"data": {
"results": [
{
"accountNumber": "ACC-2239913-53353-13",
"serviceLineNumber": "AST-1935975-91695-67",
"startDate": "2025-11-01",
"endDate": "2025-12-01",
"billingCycles": [
{
"dailyDataUsage": [
{
"date": "2025-11-06T00:00:00.000Z",
"priorityGB": "0.00",
"optInPriorityGB": "0.00",
"standardGB": "0.00",
"nonBillableGB": "0.00"
}
],
"totalPriorityGB": "0.00",
"totalOptInPriorityGB": "0.00",
"totalStandardGB": "0.00",
"totalNonBillableGB": "0.00"
}
]
}
]
}
}
3. Get all service line details
Purpose
The Get all service line details API fetches all service lines linked to a DP account, including account information, subscription status, and associated terminals. It is primarily used to obtain valid service line numbers and account details required for other Starlink operations.
Endpoint
Method: GET
URL: https://api.kognitive.net/ext/v1/starlink/getServiceLineDetails
Query Parameters:
Parameter | Type | Default | Description |
page | Integer | 1 | Page number |
limit | integer | 25 | Number of results per page |
search | string | "" | Optional search keyword |
Sample Response
{
"success": true,
"data": [
{
"service_line_number": "DEV-SL-1113999-92299-13",
"nickname": "Service line name",
"account_number": "ACC-2239913-53353-13",
"account_name": "Main Organization",
"subscription_status": "resumed",
"userterminaldetails": [
{
"kitSerialNumber": "KITP00304243",
"userTerminalId": "01000000-00000000-00d310eb"
}
]
}
]
}
4. Get terminal status details
Purpose
The Get terminal status details API retrieves the current status and operational details of Starlink terminals associated with a service line. It helps monitor terminal connectivity, performance, and health for effective service management and troubleshooting.
Endpoint
Method: GET
URL: https://api.kognitive.net/ext/v1/starlink/getTerminalStatus
Query Parameters:
Parameter | Type | Default | Description |
accountFilter | String |
| Enter the Account number to filter the results based on it |
page_number | Integer | 1 | Page number |
page_limit | integer | 25 | Number of results per page |
search | string | "" | Optional search keyword |
Sample Response
{
"success": true,
"page": 1,
"limit": 25,
"total": "4",
"totalPages": 1,
"data": [
{
"account_number": "ACC-2239913-53353-13",
"account_name": "Main Organization",
"userTerminals": [
{
"kit_serial_number": "KITP00038369",
"user_terminal_id": "01000000-00000000-001a3692",
"service_line_number": "<NOT_CONFIGURED>",
"terminal_status": false,
"is_terminal_online": false
},
{
"kit_serial_number": "KITP00113663",
"user_terminal_id": "01000000-00000000-00612499",
"service_line_number": "<NOT_CONFIGURED>",
"terminal_status": true,
"is_terminal_online": false
}
]
}
]
}
5. Get Address Details
Purpose
The Get address details API provides the registered address details associated with a Starlink account or service line. It is used to verify service locations, validate installations, and support account management activities.
Endpoint
Method: GET
URL: https://api.kognitive.net/ext/v1/starlink/getAddress
Parameter | Type | Default | Description |
accountNumber | String |
| Enter the Account number to filter the results based on it |
page | Integer | 1 | Page number |
limit | integer | 25 | Number of results per page |
Sample Response
{
"success": true,
"data": [
{
"accountNumber": "string",
"accountName": "string",
"addresses": [
{
"address_reference_id": "string",
"address_lines": [
"string"
],
"locality": "string",
"administrative_area": "string",
"administrative_area_code": "string",
"region": "string",
"region_code": "string",
"postal_code": "string",
"formatted_address": "string",
"latitude": 0,
"longitude": 0
}
]
}
],
"page": 0,
"limit": 0,
"total": 0,
"totalPages": 0
}
6. Track the Progress of Create Service Line
Purpose
Track the Progress of create service line API allows users to track the current status and progress of a service line creation request. It helps monitor whether the request is pending, in progress, or completed, ensuring better visibility and workflow management.
Endpoint
Method: POST
URL: https://api.kognitive.net/ext/v1/starlink/service_line_tracking
Parameter | Type | Description |
trackingId | String | Tracking ID of the service line. This field is mandatory to check the creation of service line. |
Sample Response
{
"success": true,
"message": "string",
"status": "string",
"lastUpdated": "2025-11-04T10:07:54.8282",
"progress": 0
}
7. Pause a Starlink service line
Purpose
The Pause a Starlink service line API is used to temporarily suspend a Starlink service line. It helps manage active subscriptions by pausing services when not in use, preventing unnecessary billing or usage during the paused period.
Endpoint
Method: POST
URL: https://api.kognitive.net/ext/v1/starlink/pause
Parameter | Type | Description |
accountNumber | String | Account number of the service line. This field is mandatory to pause the service line. |
endNow | Boolean | · Select true to "pause" the service line immediately · Select "false" to pause the service line after the end of the current billing period · This field is mandatory |
rejectReason | String | Reason for rejecting the service line pause (if any) |
serviceLineNumber | String | Service line number. This field is mandatory. |
Sample Response
{
"message": "string",
"success": true
}
8. Resume a Starlink service line
Purpose
Resume a Starlink service line API is used to reactivate a previously paused Starlink service line. It restores connectivity and billing, allowing the user to resume normal service operations seamlessly.
Endpoint
Method: POST
URL: https://api.kognitive.net/ext/v1/starlink/resume
Body Parameters:
Parameter | Type | Description |
customPlanId | String | Custom Plan ID of the plan. This field is mandatory to resume the service line. This corresponding plan will be applied to the service line. |
accountNumber | String | Account number linked with the service line. This field is mandatory. |
serviceLineNumber | String | Service line number. This field is mandatory. |
productReferenceId | String | This field is mandatory to resume the service line. This corresponding plan will be applied to the service line. |
dataBlockProducts | array of objects |
|
accountNumber | String | Account number of the service line. This field is mandatory. |
serviceLineNumber | String | Service line number. This field is mandatory. |
Sample Response
{
"message": "string",
"success": true
}
9. Create a new Starlink service line
Purpose
The Create a new Starlink Service Line API is used to create a new Starlink service line under a DP account. It initiates the provisioning process by linking the selected product, plan, and service address to set up a new Starlink connection.
Note: Please note that the creation of a service line may require 1–2 minutes to complete.
Endpoint
Method: POST
URL: https://api.kognitive.net/ext/v1/starlink/newServiceLine
Parameter | Type | Description |
customPlanId | String | Custom Plan ID of the plan. This field is mandatory to resume the service line. This corresponding plan will be applied to the service line. |
Name | String | Name of the service line. |
accountNumber | String | Account number of the service line. |
addressReferenceId | String |
|
userTerminalIds | String | Id numbers of the user terminals |
emailIds | Array | Email IDs |
productReferenceId | String |
|
dataBlockProducts | Array |
|
Sample Response
{
"message": "string",
"success": true,
"data": {
"trackingId": "trk-1234-qw"
}
}