Inter-satellite links
/islPurpose
Returns the inter-satellite link topology: which satellites can see each other, and at what range, at a given instant.
The result is a graph. It is what routing, latency, and relay analysis are built on, because a constellation with inter-satellite links is a network whose connectivity changes continuously as the satellites move.
Request
| Parameter | Type | Unit | Default | Required | Description |
|---|---|---|---|---|---|
constellation_id | string | n/a | — | Yes | Identifier of an existing constellation. |
start | string | RFC 3339 UTC | 2026-01-01T00:00:00Z | No | Analysis start epoch. |
duration_hours | number | h | 6 | No | Propagation window. |
step_seconds | number | s | 60 | No | Time step. |
propagation_model | string | n/a | two_body | No | Propagation model. |
sample_index | integer | index | 0 | No | Which sample in the timeline to report the topology for. |
Example
curl -s -X POST http://127.0.0.1:8080/isl \
-H 'content-type: application/json' \
-d '{"constellation_id":"demo","duration_hours":2.0}'{
"constellation_id": "demo",
"satellite_count": 60,
"sample_count": 121,
"sample_index": 0,
"edges": [
{
"satellite_a": "demo-s0-p00-sat00",
"satellite_b": "demo-s0-p00-sat01",
"range_km": 4281.82414471573
}
]
}Response elided; edges holds every feasible link at that sample.
One instant, not the whole window
The response describes the topology at one sample_index, even though the
request propagates the whole window. sample_count tells you how many indices
are available.
Topology in a low Earth orbit constellation changes continuously. A single sample is a snapshot, and routing analysis needs the sequence. Call the endpoint per index, or use the CLI, which can emit the whole series.
Reading an edge
An edge means the two satellites have line of sight to each other, unobstructed
by the Earth. range_km is the separation.
The 4282 km between sat00 and sat01 is worth examining. Both are in plane 00,
adjacent in the ring of ten. At 550 km altitude the orbital radius is about 6928
km, and ten satellites evenly spaced puts adjacent pairs 36 degrees apart:
The reported range matches the geometry exactly, which is a useful check that the constellation was generated with the phasing you intended.
Intra-plane and inter-plane links
| Link type | Character |
|---|---|
| Intra-plane, within a ring | Range is nearly constant; the geometry barely changes |
| Inter-plane, between rings | Range varies strongly over an orbit, and relative velocity is high near the poles or the seam |
Intra-plane links are the easy ones: neighbors hold station relative to each other, so pointing is nearly fixed. Inter-plane links must track a target whose relative position and velocity change substantially, and in a Walker Star pattern the counter-rotating seam is where that is hardest.
See also
/link/chainto evaluate a multi-hop relay path end to end.- Constellations and orbits for phasing and the Star seam.
main (pre-release)