Skip to content
Open
Changes from 5 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
260 changes: 216 additions & 44 deletions Frontier API/FrontierDevelopments-CAPI-endpoints.md
Original file line number Diff line number Diff line change
Expand Up @@ -74,50 +74,56 @@ to the CAPI host, i.e. `/` path component as in <https://companion.orerve.net/>.
This will produce output like:
```json
{
"links": [
{
"href": "/profile",
"rel": "CommanderProfile",
"type": "GET",
"title": "Commander profile, add ?language=[en|fr|de|ru|es|pt] to translate locName and LocDescriptions"
},
{
"href": "/market",
"rel": "CommodityMarket",
"type": "GET",
"title": "Last docked commodity market, add ?language=[en|fr|de|ru|es|pt] to translate locName and LocDescriptions"
},
{
"href": "/shipyard",
"rel": "Shipyard",
"type": "GET",
"title": "Last docked shipyard and outfitting"
},
{
"href": "/communitygoals",
"rel": "CommunityGoals",
"type": "GET",
"title": "Details on all currently active Community Goals and any contributions from this Commander, add ?language=[en|fr|de|ru|es|pt] to translate descriptions"
},
{
"href": "/journal",
"rel": "Journal",
"type": "GET",
"title": "Log lines from Commander Journal file, add (/:year(/:month(/:day))) to ask if previous journals are available"
},
{
"href": "/fleetcarrier",
"rel": "FleetCarrier",
"type": "GET",
"title": "Information about Commander's fleet carrier, add ?language=[en|fr|de|ru|es|pt] to translate locName and LocDescriptions"
},
{
"href": "/visitedstars",
"rel": "VisitedStars",
"type": "GET",
"title": "Download an zip archive containing the player's VisitedStarsCache.dat file. Status 102 indicates the file is being generated in the background, try again in a couple of minutes"
}
]
"links": [
{
"href": "/profile",
"rel": "CommanderProfile",
"type": "GET",
"title": "Commander profile, add ?language=[en|fr|de|ru|es|pt] to translate locName and LocDescriptions"
},
{
"href": "/market",
"rel": "CommodityMarket",
"type": "GET",
"title": "Last docked commodity market, add ?language=[en|fr|de|ru|es|pt] to translate locName and LocDescriptions"
},
{
"href": "/shipyard",
"rel": "Shipyard",
"type": "GET",
"title": "Last docked shipyard and outfitting"
},
{
"href": "/communitygoals",
"rel": "CommunityGoals",
"type": "GET",
"title": "Details on all currently active Community Goals and any contributions from this Commander, add ?language=[en|fr|de|ru|es|pt] to translate descriptions"
},
{
"href": "/journal",
"rel": "Journal",
"type": "GET",
"title": "Log lines from Commander Journal file, add (/:year(/:month(/:day))) to ask if previous journals are available"
},
{
"href": "/fleetcarrier",
"rel": "FleetCarrier",
"type": "GET",
"title": "Information about Commander's fleet carrier, add ?language=[en|fr|de|ru|es|pt] to translate locName and LocDescriptions"
},
{
"href": "/visitedstars",
"rel": "VisitedStars",
"type": "GET",
"title": "Download an zip archive containing the player's VisitedStarsCache.dat file. Status 102 indicates the file is being generated in the background, try again in a couple of minutes"
},
{
"href": "/squadron",
"rel": "Squadron",
"type": "GET",
"title": "Describe the squadron your Commander is currently a member of, if any. add ?language=[$supportedLanguages] to translate names"
}
]
}
```

Expand Down Expand Up @@ -633,6 +639,172 @@ This request would give you the journal for the specific date, in this case the

To know what kind of output you can except from the `/journal` endpoint, we recommend reading the [Journal Manual](http://hosting.zaonce.net/community/journal/v31/Journal_Manual_v31.pdf) to see what you can encounter.

---

## Squadron

GET <https://companion.orerve.net/squadron>

Get data about the current commander's squadron, if any. Contains information about the squadron (name, alignments, perks), squadron carrier (name, livery, locations, crew) & members.

1. `id` - Squadron ID
1. `name` - Squadron Name
1. `tag` - 4-Letter Squadron tag
1. `ownerId` - Numerical player Id of the owner
1. `platform` - Game platform. Only `PC`
1. `created` - timestamp of squad creation
1. `acceptingNewMembers` - 1 = accepting, 0 = not accepting
1. `powerId` - Id of aligned power, or `null`
1. `powerName` - Name of aligned power, or `""`
1. `superpowerId` - Id of aligned superpower, or `4` for independent
Comment thread
Niceygy marked this conversation as resolved.
Outdated
1. `superpowerName` - Name of aligned superpower
1. `factionId` - Id of aligned faction
1. `factionName` - Name of aligned faction
1. `factionHomeSystemId` - Numerical system Id of faction's home system
Comment thread
Niceygy marked this conversation as resolved.
Outdated
1. `factionHomeSystemName` - Name of faction's home system
1. `userTags` - UNCLEAR (NEED INPUT)
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know how to decipher the userTags either. Maybe the numbers correspond to selections when creating the squadron badge?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What, like "Exploration" or "Combat"? Possibly! We will probably need to do some digging to get a translation between the numbers and their "display names"

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have assumed that they are the 'combat' / 'trade' / ect tags, and we can update them later if not

1. `memberCount` - Number of squad members
1. `full` - 0 = not full, 1 = full
1. `description` - Player set squadron description
1. `motto` - Player set squadron motto,
1. `isMentoring` - Has the squad leader enabled mentoring
1. `perks` - Active squadron perks
1. `primary` - Primary perk name
1. `secondary` - Secondary perk name
1. `cooldowns` - Perk cooldowns
1. `primary` - Primary perk cooldown
1. `secondary` - Secondary perk cooldown
1. `active7days` - No. of players active in the last 7 days
1. `active30days` - No. of players active in the last 30 days
1. `squadronCarrier` - Data about the squad carrier (if any)
1. `name`
1. `callsign` - 4-letter callsign, same as `tag`
1. `vanityName` - Carrier name, hex encoded
1. `filteredVanityName` - Filtered carrier name, hex encoded
1. `currentStarSystem` - Current carrier system name
1. `balance` - Carrier bank balance
1. `fuel` - Carrier fuel (out of 1000)
1. `state` - Carrier state. E.g `normalOperation`
1. `theme` - Livery, if any
1. `dockingAccess` - `squadron` (presumably left over from fleet carriers)
1. `notoriousAccess` - boolean
1. `capacity` - Carrier storage capatity
1. `shipPacks` - Space being used by ship packs
1. `modulePacks` - Space being used by module packs
1. `cargoForSale` - Space being used by sellable cargo (possibly always 0, as squad carriers cannot sell cargo)
1. `cargoNotForSale` - Space being used by unsellable cargo (stored)
1. `crew` - Space being used by services
1. `freeSpace` - Free space
1. `microresourceCapacityTotal` - Space available for on foot resources
1. `microresourceCapacityFree` - Space unused by stored on foot resources
1. `microresourceCapacityUsed` - Space used by stored on foot resources
1. `microresourceCapacityReserved` - UNCLEAR (NEED INPUT)
1. `squadronBankTotal` - Credits in the squadron bank
1. `itinerary` - Info about carrier movements
1. `completed` - Array of completed jumps
1. `departureTime` - Timestamp jump was 'locked in' (un-cancelable)
1. `arrivalTime` - Timestamp carrier arrived in-system
1. `state` - Jump result. E.g `success`
1. `visitDurationSeconds` - Time carrier was in-system, in seconds
1. `starsystem` - Name of destination star system
1. `totalDistanceJumpedLY` - Total distance of all jumps
1. `currentJump` - Info on the current jump, if any
1. `marketFinances` - Info on carrier market, unused for squad carriers
1. `blackmarketFinances` - Info on carrier black market, unused for squad carriers
1. `finance` - Info about the carrier's bank
1. `bankBalance` - Available funds (credits)
1. `bankReservedBalance` - Reserved funds (credits)
1. `taxation` - Tax percentage on carrier services
1. `service_taxation` - Service spesific tax percentages (dictionary)
1. `numServices` - Number of installed services
1. `numOptionalServices` - UNCLEAR (NEED INPUT)
1. `debtThreshold` - Negative integer, threshold at which the carrier will be decommissioned.
1. `maintenance` - Weekly upkeep cost
1. `maintenanceToDate` - Total funds used by the carrier in its life
1. `coreCost` - Core upkeep, in credits
1. `servicesCost` - Services upkeep, in credits
1. `servicesCostToDate` - Services upkeep over the carriers life
1. `jumpsCost` - Cost of jumps since last weekly tick
1. `numJumps` - Jumps since last weekly tick
1. `bartender` - Data about installed bar, if any
1. `servicesCrew` - Servies installed in the carrier
1. service name - E.g `shipyard`, `refuel`, `repair`
1. `crewMember`
1. `name` - Crew member name (sometimes blank)
1. `gender` - `M` or `F`
1. `faction` - Faction crew member came from, possibly determined by system the service was installed in?
1. `salary` - Weekly service upkeep
1. `hiringPrice` - Cost of service installation
1. `lastEdit` - Timestamp of last service edit
1. `invoicesWeekToDate` - Weekly upkeep payments (Array of objects)
1. `wages` - Cost, in credits
1. `from` - Timestamp of start
1. `until` - Timestamp of end
1. `type` - `current` (In progress) or `expected` (now until week end)
1. `status`: Service status, e.g `ok`
1. `cargo` - Array of cargo items, if any
1. `orders` - Market requests, always empty becuase squad carriers have no market
1. `carrierLocker` - On foot resources stored on the carrier
1. `reputation` - Reputation with major superpowers
1. `majorFaction` - Superpower name
1. `score` - Integer score, default 100
1. `members` - Array of squadron members
1. `squadron_id` - Id of current squad, same as `id`
1. `member_id` - Squadron member Id
1. `joined` - Timestamp when player joined this squadron
1. `expires_ts` - UNCLEAR (NEED INPUT)
1. `status` - `MEMBER` (in squadron), `APPROVED` (allowed to join, need to accept)
1. `requested` - Timestamp when they requested to join
1. `requested_ts` - Unix timestamp when they requested to join
1. `rank_id` - Numerical Rank ID
1. `requestletter` - Hex encoded message sent with join request
1. `credit_contributions` - Credits deposited in squad bank
1. `presence` - UNCLEAR (NEED INPUT)
Copy link
Copy Markdown
Member

@Tkael Tkael Sep 9, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have presence as false for all squadron members.
Hypothesis: Perhaps it becomes true when a squadron member is sharing the same instance as you?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Possibly, although given this is a cApi endpoint I assume it would not be real time? Only one way to find out I suppose

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Definitely shouldn't count on it being real-time. I'm just making a guess here. :-D

1. `biography` - Hex encoded player "bio", if any
1. `user_id` - Player Id
1. `rankCombat`/`rankExplore`/`rankTrade`/`rankCqc` - Player ranks (seperate entries)
1. `soldierRank`/`exobiologistRank`/`empireRank`/`federationRank`/powerRank` Player Ranks (Seperate entries)
Comment thread
Niceygy marked this conversation as resolved.
Outdated
1. `powerId` - Player's pledged power, or `null` if not pledged
1. `lastOnline` - Timestamp player was last online
1. `lastOnline_ts` - Unix timestamp player was last online
1. `name` - Hex encoded commander name
1. `lastLocationId` - Last seen star system id, or `null` if the player has hidden it
1. `lastLocation` - Last seen star system name, or `$Squadrons_Roster_Activity_HiddenLocation;` if hidden. Hex encoded
1. `shipName` - Last used ship name
1. `shipModel` - Last used ship type. E.g `Diamondback Explorer`
1. `userPlayTime` - How many minutes the player has been online
1. `systemAddr` - `0` (Unknown use)
1. `avatarXml` - Player's avatar, in xml
Comment thread
Niceygy marked this conversation as resolved.
Outdated
1. `bank` - Squadron bank
1. `credits`
1. `All` - Credits any member can access
1. `name` - `credits`
1. `locName` - Localised name for credits
1. `qty` - Credits in bank (integer)
1. `$squadron_bank_fleetcarrierupkeep_account;` - Carrier Bank
1. `name` - `credits`
1. `locName` - Localised name for credits
1. `qty` - Credits in bank (integer)
1. `commodities` - Commodities stored on the carrier
1. `All` - Accessable to all
1. `name` - Commodity name
1. `locName` - Localised commodity name
1. `qty` - Number stored
1. `$squadron_bank_personal_account;` - Commoditied allocated to a player (direct tranfer)
1. `name` - Commodity name
1. `locName` - Localised commodity name
1. `qty` - Number stored (may be `0`)
1. `microresources` - On foot resources stored on the carrier
1. `name` - Resource name (Id, string)
1. `locName` - Localised resource name
1. `qty` - Number stored (may be `0`)
1. `ships` - Ships stored on the carrier
1. `name` - Ship Id
1. `locName` - Ship name (localised)
1. `qty` - Number stored (may be `0`)



---

## HTTP Status Codes
Expand Down