I.N.T.R.A.
Tactical Reconnaissance Analysis

INTRA API

A programmatic interface is available for scripting an INTRA search. Requests should be sent to this location /intra/api/ via HTTP POST.

Depending on the request, the response is a list of Shop systems, Arena systems, or Shop/Arena pairs. The results list is sorted using a cost/benefit analysis, starting with the best.

Overview

The request is a JSON object which describes the type of search to perform, and must specify a version number. This is a minimal no-operation request:

{"ver":1}

The response is a JSON object containing a status and message, the version, some header flags and the result body. The no-operation response is:

{"ok":0,"msg":"Nothing requested","ver":1,"head":null,"body":null}

Despite the not-OK status and error message, this is appropriate for checking that the INTRA service is functional. It implies that the following HTTP errors have been avoided:

  • (405) Wrong HTTP method
  • (503) INTRA service offline
  • (413) Request object too large
  • (415) Bad request object format
  • (400) Bad request object data
  • (422) Unknown INTRA API version

Additional error situations which could still occur:

  • (502) Bad INTRA service reply
  • (500) Internal I/O failure

Request schema

Request object
ver
Integer
INTRA API version number.
Values: 1.
lim
Integer
If supplied, a maximum limit for the number of results, otherwise the default is 50.
This limit will be clamped within the allowed range.
Values: 1 through 99.
ref
Object
If supplied, a reference position object, otherwise the search is Galaxy-wide.
This adds a travel bias to the results, favouring systems closer to the reference position.
Note that this is not a sort-function; results are still ordered by cost/benefit.
shop
Object
If supplied, a system constraints object; this also acts as a request for Shop results.
Send an empty object to request Shop results without any specific filter.
arena
Object
If supplied, a system constraints object; this also acts as a request for Arena results.
Send an empty object to request Arena results without any specific filter.
Reference position
x
Number
The position x-coordinate on the Galaxy map.
Positive values move towards the Lyra's Song sector.
y
Number
The position y-coordinate on the Galaxy map.
Positive values move towards Rackham's Peak, upwards from the Galactic plane.
z
Number
The position z-coordinate.
Positive values move towards Beagle Point.
max
Number
If supplied, a maximum result distance in light-years.
System constraints
pow
Array
If supplied, an array containing Powerplay names.
Each system must be controlled/exploited by one of the named Powerplay powers.
Values: Any of the eleven powers; for example, Arissa Lavigny-Duval.
fac
Object
If supplied, a faction minima object.
owner
String
If supplied, the name of a controlling faction which must own each system.
present
String
If supplied, the name of a faction which must be present within each system.
dist
Object
If supplied, a navigation distance object.
pop
Integer
If supplied, a minimum population which each system must have.
cnb3
Integer
If supplied, an option which decides how Navigation Beacons should be valued.
This option applies to the Compromised beacon status in Elite 3.8.
Values: 1 to demand CNBs, 0 to ignore CNBs, -1 to consider CNBs normally.
cnb4
Integer
If supplied, an option which decides how Navigation Beacons should be valued.
This option applies to the Compromised beacon status in Elite 4.0.
Values: 1 to demand CNBs, 0 to ignore CNBs, -1 to consider CNBs normally.
Faction minima
all
Integer
If supplied, the minimum total useful factions each system must have.
A faction is useful within a system if it can provide pirate massacre missions.
e
Integer
If supplied, the minimum useful Imperial factions each system must have ("Empire").
a
Integer
If supplied, the minimum useful Alliance factions each system must have.
f
Integer
If supplied, the minimum useful Federal factions each system must have.
i
Integer
If supplied, the minimum useful Independent factions each system must have.
For INTRA purposes, a faction is Independent if it is not allied with a Superpower.
Superpowers are the Empire, Alliance and Federation.
Navigation distance
port
Number
If supplied, a maximum Starport distance in light-seconds.
This also requires that a Starport is present.
post
Number
If supplied, a maximum Outpost distance in light-seconds.
This also requires that an Outpost is present.
haz
Number
If supplied, a maximum Hazardous RES distance in light-seconds.
This also requires that a Hazardous RES is present.
hi
Number
If supplied, a maximum High RES distance in light-seconds.
This also requires that a High RES is present.
med
Number
If supplied, a maximum Medium RES distance in light-seconds.
This also requires that a Medium RES is present.
low
Number
If supplied, a maximum Low RES distance in light-seconds.
This also requires that a Low RES is present.

Request notes:

  • System constraints are common between Shop and Arena. In effect, this enables additional filter criteria beyond the usual INTRA interface, such as requesting that the Arena system contains a Starport or that the Shop system contains a RES.
  • If a RES is Reported but not Declared or Confirmed, a filter will use the nearest planetary ring distance.

Response schema

Response object
ok
Integer
Whether the transaction succeeded.
Note that a successful transaction may return zero results.
Values: 1 for success, 0 if an error occurred.
msg
String
If an error occurred, a short error description message.
Sentinel: Empty string if no error occurred
ver
Integer
INTRA API version number.
Values: 1.
head
Object
INTRA search header object.
Sentinel: Null if an error occurred.
body
Array
A list of INTRA search result objects, which may be empty.
The list is sorted using a cost/benefit analysis.
Sentinel: Null if an error occurred.
INTRA search header
shop
Integer
Whether the result set contains Shop systems.
Values: 1 if each result row contains a Shop system object, 0 otherwise.
arena
Integer
Whether the result set contains Arena systems.
Values: 1 if each result row contains an Arena system object, 0 otherwise.
INTRA search result
shop
Object
If present, a system details object which describes a Shop system.
arena
Object
If present, a system details object which describes an Arena system.
System details
name
String
The full system name.
addr
Integer
The SystemAddress ID value as reported by Elite itself.
edsm
Integer
If known, the system ID used by EDSM.
Sentinel: -1 if no EDSM ID is stored.
eddb
Integer
If known, the system ID used by EDDB.
Sentinel: -1 if no EDDB ID is stored.
ref_d
Number
The distance in light-years to the reference position.
Sentinel: -1 if no reference position was used.
pop
Integer
The system population.
pow
String
The name of a Powerplay power which controls/exploits this system.
Sentinel: Empty string if no Powerplay power is present, or the system is contested.
port_d
Number
The distance in light-seconds to the closest starport.
Sentinel: -1 if the system contains no starports.
post_d
Number
The distance in light-seconds to the closest outpost.
Sentinel: -1 if the system contains no outposts.
fac
Object
A faction count object.
fac_t
Integer
Timestamp of the most recent faction status report.
Sentinel: -1 if no report exists.
cnb3
Integer
Navigation beacon status reported from Elite 3.8.
Values: 1 for CNB, 0 for NB, -1 if no report exists.
cnb3_t
Integer
Timestamp of the most recent beacon status report from Elite 3.8.
Sentinel: -1 if no report exists.
cnb4
Integer
Navigation beacon status reported from Elite 4.0.
Values: 1 for CNB, 0 for NB, -1 if no report exists.
cnb4_t
Integer
Timestamp of the most recent beacon status report from Elite 4.0.
Sentinel: -1 if no report exists.
ring_d
Number
The distance in light-seconds to the closest planetary ring.
If a RES is reported, this could be used to estimate its distance.
Sentinel: -1 if the system contains no planetary rings.
ring_b
String
The name of the closest body in-system with a planetary ring.
Names starting with «+» are expressed as a system name suffix.
Sentinel: Empty string if the system contains no planetary rings.
visit
Integer
The number of times this system has received Arena data.
Missing RESs can be considered probably absent if the visit counter is high.
haz
Object
Hazardous RES status.
hi
Object
High RES status.
med
Object
Medium RES status.
low
Object
Low RES status.
Faction count
all
Integer
The total number of useful factions in the system.
A faction is useful within a system if it can provide pirate massacre missions.
e
Integer
The number of useful Imperial factions in the system ("Empire").
a
Integer
The number of useful Alliance factions in the system.
f
Integer
The number of useful Federal factions in the system.
i
Integer
The number of useful Independent factions in the system.
For INTRA purposes, a faction is Independent if it is not allied with a Superpower.
Superpowers are the Empire, Alliance and Federation.
RES status
r
Integer
RES presence status reported via INTRA.
Use the visit counter to decide whether an unreported RES may be present.
Values: 1 if a RES has been reported, otherwise 0.
c
Integer
RES status confirmed manually.
Values: 1 if confirmed present, 0 if confirmed absent, otherwise -1.
d
Number
The distance in light-seconds to the closest body with this RES type in its planetary rings.
Sentinel: -1 if no RES is reported or confirmed to be present, or if a RES is reported but has no body specified.
b
String
The name of the closest body in-system with this RES type in its planetary rings.
Names starting with «+» are expressed as a system name suffix.
Sentinel: Empty string if no RES is reported or confirmed to be present, or if a RES is reported but has no body specified.

Response notes:

  • If a result contains both a Shop and an Arena, it is implied that the Shop supplies missions which target the Arena.
  • System details are common between Shop and Arena. In effect, this provides additional information beyond the fields displayed by the usual INTRA interface, such as whether the Arena system contains a Starport or whether the Shop system contains a RES.