openapi: 3.1.0 info: title: SpaceTraders API version: 2.0.0-alpha summary: SpaceTraders is a unique multiplayer game built on a free Web API. contact: name: Joel Brubaker email: joel@spacetraders.io license: name: 'No' url: 'https://choosealicense.com/no-permission/' description: |- SpaceTraders is a unique multiplayer game built on a free Web API. You control a fleets of ships that can explore the universe, mine asteroids, automate trade routes, meet new factions, and discover hidden technology. Participate in one of our regular competitive seasons or build a client to share with the community. SpaceTraders is currently in an alpha stage of development. Join our Discord to learn more. ```json http { "method": "GET", "url": "https://v2-0-0.alpha.spacetraders.io", } ``` servers: - url: 'https://v2-0-0.alpha.spacetraders.io' description: v2.0.0-alpha paths: /agents: post: summary: Register New Agent tags: - agents responses: '201': description: OK content: application/json: schema: type: object properties: data: type: object properties: token: type: string agent: $ref: ../models/Agent.yaml faction: $ref: ../models/Faction.yaml contract: $ref: ../models/Contract.yaml ship: $ref: ../models/Ship.yaml examples: Success: value: data: token: string agent: accountId: cl0hok34m0003ks0jjql5q8f2 symbol: EMBER headquarters: X1-OE-PM credits: 0 faction: symbol: COMMERCE_REPUBLIC name: Commerce Repubic description: The Commerce Republic takes capital from top tier worlds and invests it into new systems with high potential for growth. headquarters: X1-OE-PM traits: - BUREAUCRATIC - CAPITALISTIC - GUILD - ESTABLISHED contract: id: cl0hok38t0014ks0jnoy8o5vh faction: COMMERCE_REPUBLIC type: PROCUREMENT terms: deadline: '2022-03-11T05:16:59.113Z' payment: onAccepted: 20000 onFulfilled: 100000 deliver: - tradeSymbol: IRON_ORE destination: X1-OE-PM units: 10000 fulfilled: 0 accepted: false fulfilled: false expiresAt: '2022-03-09T05:16:59.112Z' ship: symbol: string frame: string reactor: string engine: string fuel: 0 modules: - string mounts: - string registration: factionSymbol: string agentSymbol: string fee: 0 role: string integrity: frame: 0 reactor: 0 engine: 0 status: string location: string cargo: - tradeSymbol: string units: 0 operationId: post-agents description: |- Creates a new agent and ties it to a temporary Account. Use `COMMERCE_REPUBLIC` as your starting faction if you don't know any other factions to choose from. The agent symbol is a 4-8 character string that will represent your agent. This symbol will prefix the symbol of every ship you own. Agent symbols will be cast to all uppercase characters. A new agent will be granted an authorization token, a contract with their starting faction, a command ship with a jump drive, and one hundred thousand credits. > #### Keep your token safe and secure > > Save your token during the alpha phase. There is no way to regenerate this token without starting a new agent. In the future you will be able to generate and manage your tokens from the SpaceTraders website. You can accept your contract using the `/my/contracts/{contractId}/accept` endpoint. You will want to navigate your command ship to a nearby asteroid field waypoint, and execute the `/my/ships/{shipSymbol}/accept` endpoint to mine various types of ores and minerals. Return to the contract destination and execute the `/my/ships/{shipSymbol}/deliver` endpoint to deposit goods into the contract. When your contract is fulfilled, you can call `/my/contracts/{contractId}/fulfill` to retrieve payment. requestBody: content: application/json: schema: type: object properties: symbol: type: string description: How other agents will see your ships and information. minLength: 4 maxLength: 8 example: BADGER faction: type: string default: COMMERCE_REPUBLIC description: The faction you choose determines your headquarters. description: '' /my/agent: get: summary: My Agent Details tags: - agents responses: '200': description: OK content: application/json: schema: type: object properties: data: $ref: ../models/Agent.yaml examples: Agent: value: data: accountId: cl0hok34m0003ks0jjql5q8f2 symbol: EMBER headquarters: X1-OE-PM credits: 0 operationId: get-my-agent security: - AgentToken: [] description: Fetch your agent's details. '/my/ships/{shipSymbol}/chart': post: summary: Chart Waypoint tags: - ships responses: '201': description: Created content: application/json: schema: type: object properties: data: type: object properties: submitted: type: array items: type: string examples: Success: value: data: submitted: - X1-ZZ - X1-ZZ-7-EE operationId: 'post-my-ships-:shipSymbol-chart' description: Chart a new system or waypoint. security: - AgentToken: [] parameters: - schema: type: string name: shipSymbol in: path required: true description: The symbol of the ship '/my/ships/{shipSymbol}/deliver': parameters: - schema: type: string name: shipSymbol in: path required: true description: The symbol of the ship post: summary: Deliver on Contract tags: - ships responses: '201': description: Created content: application/json: schema: description: '' type: object x-examples: example-1: data: tradeSymbol: IRON_ORE destination: X1-OE-PM units: 10000 fulfilled: -30000 properties: data: $ref: ../models/ContractDelivery.yaml required: - data operationId: post-my-ships-shipSymbol-deliver security: - AgentToken: [] requestBody: content: application/json: schema: type: object properties: contractId: type: string tradeSymbol: type: string units: type: number required: - contractId - tradeSymbol description: Deliver cargo on a given contract. '/my/ships/{shipSymbol}/dock': parameters: - schema: type: string name: shipSymbol in: path required: true description: The symbol of the ship post: summary: Dock Ship tags: - ships responses: '201': description: Created content: application/json: schema: description: '' type: object properties: data: type: object properties: status: type: string required: - status required: - data x-examples: example-1: data: status: DOCKED examples: Success: value: data: status: DOCKED operationId: post-my-ships-shipSymbol-dock security: - AgentToken: [] description: Transition your ship from orbit to docked. Consecutive calls to this endpoint will succeed. '/my/ships/{shipSymbol}/orbit': parameters: - schema: type: string name: shipSymbol in: path required: true description: The symbol of the ship post: summary: Orbit Ship tags: - ships responses: '201': description: Created content: application/json: schema: description: '' type: object x-examples: example-1: data: status: ORBIT properties: data: type: object properties: status: type: string required: - data examples: Success: value: data: status: ORBIT operationId: post-my-ships-shipSymbol-orbit security: - AgentToken: [] description: Transition your ship from docked into orbit. Ships are placed into orbit by default when arriving at a destination. Consecutive calls to this endpoint will continue to return a 200 response status. '/my/ships/{shipSymbol}/jettison': parameters: - schema: type: string name: shipSymbol in: path required: true post: summary: Jettison Cargo tags: - ships responses: '201': description: Created content: application/json: schema: description: '' type: object properties: data: type: object properties: tradeSymbol: type: string minLength: 1 units: type: number required: - tradeSymbol - units required: - data x-examples: example-1: data: tradeSymbol: ALUMINUM units: 95 examples: Success: value: data: tradeSymbol: ALUMINUM units: 95 operationId: post-my-ships-shipSymbol-jettison description: Jettison cargo from your ship's cargo hold. security: - AgentToken: [] requestBody: content: application/json: schema: type: object properties: tradeSymbol: type: string units: type: number minimum: 1 '/my/ships/{shipSymbol}/extract': parameters: - schema: type: string name: shipSymbol in: path required: true description: The ship symbol post: summary: Extract Resources tags: - ships responses: '201': description: Created content: application/json: schema: description: '' type: object x-examples: example-1: data: extraction: shipSymbol: 4B902A-1 yield: tradeSymbol: SILICON units: 16 cooldown: duration: 119 expiration: '2022-03-12T00:41:29.371Z' properties: data: type: object required: - extraction - cooldown properties: extraction: $ref: ../models/Extraction.yaml cooldown: $ref: ../models/Cooldown.yaml required: - data examples: Success: value: data: extraction: shipSymbol: 4B902A-1 yield: tradeSymbol: SILICON units: 16 cooldown: duration: 119 expiration: '2022-03-12T00:41:29.371Z' operationId: post-my-ships-shipSymbol-extract requestBody: content: application/json: schema: type: - object - 'null' properties: survey: $ref: ../models/Survey.yaml examples: No Survey: value: {} With Survey: value: survey: signature: X1-OE-D2DD38 deposits: - COPPER_ORE expiration: '2022-03-08T05:41:55.514Z' description: '' description: Extract resources from the waypoint into your ship. Send a survey as the payload to target specific yields. The entire survey must be sent as it contains a signature that the backend verifies. security: - AgentToken: [] get: summary: Extraction Cooldown operationId: get-my-ships-shipSymbol-extract responses: '200': description: OK content: application/json: schema: description: '' type: object x-examples: example-1: data: cooldown: duration: 119 expiration: '2022-03-12T00:41:29.285Z' properties: data: type: object required: - cooldown properties: cooldown: $ref: ../models/Cooldown.yaml required: - data examples: Success: value: data: cooldown: duration: 119 expiration: '2022-03-12T00:41:29.285Z' description: Get the status of your last extraction. security: - AgentToken: [] tags: - ships '/my/ships/{shipSymbol}/survey': parameters: - schema: type: string name: shipSymbol in: path required: true post: summary: Survey Waypoint tags: - ships responses: '201': description: Created content: application/json: schema: description: '' type: object x-examples: example-1: data: - signature: X1-OE-D2DD38 deposits: - COPPER_ORE expiration: '2022-03-08T05:41:55.514Z' - signature: X1-OE-B58FEB deposits: - ALUMINUM_ORE - ALUMINUM_ORE - ALUMINUM_ORE expiration: '2022-03-08T05:39:15.519Z' - signature: X1-OE-0E326C deposits: - ALUMINUM_ORE - SILICON expiration: '2022-03-08T05:20:27.521Z' - signature: X1-OE-5CDFA4 deposits: - COPPER_ORE - COPPER_ORE - COPPER_ORE - IRON_ORE expiration: '2022-03-08T05:44:34.522Z' - signature: X1-OE-86C3A1 deposits: - COPPER_ORE - COPPER_ORE - IRON_ORE expiration: '2022-03-08T05:43:45.522Z' - signature: X1-OE-C97BEA deposits: - ALUMINUM_ORE - COPPER_ORE - QUARTZ - QUARTZ expiration: '2022-03-08T05:22:39.523Z' - signature: X1-OE-9913BD deposits: - QUARTZ expiration: '2022-03-08T05:37:45.523Z' - signature: X1-OE-8D87D2 deposits: - COPPER_ORE - SILICON expiration: '2022-03-08T05:32:57.524Z' properties: data: type: object properties: surveys: type: array items: $ref: ../models/Survey.yaml cooldown: $ref: ../models/Cooldown.yaml required: - data examples: Success: value: data: cooldown: duration: 899 expiration: '2022-03-12T02:11:35.618Z' surveys: - signature: X1-OE-397C82 deposits: - SILICON expiration: '2022-03-12T02:00:19.622Z' - signature: X1-OE-4413F6 deposits: - ALUMINUM_ORE - ALUMINUM_ORE - COPPER_ORE - IRON_ORE expiration: '2022-03-12T02:20:08.625Z' - signature: X1-OE-E6480F deposits: - ALUMINUM_ORE - IRON_ORE - QUARTZ - SILICON expiration: '2022-03-12T02:18:00.626Z' - signature: X1-OE-660BE9 deposits: - ALUMINUM_ORE expiration: '2022-03-12T02:20:45.626Z' - signature: X1-OE-D64798 deposits: - COPPER_ORE - QUARTZ - SILICON expiration: '2022-03-12T02:07:33.626Z' - signature: X1-OE-F799F3 deposits: - IRON_ORE expiration: '2022-03-12T02:23:16.627Z' operationId: post-my-ships-shipSymbol-survey security: - AgentToken: [] description: |- If you want to target specific yields for an extraction, you can survey a waypoint, such as an asteroid field, and send the survey in the body of the extract request. Each survey may have multiple deposits, and if a symbol shows up more than once, that indicates a higher chance of extracting that resource. Your ship will enter a cooldown between consecutive survey requests. Surveys will eventually expire after a period of time. Multiple ships can use the same survey for extraction. get: summary: Survey Cooldown tags: - ships responses: '200': description: OK content: application/json: schema: type: object properties: data: type: object properties: cooldown: $ref: ../models/Cooldown.yaml examples: Success: value: data: cooldown: duration: 899 expiration: '2022-03-12T02:11:35.618Z' operationId: get-my-ships-shipSymbol-survey description: 'Executing a survey will initiate a cooldown for a number of seconds before you can call it again. This endpoint returns the details of your cooldown, or a 404 if there is no cooldown for the survey action.' '/my/ships/{shipSymbol}/jump': parameters: - schema: type: string name: shipSymbol in: path required: true post: summary: Jump Ship tags: - ships responses: '201': description: Created content: application/json: schema: description: '' type: object x-examples: example-1: data: jump: shipSymbol: 1D7FDA-1 destination: 00E0B1 cooldown: duration: 719 expiration: '2022-03-12T00:52:56.735Z' properties: data: type: object required: - jump - cooldown properties: jump: type: object required: - shipSymbol - destination properties: shipSymbol: type: string minLength: 1 destination: type: string minLength: 1 cooldown: $ref: ../models/Cooldown.yaml required: - data examples: Success: value: data: jump: shipSymbol: 1D7FDA-1 destination: 00E0B1 cooldown: duration: 719 expiration: '2022-03-12T00:52:56.735Z' operationId: post-my-ships-shipSymbol-jump security: - AgentToken: [] get: summary: Jump Cooldown operationId: get-my-ships-shipSymbol-jump responses: '200': description: OK content: application/json: schema: description: '' type: object x-examples: example-1: data: cooldown: duration: 719 expiration: '2022-03-12T00:52:56.735Z' properties: data: type: object required: - cooldown properties: cooldown: $ref: ../models/Cooldown.yaml required: - data security: - AgentToken: [] tags: - ships '/my/ships/{shipSymbol}/purchase': parameters: - schema: type: string name: shipSymbol in: path required: true post: summary: Purchase Cargo tags: - ships responses: '201': description: Created content: application/json: schema: description: '' type: object x-examples: example-1: data: waypointSymbol: X1-OE-PM tradeSymbol: MICROPROCESSORS credits: -843 units: 1 properties: data: $ref: ../models/Trade.yaml required: - data examples: Success: value: data: waypointSymbol: X1-OE-PM tradeSymbol: MICROPROCESSORS credits: -843 units: 1 operationId: post-my-ships-shipSymbol-purchase security: - AgentToken: [] '/my/ships/{shipSymbol}/sell': parameters: - schema: type: string name: shipSymbol in: path required: true post: summary: Sell Cargo tags: - ships responses: '200': description: OK content: application/json: schema: description: '' type: object x-examples: example-1: data: waypointSymbol: X1-OE-PM tradeSymbol: SILICON credits: 144 units: -1 properties: data: $ref: ../models/Trade.yaml required: - data examples: Success: value: data: waypointSymbol: X1-OE-PM tradeSymbol: SILICON credits: 144 units: -1 operationId: post-my-ships-shipSymbol-sell description: Sell cargo from your ship's hold to the local market. security: - AgentToken: [] '/my/ships/{shipSymbol}/refuel': parameters: - schema: type: string name: shipSymbol in: path required: true post: summary: Refuel Ship tags: - ships responses: '201': description: Created content: application/json: schema: description: '' type: object properties: data: type: object properties: credits: type: number fuel: type: number required: - credits - fuel required: - data x-examples: example-1: data: credits: 0 fuel: 0 examples: Success: value: data: credits: -1920 fuel: 800 operationId: post-my-ships-shipSymbol-refuel security: - AgentToken: [] '/my/ships/{shipSymbol}/scan': parameters: - schema: type: string name: shipSymbol in: path required: true post: summary: Scan tags: - ships responses: '201': description: Created content: application/json: schema: description: '' type: object x-examples: example-1: data: ships: - symbol: COMMERCE_REPUBLIC-0060A0 registration: factionSymbol: COMMERCE_REPUBLIC role: EXCAVATOR frameSymbol: FRAME_HEAVY_FREIGHTER reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_I expiration: '2022-03-08T05:20:14.725Z' - symbol: ZANZIBAR_TRIKES-DF0AAF registration: factionSymbol: ZANZIBAR_TRIKES role: HAULER frameSymbol: FRAME_SHUTTLE reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_II expiration: '2022-03-08T05:20:00.725Z' - symbol: ZANZIBAR_TRIKES-9B80BE registration: factionSymbol: ZANZIBAR_TRIKES role: TRANSPORT frameSymbol: FRAME_TRANSPORT reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_I expiration: '2022-03-08T05:20:06.725Z' - symbol: COMMERCE_REPUBLIC-117520 registration: factionSymbol: COMMERCE_REPUBLIC role: HARVESTER frameSymbol: FRAME_SHUTTLE reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_II expiration: '2022-03-08T05:19:55.725Z' - symbol: SPACERS_GUILD-609AA5 registration: factionSymbol: SPACERS_GUILD role: HAULER frameSymbol: FRAME_FRIGATE reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_I expiration: '2022-03-08T05:19:38.725Z' - symbol: MINERS_COLLECTIVE-7AD322 registration: factionSymbol: MINERS_COLLECTIVE role: EXCAVATOR frameSymbol: FRAME_SHUTTLE reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_I expiration: '2022-03-08T05:19:11.725Z' - symbol: ZANZIBAR_TRIKES-AE6D78 registration: factionSymbol: ZANZIBAR_TRIKES role: HAULER frameSymbol: FRAME_SHUTTLE reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_II expiration: '2022-03-08T05:20:44.725Z' - symbol: SPACERS_GUILD-92828B registration: factionSymbol: SPACERS_GUILD role: SURVEYOR frameSymbol: FRAME_LIGHT_FREIGHTER reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_II expiration: '2022-03-08T05:20:49.726Z' - symbol: ZANZIBAR_TRIKES-B5EAD1 registration: factionSymbol: ZANZIBAR_TRIKES role: TRANSPORT frameSymbol: FRAME_TRANSPORT reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_I expiration: '2022-03-08T05:20:25.726Z' - symbol: ZANZIBAR_TRIKES-6A4E0D registration: factionSymbol: ZANZIBAR_TRIKES role: HAULER frameSymbol: FRAME_EXPLORER reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_II expiration: '2022-03-08T05:19:19.726Z' cooldown: 60 properties: data: type: object required: - ships - cooldown properties: ships: type: array uniqueItems: true minItems: 1 items: $ref: ../models/ScannedShip.yaml cooldown: $ref: ../models/Cooldown.yaml required: - data examples: Success: value: data: cooldown: duration: 59 expiration: '2022-03-12T00:42:44.220Z' ships: - symbol: SPACERS_GUILD-65E1BA registration: factionSymbol: SPACERS_GUILD role: EXCAVATOR frameSymbol: FRAME_LIGHT_FREIGHTER reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_I expiration: '2022-03-12T00:44:14.222Z' - symbol: MINERS_COLLECTIVE-C6ACCA registration: factionSymbol: MINERS_COLLECTIVE role: HARVESTER frameSymbol: FRAME_INTERCEPTOR reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_I expiration: '2022-03-12T00:44:38.222Z' - symbol: COMMERCE_REPUBLIC-866DC7 registration: factionSymbol: COMMERCE_REPUBLIC role: SURVEYOR frameSymbol: FRAME_LIGHT_FREIGHTER reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_I expiration: '2022-03-12T00:45:21.222Z' - symbol: SPACERS_GUILD-2B1D01 registration: factionSymbol: SPACERS_GUILD role: SURVEYOR frameSymbol: FRAME_HEAVY_FREIGHTER reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_I expiration: '2022-03-12T00:44:53.222Z' - symbol: MINERS_COLLECTIVE-2F238C registration: factionSymbol: MINERS_COLLECTIVE role: HAULER frameSymbol: FRAME_SHUTTLE reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_II expiration: '2022-03-12T00:44:07.222Z' - symbol: ZANZIBAR_TRIKES-ACF237 registration: factionSymbol: ZANZIBAR_TRIKES role: HAULER frameSymbol: FRAME_INTERCEPTOR reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_II expiration: '2022-03-12T00:44:22.223Z' - symbol: SPACERS_GUILD-94A474 registration: factionSymbol: SPACERS_GUILD role: EXCAVATOR frameSymbol: FRAME_SHUTTLE reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_I expiration: '2022-03-12T00:43:51.223Z' - symbol: ZANZIBAR_TRIKES-648BA8 registration: factionSymbol: ZANZIBAR_TRIKES role: PATROL frameSymbol: FRAME_SHUTTLE reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_I expiration: '2022-03-12T00:44:56.223Z' - symbol: COMMERCE_REPUBLIC-1EED24 registration: factionSymbol: COMMERCE_REPUBLIC role: PATROL frameSymbol: FRAME_EXPLORER reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_II expiration: '2022-03-12T00:45:23.223Z' - symbol: ZANZIBAR_TRIKES-A5600D registration: factionSymbol: ZANZIBAR_TRIKES role: PATROL frameSymbol: FRAME_FRIGATE reactorSymbol: REACTOR_FUSION_I engineSymbol: ENGINE_ION_DRIVE_II expiration: '2022-03-12T00:44:00.223Z' operationId: post-my-ships-shipSymbol-scan security: - AgentToken: [] description: Scan approaching or departing ships. requestBody: content: application/json: schema: type: object properties: mode: type: string enum: - APPROACHING_SHIPS - DEPARTING_SHIPS required: - mode examples: Approaching Ships: value: mode: APPROACHING_SHIPS Departing Ships: value: mode: APPROACHING_SHIPS description: '' get: summary: Scan Cooldown operationId: get-my-ships-shipSymbol-scan responses: '200': description: OK content: application/json: schema: type: object properties: data: type: object properties: cooldown: $ref: ../models/Cooldown.yaml examples: Success: value: data: cooldown: duration: 59 expiration: '2022-03-12T00:42:44.220Z' security: - AgentToken: [] tags: - ships '/my/ships/{shipSymbol}/navigate': parameters: - schema: type: string name: shipSymbol in: path required: true description: The ship symbol post: summary: Navigate Ship tags: - ships responses: '201': description: Created content: application/json: schema: description: '' type: object x-examples: example-1: data: shipSymbol: 3AE434-1 departure: X1-OE-PM destination: X1-OE-A005 durationRemaining: 2159 arrivedAt: null properties: data: type: object properties: navigation: $ref: ../models/ShipNavigation.yaml fuelCost: type: number required: - data examples: Success: value: data: fuelCost: 38 navigation: shipSymbol: BA03F2-1 departure: X1-OE-PM destination: X1-OE-A005 durationRemaining: 2279 arrivedAt: null operationId: post-my-ships-shipSymbol-navigate requestBody: content: application/json: schema: type: object properties: destination: type: string description: The waypoint symbol to navigate to. security: - AgentToken: [] get: summary: Navigation Status operationId: get-my-ships-shipSymbol-navigate responses: '200': description: OK content: application/json: schema: description: '' type: object x-examples: example-1: data: shipSymbol: 3AE434-1 departure: X1-OE-PM destination: X1-OE-A005 durationRemaining: 2159 arrivedAt: null properties: data: type: object properties: navigation: $ref: ../models/ShipNavigation.yaml required: - data examples: Success: value: data: navigation: shipSymbol: BA03F2-1 departure: X1-OE-PM destination: X1-OE-A005 durationRemaining: 2279 arrivedAt: null description: Get the status of your last navigation. security: - AgentToken: [] tags: - ships '/my/ships/{shipSymbol}': parameters: - schema: type: string name: shipSymbol in: path required: true get: summary: View Ship tags: - ships responses: '200': description: OK content: application/json: schema: description: '' type: object x-examples: example-1: data: symbol: 653298-1 crew: null officers: null frame: FRAME_DRONE reactor: REACTOR_SOLAR_I engine: ENGINE_SOLAR_PROPULSION modules: - MODULE_CARGO_HOLD mounts: - MOUNT_MINING_LASER_I registration: factionSymbol: COMMERCE_REPUBLIC agentSymbol: '653298' fee: 100 role: EXCAVATOR integrity: frame: 1 reactor: 1 engine: 1 status: DOCKED location: X1-OE-PM cargo: [] properties: data: $ref: ../models/Ship.yaml required: - data operationId: get-my-ships-shipSymbol description: Retrieve the details of your ship. security: - AgentToken: [] /my/ships: get: summary: List Ships tags: - ships responses: '200': description: OK content: application/json: schema: description: '' type: object x-examples: example-1: data: - symbol: 653298-1 crew: null officers: null frame: FRAME_DRONE reactor: REACTOR_SOLAR_I engine: ENGINE_SOLAR_PROPULSION modules: - MODULE_CARGO_HOLD mounts: - MOUNT_MINING_LASER_I registration: factionSymbol: COMMERCE_REPUBLIC agentSymbol: '653298' fee: 100 role: EXCAVATOR integrity: frame: 1 reactor: 1 engine: 1 status: DOCKED location: X1-OE-PM cargo: [] - symbol: 653298-2 crew: null officers: null frame: FRAME_DRONE reactor: REACTOR_SOLAR_I engine: ENGINE_SOLAR_PROPULSION modules: - MODULE_CARGO_HOLD mounts: - MOUNT_MINING_LASER_I registration: factionSymbol: COMMERCE_REPUBLIC agentSymbol: '653298' fee: 100 role: EXCAVATOR integrity: frame: 1 reactor: 1 engine: 1 status: DOCKED location: X1-OE-PM cargo: [] - symbol: 653298-3 crew: null officers: null frame: FRAME_DRONE reactor: REACTOR_SOLAR_I engine: ENGINE_SOLAR_PROPULSION modules: - MODULE_CARGO_HOLD mounts: - MOUNT_MINING_LASER_I registration: factionSymbol: COMMERCE_REPUBLIC agentSymbol: '653298' fee: 100 role: EXCAVATOR integrity: frame: 1 reactor: 1 engine: 1 status: DOCKED location: X1-OE-PM cargo: [] - symbol: 653298-4 crew: null officers: null frame: FRAME_DRONE reactor: REACTOR_SOLAR_I engine: ENGINE_SOLAR_PROPULSION modules: - MODULE_CARGO_HOLD mounts: - MOUNT_MINING_LASER_I registration: factionSymbol: COMMERCE_REPUBLIC agentSymbol: '653298' fee: 100 role: EXCAVATOR integrity: frame: 1 reactor: 1 engine: 1 status: DOCKED location: X1-OE-PM cargo: [] - symbol: 653298-5 crew: null officers: null frame: FRAME_DRONE reactor: REACTOR_SOLAR_I engine: ENGINE_SOLAR_PROPULSION modules: - MODULE_CARGO_HOLD mounts: - MOUNT_MINING_LASER_I registration: factionSymbol: COMMERCE_REPUBLIC agentSymbol: '653298' fee: 100 role: EXCAVATOR integrity: frame: 1 reactor: 1 engine: 1 status: DOCKED location: X1-OE-PM cargo: [] - symbol: 653298-6 crew: null officers: null frame: FRAME_DRONE reactor: REACTOR_SOLAR_I engine: ENGINE_SOLAR_PROPULSION modules: - MODULE_CARGO_HOLD mounts: - MOUNT_MINING_LASER_I registration: factionSymbol: COMMERCE_REPUBLIC agentSymbol: '653298' fee: 100 role: EXCAVATOR integrity: frame: 1 reactor: 1 engine: 1 status: DOCKED location: X1-OE-PM cargo: [] meta: total: 6 page: 1 limit: 20 properties: data: type: array uniqueItems: true minItems: 1 items: $ref: ../models/Ship.yaml meta: $ref: ../models/Meta.yaml required: - data - meta examples: Success: value: data: - symbol: 55B261-1 crew: null officers: null fuel: 100 frame: FRAME_DRONE reactor: REACTOR_SOLAR_I engine: ENGINE_SOLAR_PROPULSION modules: - MODULE_CARGO_HOLD mounts: - MOUNT_MINING_LASER_I registration: factionSymbol: COMMERCE_REPUBLIC agentSymbol: 55B261 fee: 100 role: EXCAVATOR integrity: frame: 1 reactor: 1 engine: 1 status: DOCKED location: X1-OE-PM cargo: [] - symbol: 55B261-2 crew: null officers: null fuel: 100 frame: FRAME_DRONE reactor: REACTOR_SOLAR_I engine: ENGINE_SOLAR_PROPULSION modules: - MODULE_CARGO_HOLD mounts: - MOUNT_MINING_LASER_I registration: factionSymbol: COMMERCE_REPUBLIC agentSymbol: 55B261 fee: 100 role: EXCAVATOR integrity: frame: 1 reactor: 1 engine: 1 status: DOCKED location: X1-OE-PM cargo: [] - symbol: 55B261-3 crew: null officers: null fuel: 100 frame: FRAME_DRONE reactor: REACTOR_SOLAR_I engine: ENGINE_SOLAR_PROPULSION modules: - MODULE_CARGO_HOLD mounts: - MOUNT_MINING_LASER_I registration: factionSymbol: COMMERCE_REPUBLIC agentSymbol: 55B261 fee: 100 role: EXCAVATOR integrity: frame: 1 reactor: 1 engine: 1 status: DOCKED location: X1-OE-PM cargo: [] - symbol: 55B261-4 crew: null officers: null fuel: 100 frame: FRAME_DRONE reactor: REACTOR_SOLAR_I engine: ENGINE_SOLAR_PROPULSION modules: - MODULE_CARGO_HOLD mounts: - MOUNT_MINING_LASER_I registration: factionSymbol: COMMERCE_REPUBLIC agentSymbol: 55B261 fee: 100 role: EXCAVATOR integrity: frame: 1 reactor: 1 engine: 1 status: DOCKED location: X1-OE-PM cargo: [] - symbol: 55B261-5 crew: null officers: null fuel: 100 frame: FRAME_DRONE reactor: REACTOR_SOLAR_I engine: ENGINE_SOLAR_PROPULSION modules: - MODULE_CARGO_HOLD mounts: - MOUNT_MINING_LASER_I registration: factionSymbol: COMMERCE_REPUBLIC agentSymbol: 55B261 fee: 100 role: EXCAVATOR integrity: frame: 1 reactor: 1 engine: 1 status: DOCKED location: X1-OE-PM cargo: [] - symbol: 55B261-6 crew: null officers: null fuel: 100 frame: FRAME_DRONE reactor: REACTOR_SOLAR_I engine: ENGINE_SOLAR_PROPULSION modules: - MODULE_CARGO_HOLD mounts: - MOUNT_MINING_LASER_I registration: factionSymbol: COMMERCE_REPUBLIC agentSymbol: 55B261 fee: 100 role: EXCAVATOR integrity: frame: 1 reactor: 1 engine: 1 status: DOCKED location: X1-OE-PM cargo: [] meta: total: 6 page: 1 limit: 20 operationId: get-my-ships description: Retrieve all of your ships. security: - AgentToken: [] post: summary: Purchase Ship tags: - shipyards responses: '200': description: OK content: application/json: schema: description: '' type: object x-examples: example-1: data: symbol: 4F4D44-1 crew: null officers: null fuel: 100 frame: FRAME_DRONE reactor: REACTOR_SOLAR_I engine: ENGINE_SOLAR_PROPULSION modules: - MODULE_CARGO_HOLD mounts: - MOUNT_MINING_LASER_I registration: factionSymbol: COMMERCE_REPUBLIC agentSymbol: 4F4D44 fee: 100 role: EXCAVATOR integrity: frame: 1 reactor: 1 engine: 1 status: DOCKED location: X1-OE-PM cargo: [] properties: data: type: object properties: ship: $ref: ../models/Ship.yaml credits: type: number required: - data operationId: post-my-ships security: - AgentToken: [] description: Purchase a ship requestBody: content: application/json: schema: type: object properties: id: type: string description: The id of the shipyard listing you want to purchase. /my/contracts: get: summary: List Contracts tags: - contracts responses: '200': description: OK content: application/json: schema: description: '' type: object x-examples: example-1: data: - id: cl0hok38t0014ks0jnoy8o5vh faction: COMMERCE_REPUBLIC type: PROCUREMENT terms: deadline: '2022-03-11T05:16:59.113Z' payment: onAccepted: 20000 onFulfilled: 100000 deliver: - tradeSymbol: IRON_ORE destination: X1-OE-PM units: 10000 fulfilled: 0 accepted: false fulfilled: false expiresAt: '2022-03-09T05:16:59.112Z' - id: cl0hok3920023kv0jflbjpltg faction: COMMERCE_REPUBLIC type: PROCUREMENT terms: deadline: '2022-03-11T05:16:59.123Z' payment: onAccepted: 20000 onFulfilled: 100000 deliver: - tradeSymbol: IRON_ORE destination: X1-OE-PM units: 10000 fulfilled: 0 accepted: false fulfilled: false expiresAt: '2022-03-09T05:16:59.122Z' meta: total: 2 page: 1 limit: 20 properties: data: type: array uniqueItems: true minItems: 1 items: $ref: ../models/Contract.yaml meta: $ref: ../models/Meta.yaml required: - data - meta examples: Success: value: data: - id: cl0hok38t0014ks0jnoy8o5vh faction: COMMERCE_REPUBLIC type: PROCUREMENT terms: deadline: '2022-03-11T05:16:59.113Z' payment: onAccepted: 20000 onFulfilled: 100000 deliver: - tradeSymbol: IRON_ORE destination: X1-OE-PM units: 10000 fulfilled: 0 accepted: false fulfilled: false expiresAt: '2022-03-09T05:16:59.112Z' meta: total: 10 page: 1 limit: 10 operationId: get-my-contracts security: - AgentToken: [] description: List all of your contracts. '/my/contracts/{contractId}': parameters: - schema: type: string name: contractId in: path required: true description: The contract ID get: summary: Contract Details tags: - contracts responses: '200': description: OK content: application/json: schema: type: object properties: data: $ref: ../models/Contract.yaml examples: Success: value: data: id: cl0hok38t0014ks0jnoy8o5vh faction: COMMERCE_REPUBLIC type: PROCUREMENT terms: deadline: '2022-03-11T05:16:59.113Z' payment: onAccepted: 20000 onFulfilled: 100000 deliver: - tradeSymbol: IRON_ORE destination: X1-OE-PM units: 10000 fulfilled: 0 accepted: false fulfilled: false expiresAt: '2022-03-09T05:16:59.112Z' operationId: get-my-contracts-contractId security: - AgentToken: [] description: Get the details of a contract by ID. '/my/contracts/{contractId}/accept': parameters: - schema: type: string name: contractId in: path required: true post: summary: Accept Contract tags: - contracts responses: '201': description: Accepted content: application/json: schema: type: object properties: data: $ref: ../models/Contract.yaml operationId: post-my-contracts-contractId-accept security: - AgentToken: [] description: Accept a contract. /systems: get: summary: List Systems tags: - systems responses: '200': description: OK content: application/json: schema: description: '' type: object x-examples: example-1: data: - symbol: X1-OE sector: X1 type: RED_STAR x: 0 'y': 0 waypoints: - X1-OE-PM - X1-OE-PM01 - X1-OE-A005 - X1-OE-25X factions: - COMMERCE_REPUBLIC - MINERS_COLLECTIVE - SPACERS_GUILD charted: true chartedBy: null - symbol: X1-EV sector: X1 type: ORANGE_STAR x: 3 'y': 4 waypoints: - X1-EV-A004 factions: - COMMERCE_REPUBLIC charted: true chartedBy: null - symbol: X1-ZZ sector: X1 type: BLUE_STAR x: -2 'y': 11 waypoints: [] factions: [] charted: false chartedBy: null meta: total: 3 page: 1 limit: 20 properties: data: type: array uniqueItems: true minItems: 1 items: $ref: ../models/System.yaml meta: $ref: ../models/Meta.yaml required: - data - meta examples: Success: value: data: - symbol: X1-OE sector: X1 type: RED_STAR x: 0 'y': 0 waypoints: - X1-OE-PM - X1-OE-PM01 - X1-OE-A005 - X1-OE-25X factions: - COMMERCE_REPUBLIC - MINERS_COLLECTIVE - SPACERS_GUILD charted: true chartedBy: null meta: total: 0 page: 0 limit: 0 operationId: get-systems description: Return a list of all systems. security: - AgentToken: [] '/systems/{systemSymbol}': parameters: - schema: type: string default: X1-OE name: systemSymbol in: path required: true description: The system symbol get: summary: View System tags: - systems responses: '200': description: OK content: application/json: schema: description: '' type: object x-examples: example-1: data: symbol: X1-ZZ sector: X1 type: BLUE_STAR x: -2 'y': 9 waypoints: [] factions: [] charted: false chartedBy: null properties: data: $ref: ../models/System.yaml required: - data examples: Success: value: data: symbol: X1-ZZ sector: X1 type: BLUE_STAR x: -2 'y': 9 waypoints: [] factions: [] charted: false chartedBy: null operationId: get-systems-systemSymbol security: - AgentToken: [] '/systems/{systemSymbol}/shipyards': parameters: - schema: type: string name: systemSymbol in: path required: true description: the system symbol get: summary: List Shipyards tags: - shipyards responses: '200': description: OK content: application/json: schema: description: '' type: object x-examples: example-1: data: - symbol: X1-OE-PM faction: COMMERCE_REPUBLIC meta: total: 1 page: 1 limit: 20 properties: data: type: array uniqueItems: true minItems: 1 items: $ref: ../models/Shipyard.yaml meta: $ref: ../models/Meta.yaml required: - data - meta operationId: get-systems-systemSymbol-shipyards security: - AgentToken: [] description: Returns a list of all shipyards in a system. '/systems/{systemSymbol}/shipyards/{waypointSymbol}': parameters: - schema: type: string name: systemSymbol in: path required: true description: The system symbol - schema: type: string name: waypointSymbol in: path required: true description: The waypoint symbol get: summary: Shipyard Details tags: - shipyards responses: '200': description: OK content: application/json: schema: type: object properties: data: $ref: ../models/Shipyard.yaml operationId: get-systems-systemSymbol-shipyards-waypointSymbol security: - AgentToken: [] '/systems/{systemSymbol}/shipyards/{waypointSymbol}/ships': parameters: - schema: type: string name: systemSymbol in: path required: true description: The system symbol - schema: type: string name: waypointSymbol in: path required: true description: The waypoint symbol get: summary: Shipyard Listings tags: - shipyards responses: '200': description: OK content: application/json: schema: description: '' type: object x-examples: example-1: data: - id: cl0nahta90000aq0jonm1nprl waypoint: X1-OE-PM price: 58191 role: EXCAVATOR frame: FRAME_DRONE reactor: REACTOR_SOLAR_I engine: ENGINE_SOLAR_PROPULSION modules: - MODULE_CARGO_HOLD mounts: - MOUNT_MINING_LASER_I meta: total: 1 page: 1 limit: 20 properties: data: type: array uniqueItems: true minItems: 1 items: $ref: ../models/ShipyardListing.yaml meta: $ref: ../models/Meta.yaml required: - data - meta examples: {} operationId: get-systems-systemSymbol-shipyards-waypointSymbol-ships tags: - name: ships - name: markets - name: trade - name: sell - name: purchase - name: navigation - name: agents - name: dock - name: orbit - name: jettison - name: jump - name: refuel - name: scan - name: contracts - name: chart - name: extract - name: mining - name: deliver - name: survey - name: systems - name: waypoints - name: shipyards components: schemas: {} securitySchemes: AgentToken: type: http scheme: bearer description: When you register a new agent you will be granted a private bearer token which grants authorization to use the API.