From ce68dcc7432ced1d03b501c2e23c85c71ed0da35 Mon Sep 17 00:00:00 2001 From: Bart Riepe Date: Mon, 10 Feb 2025 08:47:06 +0900 Subject: [PATCH 1/6] feat: documentation updates for 2.3 --- reference/SpaceTraders.json | 639 +++++------------------------------- 1 file changed, 86 insertions(+), 553 deletions(-) diff --git a/reference/SpaceTraders.json b/reference/SpaceTraders.json index bbd1624..5ca950a 100644 --- a/reference/SpaceTraders.json +++ b/reference/SpaceTraders.json @@ -1,21 +1,22 @@ { - "openapi": "3.0.0", + "openapi": "3.1.1", "info": { + "title": "SpaceTraders API", + "version": "2.3.0", + "description": "SpaceTraders is an open-universe game and learning platform that offers a set of HTTP endpoints to control a fleet of ships and explore a multiplayer universe.\n\nThe API is documented using [OpenAPI](https://github.com/SpaceTradersAPI/api-docs). You can send your first request right here in your browser to check the status of the game server.\n\n```json http\n{\n \"method\": \"GET\",\n \"url\": \"https://api.spacetraders.io/v2\",\n}\n```\n\nUnlike a traditional game, SpaceTraders does not have a first-party client or app to play the game. Instead, you can use the API to build your own client, write a script to automate your ships, or try an app built by the community.\n\nWe have a [Discord channel](https://discord.com/invite/jh6zurdWk5) where you can share your projects, ask questions, and get help from other players.\n\n\n", "contact": { "email": "joel@spacetraders.io", "name": "Joel Brubaker" }, - "description": "SpaceTraders is an open-universe game and learning platform that offers a set of HTTP endpoints to control a fleet of ships and explore a multiplayer universe.\n\nThe API is documented using [OpenAPI](https://github.com/SpaceTradersAPI/api-docs). You can send your first request right here in your browser to check the status of the game server.\n\n```json http\n{\n \"method\": \"GET\",\n \"url\": \"https://api.spacetraders.io/v2\",\n}\n```\n\nUnlike a traditional game, SpaceTraders does not have a first-party client or app to play the game. Instead, you can use the API to build your own client, write a script to automate your ships, or try an app built by the community.\n\nWe have a [Discord channel](https://discord.com/invite/jh6zurdWk5) where you can share your projects, ask questions, and get help from other players.\n\n\n", "license": { "name": "No Permission", "url": "https://choosealicense.com/no-permission/" - }, - "title": "SpaceTraders API", - "version": "2.0.0" + } }, "security": [ { - "AgentToken": [] + "AgentToken": [], + "AccountToken": [] } ], "servers": [ @@ -26,24 +27,32 @@ ], "tags": [ { - "description": "Agents", + "description": "The agents endpoints contain actions that relate to agents. Both your own and other agents.", "name": "Agents" }, { - "description": "Contracts", + "description": "The contracts endpoints contain actions that relate to contracts. Contracts are agreements between agents and factions to perform certain services in exchange for a reward.", "name": "Contracts" }, { - "description": "Factions", + "description": "The factions endpoints contain actions that relate to factions. Factions are organizations or sentient beings that are actively competing for control of the universe.", "name": "Factions" }, { - "description": "Fleet", + "description": "The fleet endpoints contain actions that relate to the fleet of ships owned by agents, and the actions those ships can perform.", "name": "Fleet" }, { - "description": "Systems", + "description": "The systems endpoints contain actions that relate to systems and waypoints. Systems are the individual stars in the universe, and waypoints are the locations within a system.", "name": "Systems" + }, + { + "name": "Data", + "description": "The data endpoints contain actions that relate to the data that is stored in the game. This is all the data that doesn't change over the course of a reset (but might change between resets)." + }, + { + "description": "The global endpoints contain actions that relate to the game server itself. This includes announcements, leaderboards, and server resets. It also includes endpoints that don't fit into the other categories.", + "name": "Global" } ], "components": { @@ -51,9 +60,16 @@ "schemas": {}, "securitySchemes": { "AgentToken": { - "description": "When you register a new agent you will be granted a private bearer token which grants authorization to use the API.", + "description": "When you register a new agent you will be granted a private bearer token which grants authorization to use the API during a specific reset.", "scheme": "bearer", - "type": "http" + "type": "http", + "bearerFormat": "JWT" + }, + "AccountToken": { + "description": "When you create an account you will be able to generate a private bearer token which grants authorization to create agents.", + "scheme": "bearer", + "type": "http", + "bearerFormat": "JWT" } }, "links": {}, @@ -64,6 +80,9 @@ "get": { "description": "Return the status of the game server.\nThis also includes a few global elements, such as announcements, server reset dates and leaderboards.", "operationId": "get-status", + "tags": [ + "Global" + ], "responses": { "200": { "content": { @@ -248,8 +267,16 @@ }, "/register": { "post": { - "description": "Creates a new agent and ties it to an account. \nThe agent symbol must consist of a 3-14 character string, and will be used to represent your agent. This symbol will prefix the symbol of every ship you own. Agent symbols will be cast to all uppercase characters.\n\nThis new agent will be tied to a starting faction of your choice, which determines your starting location, and will be granted an authorization token, a contract with their starting faction, a command ship that can fly across space with advanced capabilities, a small probe ship that can be used for reconnaissance, and 150,000 credits.\n\n> #### Keep your token safe and secure\n>\n> 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.\n\nIf you are new to SpaceTraders, It is recommended to register with the COSMIC faction, a faction that is well connected to the rest of the universe. After registering, you should try our interactive [quickstart guide](https://docs.spacetraders.io/quickstart/new-game) which will walk you through basic API requests in just a few minutes.", + "description": "Creates a new agent and ties it to an account. \nThe agent symbol must consist of a 3-14 character string, and will be used to represent your agent. This symbol will prefix the symbol of every ship you own. Agent symbols will be cast to all uppercase characters.\n\nThis new agent will be tied to a starting faction of your choice, which determines your starting location, and will be granted an authorization token, a contract with their starting faction, a command ship that can fly across space with advanced capabilities, a small probe ship that can be used for reconnaissance, and 175,000 credits.\n\n> #### Keep your token safe and secure\n>\n> Keep careful track of where you store your token. You can generate a new token from our account dashboard, but if someone else gains access to your token they will be able to use it to make API requests on your behalf until the end of the reset.\n\nIf you are new to SpaceTraders, It is recommended to register with the COSMIC faction, a faction that is well connected to the rest of the universe. After registering, you should try our interactive [quickstart guide](https://docs.spacetraders.io/quickstart/new-game) which will walk you through a few basic API requests in just a few minutes.", "operationId": "register", + "tags": [ + "Global" + ], + "security": [ + { + "AccountToken": [] + } + ], "requestBody": { "content": { "application/json": { @@ -326,7 +353,6 @@ } }, "summary": "Register New Agent", - "security": [], "parameters": [] } }, @@ -2191,11 +2217,7 @@ "events": { "type": "array", "items": { - "oneOf": [ - { - "$ref": "../models/ShipConditionEvent.json" - } - ] + "$ref": "../models/ShipConditionEvent.json" } } }, @@ -2265,11 +2287,7 @@ "events": { "type": "array", "items": { - "oneOf": [ - { - "$ref": "../models/ShipConditionEvent.json" - } - ] + "$ref": "../models/ShipConditionEvent.json" } } }, @@ -2348,11 +2366,7 @@ "events": { "type": "array", "items": { - "oneOf": [ - { - "$ref": "../models/ShipConditionEvent.json" - } - ] + "$ref": "../models/ShipConditionEvent.json" } } }, @@ -3901,536 +3915,55 @@ ], "LIQUID_NITROGEN": [ "MACHINERY" - ], - "HYDROCARBON": [ - "MACHINERY" - ], - "AMMONIA_ICE": [ - "MACHINERY" - ], - "ICE_WATER": [ - "MACHINERY" - ], - "PRECIOUS_STONES": [ - "EXPLOSIVES" - ], - "QUARTZ_SAND": [ - "EXPLOSIVES" - ], - "SILICON_CRYSTALS": [ - "EXPLOSIVES" - ], - "IRON_ORE": [ - "EXPLOSIVES" - ], - "ALUMINUM_ORE": [ - "EXPLOSIVES" - ], - "SILVER_ORE": [ - "EXPLOSIVES" - ], - "COPPER_ORE": [ - "EXPLOSIVES" - ], - "PLATINUM_ORE": [ - "EXPLOSIVES" - ], - "GOLD_ORE": [ - "EXPLOSIVES" - ], - "URANITE_ORE": [ - "EXPLOSIVES" - ], - "MERITIUM_ORE": [ - "EXPLOSIVES" - ], - "DIAMONDS": [ - "EXPLOSIVES" - ], - "SHIP_SALVAGE": [ - "MACHINERY" - ], - "CULTURAL_ARTIFACTS": [ - "LAB_INSTRUMENTS" - ], - "PLASTICS": [ - "LIQUID_HYDROGEN" - ], - "FERTILIZERS": [ - "LIQUID_NITROGEN" - ], - "FUEL": [ - "HYDROCARBON" - ], - "IRON": [ - "IRON_ORE" - ], - "ALUMINUM": [ - "ALUMINUM_ORE" - ], - "POLYNUCLEOTIDES": [ - "LIQUID_HYDROGEN", - "LIQUID_NITROGEN" - ], - "EXPLOSIVES": [ - "LIQUID_HYDROGEN", - "LIQUID_NITROGEN" - ], - "COPPER": [ - "COPPER_ORE" - ], - "SILVER": [ - "SILVER_ORE" - ], - "PLATINUM": [ - "PLATINUM_ORE" - ], - "GOLD": [ - "GOLD_ORE" - ], - "URANITE": [ - "URANITE_ORE" - ], - "MERITIUM": [ - "MERITIUM_ORE" - ], - "AMMUNITION": [ - "IRON", - "LIQUID_NITROGEN" - ], - "FAB_MATS": [ - "IRON", - "QUARTZ_SAND" - ], - "FOOD": [ - "FERTILIZERS" - ], - "FABRICS": [ - "FERTILIZERS" - ], - "ELECTRONICS": [ - "SILICON_CRYSTALS", - "COPPER" - ], - "MACHINERY": [ - "IRON" - ], - "EQUIPMENT": [ - "ALUMINUM", - "PLASTICS" - ], - "JEWELRY": [ - "GOLD", - "SILVER", - "PRECIOUS_STONES", - "DIAMONDS" - ], - "MICROPROCESSORS": [ - "SILICON_CRYSTALS", - "COPPER" - ], - "FIREARMS": [ - "IRON", - "AMMUNITION" - ], - "ASSAULT_RIFLES": [ - "ALUMINUM", - "AMMUNITION" - ], - "CLOTHING": [ - "FABRICS" - ], - "SHIP_PLATING": [ - "ALUMINUM", - "MACHINERY" - ], - "SHIP_PARTS": [ - "EQUIPMENT", - "ELECTRONICS" - ], - "MEDICINE": [ - "FABRICS", - "POLYNUCLEOTIDES" - ], - "DRUGS": [ - "AMMONIA_ICE", - "POLYNUCLEOTIDES" - ], - "MILITARY_EQUIPMENT": [ - "ALUMINUM", - "ELECTRONICS" - ], - "LAB_INSTRUMENTS": [ - "ELECTRONICS", - "EQUIPMENT" - ], - "BIOCOMPOSITES": [ - "FABRICS", - "POLYNUCLEOTIDES" - ], - "ADVANCED_CIRCUITRY": [ - "ELECTRONICS", - "MICROPROCESSORS" - ], - "REACTOR_SOLAR_I": [ - "IRON", - "MACHINERY" - ], - "REACTOR_FUSION_I": [ - "IRON", - "MACHINERY" - ], - "REACTOR_FISSION_I": [ - "IRON", - "MACHINERY" - ], - "REACTOR_CHEMICAL_I": [ - "IRON", - "MACHINERY" - ], - "REACTOR_ANTIMATTER_I": [ - "IRON", - "MACHINERY" - ], - "ENGINE_IMPULSE_DRIVE_I": [ - "IRON", - "MACHINERY" - ], - "ENGINE_ION_DRIVE_I": [ - "IRON", - "MACHINERY" - ], - "MODULE_CARGO_HOLD_I": [ - "IRON", - "MACHINERY" - ], - "MODULE_CARGO_HOLD_II": [ - "ALUMINUM", - "MACHINERY" - ], - "MODULE_MINERAL_PROCESSOR_I": [ - "IRON", - "MACHINERY" - ], - "MODULE_GAS_PROCESSOR_I": [ - "IRON", - "MACHINERY" - ], - "MODULE_CREW_QUARTERS_I": [ - "IRON", - "MACHINERY", - "FABRICS" - ], - "MODULE_ENVOY_QUARTERS_I": [ - "IRON", - "MACHINERY", - "FABRICS" - ], - "MODULE_PASSENGER_CABIN_I": [ - "IRON", - "MACHINERY", - "FABRICS" - ], - "MODULE_SCIENCE_LAB_I": [ - "PLATINUM", - "MACHINERY", - "ADVANCED_CIRCUITRY" - ], - "MODULE_ORE_REFINERY_I": [ - "PLATINUM", - "MACHINERY" - ], - "MODULE_FUEL_REFINERY_I": [ - "PLATINUM", - "MACHINERY" - ], - "MODULE_MICRO_REFINERY_I": [ - "PLATINUM", - "MACHINERY" - ], - "MOUNT_GAS_SIPHON_I": [ - "IRON", - "MACHINERY" - ], - "MOUNT_GAS_SIPHON_II": [ - "ALUMINUM", - "MACHINERY" - ], - "MOUNT_SURVEYOR_I": [ - "IRON", - "MACHINERY", - "ELECTRONICS" - ], - "MOUNT_SURVEYOR_II": [ - "ALUMINUM", - "MACHINERY", - "ELECTRONICS" - ], - "MOUNT_SENSOR_ARRAY_I": [ - "IRON", - "MACHINERY", - "ELECTRONICS" - ], - "MOUNT_SENSOR_ARRAY_II": [ - "ALUMINUM", - "MACHINERY", - "ELECTRONICS" - ], - "MOUNT_MINING_LASER_I": [ - "IRON", - "MACHINERY", - "DIAMONDS" - ], - "MOUNT_MINING_LASER_II": [ - "ALUMINUM", - "MACHINERY", - "DIAMONDS" - ], - "MOUNT_TURRET_I": [ - "IRON", - "MACHINERY" - ], - "MOUNT_LASER_CANNON_I": [ - "IRON", - "MACHINERY", - "DIAMONDS" - ], - "MOUNT_MISSILE_LAUNCHER_I": [ - "IRON", - "MACHINERY" - ], - "QUANTUM_STABILIZERS": [ - "PLATINUM", - "ADVANCED_CIRCUITRY" - ], - "ANTIMATTER": [ - "LAB_INSTRUMENTS", - "ADVANCED_CIRCUITRY" - ], - "EXOTIC_MATTER": [ - "LAB_INSTRUMENTS", - "ADVANCED_CIRCUITRY" - ], - "RELIC_TECH": [ - "LAB_INSTRUMENTS", - "EQUIPMENT" - ], - "NOVEL_LIFEFORMS": [ - "LAB_INSTRUMENTS", - "EQUIPMENT" - ], - "BOTANICAL_SPECIMENS": [ - "LAB_INSTRUMENTS", - "EQUIPMENT" - ], - "AI_MAINFRAMES": [ - "ADVANCED_CIRCUITRY", - "MICROPROCESSORS" - ], - "QUANTUM_DRIVES": [ - "ADVANCED_CIRCUITRY", - "DIAMONDS" - ], - "GRAVITON_EMITTERS": [ - "ADVANCED_CIRCUITRY", - "GOLD" - ], - "ROBOTIC_DRONES": [ - "ADVANCED_CIRCUITRY", - "ALUMINUM" - ], - "CYBER_IMPLANTS": [ - "ADVANCED_CIRCUITRY", - "BIOCOMPOSITES" - ], - "NANOBOTS": [ - "POLYNUCLEOTIDES", - "LAB_INSTRUMENTS" - ], - "GENE_THERAPEUTICS": [ - "POLYNUCLEOTIDES", - "LAB_INSTRUMENTS" - ], - "NEURAL_CHIPS": [ - "POLYNUCLEOTIDES", - "ADVANCED_CIRCUITRY" - ], - "MOOD_REGULATORS": [ - "POLYNUCLEOTIDES", - "LAB_INSTRUMENTS" - ], - "VIRAL_AGENTS": [ - "POLYNUCLEOTIDES", - "LAB_INSTRUMENTS" - ], - "MICRO_FUSION_GENERATORS": [ - "ADVANCED_CIRCUITRY", - "PLATINUM", - "DIAMONDS" - ], - "SUPERGRAINS": [ - "FERTILIZERS", - "POLYNUCLEOTIDES", - "LAB_INSTRUMENTS" - ], - "LASER_RIFLES": [ - "DIAMONDS", - "PLATINUM", - "ADVANCED_CIRCUITRY" - ], - "HOLOGRAPHICS": [ - "GOLD", - "SILVER", - "ADVANCED_CIRCUITRY" - ], - "ENGINE_ION_DRIVE_II": [ - "PLATINUM", - "ADVANCED_CIRCUITRY" - ], - "ENGINE_HYPER_DRIVE_I": [ - "PLATINUM", - "ADVANCED_CIRCUITRY" - ], - "MODULE_CARGO_HOLD_III": [ - "PLATINUM", - "MACHINERY", - "ADVANCED_CIRCUITRY" - ], - "MODULE_JUMP_DRIVE_I": [ - "IRON", - "ADVANCED_CIRCUITRY" - ], - "MODULE_JUMP_DRIVE_II": [ - "PLATINUM", - "ADVANCED_CIRCUITRY", - "GOLD" - ], - "MODULE_JUMP_DRIVE_III": [ - "PLATINUM", - "ADVANCED_CIRCUITRY", - "GOLD", - "MERITIUM" - ], - "MODULE_WARP_DRIVE_I": [ - "IRON", - "ADVANCED_CIRCUITRY" - ], - "MODULE_WARP_DRIVE_II": [ - "PLATINUM", - "ADVANCED_CIRCUITRY", - "URANITE" - ], - "MODULE_WARP_DRIVE_III": [ - "PLATINUM", - "ADVANCED_CIRCUITRY", - "MERITIUM", - "MERITIUM" - ], - "MOUNT_GAS_SIPHON_III": [ - "PLATINUM", - "MACHINERY", - "ADVANCED_CIRCUITRY" - ], - "MODULE_SHIELD_GENERATOR_I": [ - "IRON", - "MACHINERY", - "URANITE" - ], - "MODULE_SHIELD_GENERATOR_II": [ - "ALUMINUM", - "MACHINERY", - "URANITE" - ], - "MOUNT_SURVEYOR_III": [ - "PLATINUM", - "MACHINERY", - "ADVANCED_CIRCUITRY" - ], - "MOUNT_SENSOR_ARRAY_III": [ - "PLATINUM", - "MACHINERY", - "ADVANCED_CIRCUITRY", - "URANITE" - ], - "MOUNT_MINING_LASER_III": [ - "PLATINUM", - "MACHINERY", - "ADVANCED_CIRCUITRY", - "URANITE" - ], - "SHIP_PROBE": [ - "SHIP_PLATING", - "SHIP_PARTS" - ], - "SHIP_MINING_DRONE": [ - "SHIP_PLATING", - "SHIP_PARTS" - ], - "SHIP_SIPHON_DRONE": [ - "SHIP_PLATING", - "SHIP_PARTS" - ], - "SHIP_LIGHT_HAULER": [ - "SHIP_PLATING", - "SHIP_PARTS" - ], - "SHIP_COMMAND_FRIGATE": [ - "SHIP_PLATING", - "SHIP_PARTS" - ], - "SHIP_INTERCEPTOR": [ - "SHIP_PLATING", - "SHIP_PARTS" - ], - "SHIP_EXPLORER": [ - "SHIP_PLATING", - "SHIP_PARTS" - ], - "SHIP_LIGHT_SHUTTLE": [ - "SHIP_PLATING", - "SHIP_PARTS" - ], - "SHIP_HEAVY_FREIGHTER": [ - "SHIP_PLATING", - "SHIP_PARTS" - ], - "SHIP_ORE_HOUND": [ - "SHIP_PLATING", - "SHIP_PARTS" - ], - "SHIP_REFINING_FREIGHTER": [ - "SHIP_PLATING", - "SHIP_PARTS" - ], - "SHIP_SURVEYOR": [ - "SHIP_PLATING", - "SHIP_PARTS" ] } } } + }, + "properties": { + "data": { + "type": "object", + "properties": { + "exportToImportMap": { + "type": "object", + "properties": { + "string": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "required": [ + "exportToImportMap" + ] + } + }, + "required": [ + "data" + ] + } + }, + "application/xml": { + "schema": { + "type": "object", + "properties": {} } - } - }, - "application/xml": { - "schema": { - "type": "object", - "properties": {} } } } - } + }, + "tags": [ + "Data" + ], + "security": [ + { + "AgentToken": [] + } + ] }, - "tags": [ - "Data" - ], - "security": [ - { - "AgentToken": [] - } - ] - }, - "parameters": [] + "parameters": [] + } } - } -} \ No newline at end of file + } \ No newline at end of file From ce9d51832da9765f5d536f3d5d7ed1427815df47 Mon Sep 17 00:00:00 2001 From: Bart Riepe Date: Fri, 28 Feb 2025 01:00:11 +0900 Subject: [PATCH 2/6] feat: add module endpoints and other changes --- .spectral.mjs | 2 +- .stoplight.json | 10 +- models/ActivityLevel.json | 7 +- models/Agent.json | 8 +- models/Chart.json | 2 +- models/ConnectedSystem.json | 11 +- models/Construction.json | 8 +- models/ConstructionMaterial.json | 8 +- models/Contract.json | 18 +- models/ContractDeliverGood.json | 9 +- models/ContractPayment.json | 7 +- models/ContractTerms.json | 7 +- models/Cooldown.json | 8 +- models/Extraction.json | 7 +- models/ExtractionYield.json | 7 +- models/Faction.json | 10 +- models/FactionSymbol.json | 2 +- models/FactionTrait.json | 8 +- models/FactionTraitSymbol.json | 128 +- models/JumpGate.json | 7 +- models/Market.json | 9 +- models/MarketTradeGood.json | 17 +- models/MarketTransaction.json | 7 +- models/Meta.json | 8 +- models/RepairTransaction.json | 9 +- models/ScannedShip.json | 25 +- models/ScannedSystem.json | 11 +- models/ScannedWaypoint.json | 12 +- models/ScrapTransaction.json | 9 +- models/Ship.json | 2 +- models/ShipCargo.json | 8 +- models/ShipCargoItem.json | 9 +- models/ShipComponentCondition.json | 2 +- models/ShipComponentIntegrity.json | 2 +- models/ShipComponentQuality.json | 2 +- models/ShipConditionEvent.json | 15 +- models/ShipCrew.json | 16 +- models/ShipEngine.json | 20 +- models/ShipFrame.json | 2 +- models/ShipFuel.json | 12 +- models/ShipModificationTransaction.json | 10 +- models/ShipMount.json | 8 +- models/ShipNav.json | 10 +- models/ShipNavFlightMode.json | 9 +- models/ShipNavRoute.json | 10 +- models/ShipNavRouteWaypoint.json | 10 +- models/ShipNavRouteWaypointDeprecated.json | 10 +- models/ShipNavStatus.json | 8 +- models/ShipReactor.json | 13 +- models/ShipRegistration.json | 8 +- models/ShipRequirements.json | 2 +- models/ShipRole.json | 2 +- models/ShipType.json | 2 +- models/Shipyard.json | 12 +- models/ShipyardShip.json | 7 +- models/ShipyardTransaction.json | 11 +- models/Siphon.json | 7 +- models/SiphonYield.json | 7 +- models/SupplyLevel.json | 10 +- models/Survey.json | 16 +- models/SurveyDeposit.json | 6 +- models/System.json | 12 +- models/SystemFaction.json | 6 +- models/SystemSymbol.json | 2 +- models/SystemWaypoint.json | 10 +- models/TradeGood.json | 8 +- models/TradeSymbol.json | 2 +- models/Waypoint.json | 13 +- models/WaypointFaction.json | 6 +- models/WaypointModifier.json | 8 +- models/WaypointModifierSymbol.json | 14 +- models/WaypointOrbital.json | 6 +- models/WaypointSymbol.json | 2 +- models/WaypointTrait.json | 8 +- models/WaypointTraitSymbol.json | 148 +- models/WaypointType.json | 2 +- reference/SpaceTraders.json | 2507 +++++++++++--------- 77 files changed, 1675 insertions(+), 1728 deletions(-) diff --git a/.spectral.mjs b/.spectral.mjs index cca9041..76757b2 100644 --- a/.spectral.mjs +++ b/.spectral.mjs @@ -1,2 +1,2 @@ import ruleset from "https://stoplight.io/api/v1/projects/cHJqOjE3NTU4OQ/spectral.js?branch=main&token=e4f4ffbe-f8ad-4829-b09f-cf2703afac49"; -export default { extends: ruleset }; +export default {extends: ruleset}; diff --git a/.stoplight.json b/.stoplight.json index 8359748..9bbb609 100644 --- a/.stoplight.json +++ b/.stoplight.json @@ -3,15 +3,11 @@ "formats": { "openapi": { "rootDir": "reference", - "include": [ - "**" - ] + "include": ["**"] }, "json_schema": { "rootDir": "models", - "include": [ - "**" - ] + "include": ["**"] }, "markdown": { "rootDir": "docs" @@ -20,4 +16,4 @@ "rootDir": "assets/images" } } -} \ No newline at end of file +} diff --git a/models/ActivityLevel.json b/models/ActivityLevel.json index c1495d0..7794c40 100644 --- a/models/ActivityLevel.json +++ b/models/ActivityLevel.json @@ -1,12 +1,7 @@ { "type": "string", "description": "The activity level of a trade good. If the good is an import, this represents how strong consumption is. If the good is an export, this represents how strong the production is for the good. When activity is strong, consumption or production is near maximum capacity. When activity is weak, consumption or production is near minimum capacity.", - "enum": [ - "WEAK", - "GROWING", - "STRONG", - "RESTRICTED" - ], + "enum": ["WEAK", "GROWING", "STRONG", "RESTRICTED"], "x-enumDescriptions": { "WEAK": "Indicates very low production or consumption activity. This may suggest a surplus in supply or a lack of demand.", "GROWING": "Represents increasing activity in production or consumption, suggesting a developing market.", diff --git a/models/Agent.json b/models/Agent.json index fb0dee4..15a96e4 100644 --- a/models/Agent.json +++ b/models/Agent.json @@ -33,11 +33,5 @@ "description": "How many ships are owned by the agent." } }, - "required": [ - "symbol", - "headquarters", - "credits", - "startingFaction", - "shipCount" - ] + "required": ["symbol", "headquarters", "credits", "startingFaction", "shipCount"] } diff --git a/models/Chart.json b/models/Chart.json index 35b116a..8b821a6 100644 --- a/models/Chart.json +++ b/models/Chart.json @@ -15,4 +15,4 @@ "description": "The time the chart for this waypoint was submitted." } } -} \ No newline at end of file +} diff --git a/models/ConnectedSystem.json b/models/ConnectedSystem.json index 82ac42a..d90ff88 100644 --- a/models/ConnectedSystem.json +++ b/models/ConnectedSystem.json @@ -31,12 +31,5 @@ "description": "The distance of this system to the connected Jump Gate." } }, - "required": [ - "symbol", - "sectorSymbol", - "type", - "x", - "y", - "distance" - ] -} \ No newline at end of file + "required": ["symbol", "sectorSymbol", "type", "x", "y", "distance"] +} diff --git a/models/Construction.json b/models/Construction.json index 73972cd..a0a2370 100644 --- a/models/Construction.json +++ b/models/Construction.json @@ -18,9 +18,5 @@ "description": "Whether the waypoint has been constructed." } }, - "required": [ - "symbol", - "materials", - "isComplete" - ] -} \ No newline at end of file + "required": ["symbol", "materials", "isComplete"] +} diff --git a/models/ConstructionMaterial.json b/models/ConstructionMaterial.json index fc9e9ca..73718d1 100644 --- a/models/ConstructionMaterial.json +++ b/models/ConstructionMaterial.json @@ -14,9 +14,5 @@ "description": "The number of units fulfilled toward the required amount." } }, - "required": [ - "tradeSymbol", - "required", - "fulfilled" - ] -} \ No newline at end of file + "required": ["tradeSymbol", "required", "fulfilled"] +} diff --git a/models/Contract.json b/models/Contract.json index 7c20521..09c68f2 100644 --- a/models/Contract.json +++ b/models/Contract.json @@ -14,11 +14,7 @@ }, "type": { "type": "string", - "enum": [ - "PROCUREMENT", - "TRANSPORT", - "SHUTTLE" - ], + "enum": ["PROCUREMENT", "TRANSPORT", "SHUTTLE"], "description": "Type of contract." }, "terms": { @@ -46,13 +42,5 @@ "description": "The time at which the contract is no longer available to be accepted" } }, - "required": [ - "id", - "factionSymbol", - "type", - "terms", - "accepted", - "fulfilled", - "expiration" - ] -} \ No newline at end of file + "required": ["id", "factionSymbol", "type", "terms", "accepted", "fulfilled", "expiration"] +} diff --git a/models/ContractDeliverGood.json b/models/ContractDeliverGood.json index 02e1377..d3ff408 100644 --- a/models/ContractDeliverGood.json +++ b/models/ContractDeliverGood.json @@ -21,10 +21,5 @@ "description": "The number of units fulfilled on this contract." } }, - "required": [ - "tradeSymbol", - "destinationSymbol", - "unitsRequired", - "unitsFulfilled" - ] -} \ No newline at end of file + "required": ["tradeSymbol", "destinationSymbol", "unitsRequired", "unitsFulfilled"] +} diff --git a/models/ContractPayment.json b/models/ContractPayment.json index 2146492..bd01140 100644 --- a/models/ContractPayment.json +++ b/models/ContractPayment.json @@ -11,8 +11,5 @@ "description": "The amount of credits received when the contract is fulfilled." } }, - "required": [ - "onAccepted", - "onFulfilled" - ] -} \ No newline at end of file + "required": ["onAccepted", "onFulfilled"] +} diff --git a/models/ContractTerms.json b/models/ContractTerms.json index f7d37cb..7b9efc4 100644 --- a/models/ContractTerms.json +++ b/models/ContractTerms.json @@ -18,8 +18,5 @@ } } }, - "required": [ - "deadline", - "payment" - ] -} \ No newline at end of file + "required": ["deadline", "payment"] +} diff --git a/models/Cooldown.json b/models/Cooldown.json index f32fc9d..80adfa2 100644 --- a/models/Cooldown.json +++ b/models/Cooldown.json @@ -23,9 +23,5 @@ "description": "The date and time when the cooldown expires in ISO 8601 format" } }, - "required": [ - "shipSymbol", - "totalSeconds", - "remainingSeconds" - ] -} \ No newline at end of file + "required": ["shipSymbol", "totalSeconds", "remainingSeconds"] +} diff --git a/models/Extraction.json b/models/Extraction.json index d82a142..c54a003 100644 --- a/models/Extraction.json +++ b/models/Extraction.json @@ -11,8 +11,5 @@ "$ref": "./ExtractionYield.json" } }, - "required": [ - "shipSymbol", - "yield" - ] -} \ No newline at end of file + "required": ["shipSymbol", "yield"] +} diff --git a/models/ExtractionYield.json b/models/ExtractionYield.json index e52e4f8..d5dc3fb 100644 --- a/models/ExtractionYield.json +++ b/models/ExtractionYield.json @@ -10,8 +10,5 @@ "description": "The number of units extracted that were placed into the ship's cargo hold." } }, - "required": [ - "symbol", - "units" - ] -} \ No newline at end of file + "required": ["symbol", "units"] +} diff --git a/models/Faction.json b/models/Faction.json index 89f5545..a5836a8 100644 --- a/models/Faction.json +++ b/models/Faction.json @@ -32,11 +32,5 @@ "description": "Whether or not the faction is currently recruiting new agents." } }, - "required": [ - "symbol", - "name", - "description", - "traits", - "isRecruiting" - ] -} \ No newline at end of file + "required": ["symbol", "name", "description", "traits", "isRecruiting"] +} diff --git a/models/FactionSymbol.json b/models/FactionSymbol.json index deb7ec1..155c15d 100644 --- a/models/FactionSymbol.json +++ b/models/FactionSymbol.json @@ -23,4 +23,4 @@ "SHADOW", "ETHEREAL" ] -} \ No newline at end of file +} diff --git a/models/FactionTrait.json b/models/FactionTrait.json index 96da583..707eb76 100644 --- a/models/FactionTrait.json +++ b/models/FactionTrait.json @@ -13,9 +13,5 @@ "description": "A description of the trait." } }, - "required": [ - "symbol", - "name", - "description" - ] -} \ No newline at end of file + "required": ["symbol", "name", "description"] +} diff --git a/models/FactionTraitSymbol.json b/models/FactionTraitSymbol.json index 2d33324..c419bb0 100644 --- a/models/FactionTraitSymbol.json +++ b/models/FactionTraitSymbol.json @@ -1,65 +1,65 @@ { - "type": "string", - "description": "The unique identifier of the trait.", - "enum": [ - "BUREAUCRATIC", - "SECRETIVE", - "CAPITALISTIC", - "INDUSTRIOUS", - "PEACEFUL", - "DISTRUSTFUL", - "WELCOMING", - "SMUGGLERS", - "SCAVENGERS", - "REBELLIOUS", - "EXILES", - "PIRATES", - "RAIDERS", - "CLAN", - "GUILD", - "DOMINION", - "FRINGE", - "FORSAKEN", - "ISOLATED", - "LOCALIZED", - "ESTABLISHED", - "NOTABLE", - "DOMINANT", - "INESCAPABLE", - "INNOVATIVE", - "BOLD", - "VISIONARY", - "CURIOUS", - "DARING", - "EXPLORATORY", - "RESOURCEFUL", - "FLEXIBLE", - "COOPERATIVE", - "UNITED", - "STRATEGIC", - "INTELLIGENT", - "RESEARCH_FOCUSED", - "COLLABORATIVE", - "PROGRESSIVE", - "MILITARISTIC", - "TECHNOLOGICALLY_ADVANCED", - "AGGRESSIVE", - "IMPERIALISTIC", - "TREASURE_HUNTERS", - "DEXTEROUS", - "UNPREDICTABLE", - "BRUTAL", - "FLEETING", - "ADAPTABLE", - "SELF_SUFFICIENT", - "DEFENSIVE", - "PROUD", - "DIVERSE", - "INDEPENDENT", - "SELF_INTERESTED", - "FRAGMENTED", - "COMMERCIAL", - "FREE_MARKETS", - "ENTREPRENEURIAL" - ] -} \ No newline at end of file + "type": "string", + "description": "The unique identifier of the trait.", + "enum": [ + "BUREAUCRATIC", + "SECRETIVE", + "CAPITALISTIC", + "INDUSTRIOUS", + "PEACEFUL", + "DISTRUSTFUL", + "WELCOMING", + "SMUGGLERS", + "SCAVENGERS", + "REBELLIOUS", + "EXILES", + "PIRATES", + "RAIDERS", + "CLAN", + "GUILD", + "DOMINION", + "FRINGE", + "FORSAKEN", + "ISOLATED", + "LOCALIZED", + "ESTABLISHED", + "NOTABLE", + "DOMINANT", + "INESCAPABLE", + "INNOVATIVE", + "BOLD", + "VISIONARY", + "CURIOUS", + "DARING", + "EXPLORATORY", + "RESOURCEFUL", + "FLEXIBLE", + "COOPERATIVE", + "UNITED", + "STRATEGIC", + "INTELLIGENT", + "RESEARCH_FOCUSED", + "COLLABORATIVE", + "PROGRESSIVE", + "MILITARISTIC", + "TECHNOLOGICALLY_ADVANCED", + "AGGRESSIVE", + "IMPERIALISTIC", + "TREASURE_HUNTERS", + "DEXTEROUS", + "UNPREDICTABLE", + "BRUTAL", + "FLEETING", + "ADAPTABLE", + "SELF_SUFFICIENT", + "DEFENSIVE", + "PROUD", + "DIVERSE", + "INDEPENDENT", + "SELF_INTERESTED", + "FRAGMENTED", + "COMMERCIAL", + "FREE_MARKETS", + "ENTREPRENEURIAL" + ] +} diff --git a/models/JumpGate.json b/models/JumpGate.json index 2b378a5..e333afd 100644 --- a/models/JumpGate.json +++ b/models/JumpGate.json @@ -14,8 +14,5 @@ } } }, - "required": [ - "symbol", - "connections" - ] -} \ No newline at end of file + "required": ["symbol", "connections"] +} diff --git a/models/Market.json b/models/Market.json index e1a97e8..e6fbd12 100644 --- a/models/Market.json +++ b/models/Market.json @@ -42,10 +42,5 @@ } } }, - "required": [ - "symbol", - "exports", - "imports", - "exchange" - ] -} \ No newline at end of file + "required": ["symbol", "exports", "imports", "exchange"] +} diff --git a/models/MarketTradeGood.json b/models/MarketTradeGood.json index 2f085ad..4121125 100644 --- a/models/MarketTradeGood.json +++ b/models/MarketTradeGood.json @@ -7,11 +7,7 @@ "type": { "type": "string", "description": "The type of trade good (export, import, or exchange).", - "enum": [ - "EXPORT", - "IMPORT", - "EXCHANGE" - ] + "enum": ["EXPORT", "IMPORT", "EXCHANGE"] }, "tradeVolume": { "type": "integer", @@ -35,12 +31,5 @@ "minimum": 0 } }, - "required": [ - "symbol", - "type", - "tradeVolume", - "supply", - "purchasePrice", - "sellPrice" - ] -} \ No newline at end of file + "required": ["symbol", "type", "tradeVolume", "supply", "purchasePrice", "sellPrice"] +} diff --git a/models/MarketTransaction.json b/models/MarketTransaction.json index b6216eb..061e073 100644 --- a/models/MarketTransaction.json +++ b/models/MarketTransaction.json @@ -15,10 +15,7 @@ "type": { "type": "string", "description": "The type of transaction.", - "enum": [ - "PURCHASE", - "SELL" - ] + "enum": ["PURCHASE", "SELL"] }, "units": { "type": "integer", @@ -52,4 +49,4 @@ "timestamp" ], "description": "Result of a transaction with a market." -} \ No newline at end of file +} diff --git a/models/Meta.json b/models/Meta.json index 7d8221e..794f94a 100644 --- a/models/Meta.json +++ b/models/Meta.json @@ -28,9 +28,5 @@ "maximum": 20 } }, - "required": [ - "total", - "page", - "limit" - ] -} \ No newline at end of file + "required": ["total", "page", "limit"] +} diff --git a/models/RepairTransaction.json b/models/RepairTransaction.json index bae8d3a..61559f5 100644 --- a/models/RepairTransaction.json +++ b/models/RepairTransaction.json @@ -19,11 +19,6 @@ "description": "The timestamp of the transaction." } }, - "required": [ - "waypointSymbol", - "shipSymbol", - "totalPrice", - "timestamp" - ], + "required": ["waypointSymbol", "shipSymbol", "totalPrice", "timestamp"], "description": "Result of a repair transaction." -} \ No newline at end of file +} diff --git a/models/ScannedShip.json b/models/ScannedShip.json index 3d31172..d37fab3 100644 --- a/models/ScannedShip.json +++ b/models/ScannedShip.json @@ -21,9 +21,7 @@ "description": "The symbol of the frame." } }, - "required": [ - "symbol" - ] + "required": ["symbol"] }, "reactor": { "type": "object", @@ -34,16 +32,12 @@ "description": "The symbol of the reactor." } }, - "required": [ - "symbol" - ] + "required": ["symbol"] }, "engine": { "type": "object", "description": "The engine of the ship.", - "required": [ - "symbol" - ], + "required": ["symbol"], "properties": { "symbol": { "type": "string", @@ -63,16 +57,9 @@ "description": "The symbol of the mount." } }, - "required": [ - "symbol" - ] + "required": ["symbol"] } } }, - "required": [ - "symbol", - "registration", - "nav", - "engine" - ] -} \ No newline at end of file + "required": ["symbol", "registration", "nav", "engine"] +} diff --git a/models/ScannedSystem.json b/models/ScannedSystem.json index c7c848d..f144d4a 100644 --- a/models/ScannedSystem.json +++ b/models/ScannedSystem.json @@ -28,12 +28,5 @@ "description": "The system's distance from the scanning ship." } }, - "required": [ - "symbol", - "sectorSymbol", - "type", - "x", - "y", - "distance" - ] -} \ No newline at end of file + "required": ["symbol", "sectorSymbol", "type", "x", "y", "distance"] +} diff --git a/models/ScannedWaypoint.json b/models/ScannedWaypoint.json index 96ac311..f87a298 100644 --- a/models/ScannedWaypoint.json +++ b/models/ScannedWaypoint.json @@ -40,13 +40,5 @@ "$ref": "./Chart.json" } }, - "required": [ - "symbol", - "type", - "systemSymbol", - "x", - "y", - "orbitals", - "traits" - ] -} \ No newline at end of file + "required": ["symbol", "type", "systemSymbol", "x", "y", "orbitals", "traits"] +} diff --git a/models/ScrapTransaction.json b/models/ScrapTransaction.json index e33dd17..5ebb28d 100644 --- a/models/ScrapTransaction.json +++ b/models/ScrapTransaction.json @@ -19,11 +19,6 @@ "description": "The timestamp of the transaction." } }, - "required": [ - "waypointSymbol", - "shipSymbol", - "totalPrice", - "timestamp" - ], + "required": ["waypointSymbol", "shipSymbol", "totalPrice", "timestamp"], "description": "Result of a scrap transaction." -} \ No newline at end of file +} diff --git a/models/Ship.json b/models/Ship.json index 12dee30..afb1116 100644 --- a/models/Ship.json +++ b/models/Ship.json @@ -62,4 +62,4 @@ "fuel", "cooldown" ] -} \ No newline at end of file +} diff --git a/models/ShipCargo.json b/models/ShipCargo.json index 68d1f23..6475b05 100644 --- a/models/ShipCargo.json +++ b/models/ShipCargo.json @@ -19,10 +19,6 @@ } } }, - "required": [ - "capacity", - "units", - "inventory" - ], + "required": ["capacity", "units", "inventory"], "description": "Ship cargo details." -} \ No newline at end of file +} diff --git a/models/ShipCargoItem.json b/models/ShipCargoItem.json index af37796..979f160 100644 --- a/models/ShipCargoItem.json +++ b/models/ShipCargoItem.json @@ -19,10 +19,5 @@ "minimum": 1 } }, - "required": [ - "symbol", - "name", - "description", - "units" - ] -} \ No newline at end of file + "required": ["symbol", "name", "description", "units"] +} diff --git a/models/ShipComponentCondition.json b/models/ShipComponentCondition.json index e7bee25..15df838 100644 --- a/models/ShipComponentCondition.json +++ b/models/ShipComponentCondition.json @@ -4,4 +4,4 @@ "description": "The repairable condition of a component. A value of 0 indicates the component needs significant repairs, while a value of 1 indicates the component is in near perfect condition. As the condition of a component is repaired, the overall integrity of the component decreases.", "minimum": 0, "maximum": 1 -} \ No newline at end of file +} diff --git a/models/ShipComponentIntegrity.json b/models/ShipComponentIntegrity.json index 18f74e3..aefa001 100644 --- a/models/ShipComponentIntegrity.json +++ b/models/ShipComponentIntegrity.json @@ -4,4 +4,4 @@ "description": "The overall integrity of the component, which determines the performance of the component. A value of 0 indicates that the component is almost completely degraded, while a value of 1 indicates that the component is in near perfect condition. The integrity of the component is non-repairable, and represents permanent wear over time.", "minimum": 0, "maximum": 1 -} \ No newline at end of file +} diff --git a/models/ShipComponentQuality.json b/models/ShipComponentQuality.json index cc2a592..8b44860 100644 --- a/models/ShipComponentQuality.json +++ b/models/ShipComponentQuality.json @@ -2,4 +2,4 @@ "type": "number", "format": "integer", "description": "The overall quality of the component, which determines the quality of the component. High quality components return more ships parts and ship plating when a ship is scrapped. But also require more of these parts to repair. This is transparent to the player, as the parts are bought from/sold to the marketplace." -} \ No newline at end of file +} diff --git a/models/ShipConditionEvent.json b/models/ShipConditionEvent.json index 33f6a53..7771c00 100644 --- a/models/ShipConditionEvent.json +++ b/models/ShipConditionEvent.json @@ -36,11 +36,7 @@ }, "component": { "type": "string", - "enum": [ - "FRAME", - "REACTOR", - "ENGINE" - ] + "enum": ["FRAME", "REACTOR", "ENGINE"] }, "name": { "type": "string", @@ -51,10 +47,5 @@ "description": "A description of the event." } }, - "required": [ - "symbol", - "component", - "name", - "description" - ] -} \ No newline at end of file + "required": ["symbol", "component", "name", "description"] +} diff --git a/models/ShipCrew.json b/models/ShipCrew.json index 16ad2d5..4c52ffa 100644 --- a/models/ShipCrew.json +++ b/models/ShipCrew.json @@ -17,10 +17,7 @@ "rotation": { "type": "string", "description": "The rotation of crew shifts. A stricter shift improves the ship's performance. A more relaxed shift improves the crew's morale.", - "enum": [ - "STRICT", - "RELAXED" - ], + "enum": ["STRICT", "RELAXED"], "default": "STRICT" }, "morale": { @@ -35,12 +32,5 @@ "minimum": 0 } }, - "required": [ - "current", - "required", - "capacity", - "rotation", - "morale", - "wages" - ] -} \ No newline at end of file + "required": ["current", "required", "capacity", "rotation", "morale", "wages"] +} diff --git a/models/ShipEngine.json b/models/ShipEngine.json index 3ea267a..53df2fc 100644 --- a/models/ShipEngine.json +++ b/models/ShipEngine.json @@ -4,12 +4,7 @@ "properties": { "symbol": { "type": "string", - "enum": [ - "ENGINE_IMPULSE_DRIVE_I", - "ENGINE_ION_DRIVE_I", - "ENGINE_ION_DRIVE_II", - "ENGINE_HYPER_DRIVE_I" - ], + "enum": ["ENGINE_IMPULSE_DRIVE_I", "ENGINE_ION_DRIVE_I", "ENGINE_ION_DRIVE_II", "ENGINE_HYPER_DRIVE_I"], "description": "The symbol of the engine." }, "name": { @@ -38,14 +33,5 @@ "$ref": "./ShipComponentQuality.json" } }, - "required": [ - "symbol", - "name", - "condition", - "integrity", - "description", - "speed", - "requirements", - "quality" - ] -} \ No newline at end of file + "required": ["symbol", "name", "condition", "integrity", "description", "speed", "requirements", "quality"] +} diff --git a/models/ShipFrame.json b/models/ShipFrame.json index 26826c2..52abe0e 100644 --- a/models/ShipFrame.json +++ b/models/ShipFrame.json @@ -71,4 +71,4 @@ "requirements", "quality" ] -} \ No newline at end of file +} diff --git a/models/ShipFuel.json b/models/ShipFuel.json index 0177d03..e889b6d 100644 --- a/models/ShipFuel.json +++ b/models/ShipFuel.json @@ -27,14 +27,8 @@ "description": "The time at which the fuel was consumed." } }, - "required": [ - "amount", - "timestamp" - ] + "required": ["amount", "timestamp"] } }, - "required": [ - "current", - "capacity" - ] -} \ No newline at end of file + "required": ["current", "capacity"] +} diff --git a/models/ShipModificationTransaction.json b/models/ShipModificationTransaction.json index eb1e504..7627bf9 100644 --- a/models/ShipModificationTransaction.json +++ b/models/ShipModificationTransaction.json @@ -24,12 +24,6 @@ "description": "The timestamp of the transaction." } }, - "required": [ - "waypointSymbol", - "shipSymbol", - "tradeSymbol", - "totalPrice", - "timestamp" - ], + "required": ["waypointSymbol", "shipSymbol", "tradeSymbol", "totalPrice", "timestamp"], "description": "Result of a transaction for a ship modification, such as installing a mount or a module." -} \ No newline at end of file +} diff --git a/models/ShipMount.json b/models/ShipMount.json index 50424d5..bdb3110 100644 --- a/models/ShipMount.json +++ b/models/ShipMount.json @@ -63,9 +63,5 @@ "$ref": "./ShipRequirements.json" } }, - "required": [ - "symbol", - "name", - "requirements" - ] -} \ No newline at end of file + "required": ["symbol", "name", "requirements"] +} diff --git a/models/ShipNav.json b/models/ShipNav.json index d8e5bcd..f6327e7 100644 --- a/models/ShipNav.json +++ b/models/ShipNav.json @@ -18,11 +18,5 @@ "$ref": "./ShipNavFlightMode.json" } }, - "required": [ - "systemSymbol", - "waypointSymbol", - "route", - "status", - "flightMode" - ] -} \ No newline at end of file + "required": ["systemSymbol", "waypointSymbol", "route", "status", "flightMode"] +} diff --git a/models/ShipNavFlightMode.json b/models/ShipNavFlightMode.json index 39dee56..ecefe2c 100644 --- a/models/ShipNavFlightMode.json +++ b/models/ShipNavFlightMode.json @@ -1,11 +1,6 @@ { "type": "string", "description": "The ship's set speed when traveling between waypoints or systems.", - "enum": [ - "DRIFT", - "STEALTH", - "CRUISE", - "BURN" - ], + "enum": ["DRIFT", "STEALTH", "CRUISE", "BURN"], "default": "CRUISE" -} \ No newline at end of file +} diff --git a/models/ShipNavRoute.json b/models/ShipNavRoute.json index c5d074b..f32fcc6 100644 --- a/models/ShipNavRoute.json +++ b/models/ShipNavRoute.json @@ -19,11 +19,5 @@ "description": "The date time of the ship's arrival. If the ship is in-transit, this is the expected time of arrival." } }, - "required": [ - "destination", - "departure", - "origin", - "departureTime", - "arrival" - ] -} \ No newline at end of file + "required": ["destination", "departure", "origin", "departureTime", "arrival"] +} diff --git a/models/ShipNavRouteWaypoint.json b/models/ShipNavRouteWaypoint.json index 431f41d..a3f8d83 100644 --- a/models/ShipNavRouteWaypoint.json +++ b/models/ShipNavRouteWaypoint.json @@ -22,11 +22,5 @@ "description": "Position in the universe in the y axis." } }, - "required": [ - "symbol", - "type", - "systemSymbol", - "x", - "y" - ] -} \ No newline at end of file + "required": ["symbol", "type", "systemSymbol", "x", "y"] +} diff --git a/models/ShipNavRouteWaypointDeprecated.json b/models/ShipNavRouteWaypointDeprecated.json index 654fee7..c1d7bcd 100644 --- a/models/ShipNavRouteWaypointDeprecated.json +++ b/models/ShipNavRouteWaypointDeprecated.json @@ -23,11 +23,5 @@ "description": "Position in the universe in the y axis." } }, - "required": [ - "symbol", - "type", - "systemSymbol", - "x", - "y" - ] -} \ No newline at end of file + "required": ["symbol", "type", "systemSymbol", "x", "y"] +} diff --git a/models/ShipNavStatus.json b/models/ShipNavStatus.json index 26768f0..2a7cda6 100644 --- a/models/ShipNavStatus.json +++ b/models/ShipNavStatus.json @@ -1,9 +1,5 @@ { "type": "string", "description": "The current status of the ship", - "enum": [ - "IN_TRANSIT", - "IN_ORBIT", - "DOCKED" - ] -} \ No newline at end of file + "enum": ["IN_TRANSIT", "IN_ORBIT", "DOCKED"] +} diff --git a/models/ShipReactor.json b/models/ShipReactor.json index 83f7e16..b5c0e59 100644 --- a/models/ShipReactor.json +++ b/models/ShipReactor.json @@ -39,14 +39,5 @@ "$ref": "./ShipComponentQuality.json" } }, - "required": [ - "symbol", - "name", - "condition", - "integrity", - "description", - "powerOutput", - "requirements", - "quality" - ] -} \ No newline at end of file + "required": ["symbol", "name", "condition", "integrity", "description", "powerOutput", "requirements", "quality"] +} diff --git a/models/ShipRegistration.json b/models/ShipRegistration.json index 144ccb1..72284db 100644 --- a/models/ShipRegistration.json +++ b/models/ShipRegistration.json @@ -16,9 +16,5 @@ "$ref": "./ShipRole.json" } }, - "required": [ - "name", - "factionSymbol", - "role" - ] -} \ No newline at end of file + "required": ["name", "factionSymbol", "role"] +} diff --git a/models/ShipRequirements.json b/models/ShipRequirements.json index 2510319..167940d 100644 --- a/models/ShipRequirements.json +++ b/models/ShipRequirements.json @@ -15,4 +15,4 @@ "description": "The number of module slots required for installation." } } -} \ No newline at end of file +} diff --git a/models/ShipRole.json b/models/ShipRole.json index d6c3bb6..b674c00 100644 --- a/models/ShipRole.json +++ b/models/ShipRole.json @@ -17,4 +17,4 @@ "EXPLORER", "REFINERY" ] -} \ No newline at end of file +} diff --git a/models/ShipType.json b/models/ShipType.json index 8eb689f..ab8cb44 100644 --- a/models/ShipType.json +++ b/models/ShipType.json @@ -15,4 +15,4 @@ "SHIP_REFINING_FREIGHTER", "SHIP_SURVEYOR" ] -} \ No newline at end of file +} diff --git a/models/Shipyard.json b/models/Shipyard.json index dd27552..803292b 100644 --- a/models/Shipyard.json +++ b/models/Shipyard.json @@ -17,9 +17,7 @@ "$ref": "./ShipType.json" } }, - "required": [ - "type" - ] + "required": ["type"] } }, "transactions": { @@ -41,9 +39,5 @@ "description": "The fee to modify a ship at this shipyard. This includes installing or removing modules and mounts on a ship. In the case of mounts, the fee is a flat rate per mount. In the case of modules, the fee is per slot the module occupies." } }, - "required": [ - "symbol", - "shipTypes", - "modificationsFee" - ] -} \ No newline at end of file + "required": ["symbol", "shipTypes", "modificationsFee"] +} diff --git a/models/ShipyardShip.json b/models/ShipyardShip.json index b3c0870..6b9842b 100644 --- a/models/ShipyardShip.json +++ b/models/ShipyardShip.json @@ -51,10 +51,7 @@ "type": "integer" } }, - "required": [ - "required", - "capacity" - ] + "required": ["required", "capacity"] } }, "required": [ @@ -71,4 +68,4 @@ "mounts", "crew" ] -} \ No newline at end of file +} diff --git a/models/ShipyardTransaction.json b/models/ShipyardTransaction.json index d1be15a..307ee61 100644 --- a/models/ShipyardTransaction.json +++ b/models/ShipyardTransaction.json @@ -29,12 +29,5 @@ "description": "The timestamp of the transaction." } }, - "required": [ - "waypointSymbol", - "shipSymbol", - "shipType", - "price", - "agentSymbol", - "timestamp" - ] -} \ No newline at end of file + "required": ["waypointSymbol", "shipSymbol", "shipType", "price", "agentSymbol", "timestamp"] +} diff --git a/models/Siphon.json b/models/Siphon.json index 8430ad2..ca93960 100644 --- a/models/Siphon.json +++ b/models/Siphon.json @@ -11,8 +11,5 @@ "$ref": "./SiphonYield.json" } }, - "required": [ - "shipSymbol", - "yield" - ] -} \ No newline at end of file + "required": ["shipSymbol", "yield"] +} diff --git a/models/SiphonYield.json b/models/SiphonYield.json index cfec4b2..20230b0 100644 --- a/models/SiphonYield.json +++ b/models/SiphonYield.json @@ -10,8 +10,5 @@ "description": "The number of units siphoned that were placed into the ship's cargo hold." } }, - "required": [ - "symbol", - "units" - ] -} \ No newline at end of file + "required": ["symbol", "units"] +} diff --git a/models/SupplyLevel.json b/models/SupplyLevel.json index f9f0831..9efb085 100644 --- a/models/SupplyLevel.json +++ b/models/SupplyLevel.json @@ -1,11 +1,5 @@ { "type": "string", "description": "The supply level of a trade good.", - "enum": [ - "SCARCE", - "LIMITED", - "MODERATE", - "HIGH", - "ABUNDANT" - ] -} \ No newline at end of file + "enum": ["SCARCE", "LIMITED", "MODERATE", "HIGH", "ABUNDANT"] +} diff --git a/models/Survey.json b/models/Survey.json index 41292b0..259fefd 100644 --- a/models/Survey.json +++ b/models/Survey.json @@ -27,18 +27,8 @@ "size": { "type": "string", "description": "The size of the deposit. This value indicates how much can be extracted from the survey before it is exhausted.", - "enum": [ - "SMALL", - "MODERATE", - "LARGE" - ] + "enum": ["SMALL", "MODERATE", "LARGE"] } }, - "required": [ - "signature", - "symbol", - "deposits", - "expiration", - "size" - ] -} \ No newline at end of file + "required": ["signature", "symbol", "deposits", "expiration", "size"] +} diff --git a/models/SurveyDeposit.json b/models/SurveyDeposit.json index 671a4fd..71c2e9e 100644 --- a/models/SurveyDeposit.json +++ b/models/SurveyDeposit.json @@ -7,7 +7,5 @@ "description": "The symbol of the deposit." } }, - "required": [ - "symbol" - ] -} \ No newline at end of file + "required": ["symbol"] +} diff --git a/models/System.json b/models/System.json index 2080d07..8ccc253 100644 --- a/models/System.json +++ b/models/System.json @@ -37,13 +37,5 @@ } } }, - "required": [ - "symbol", - "sectorSymbol", - "type", - "x", - "y", - "waypoints", - "factions" - ] -} \ No newline at end of file + "required": ["symbol", "sectorSymbol", "type", "x", "y", "waypoints", "factions"] +} diff --git a/models/SystemFaction.json b/models/SystemFaction.json index 8384749..9cbcf27 100644 --- a/models/SystemFaction.json +++ b/models/SystemFaction.json @@ -5,7 +5,5 @@ "$ref": "./FactionSymbol.json" } }, - "required": [ - "symbol" - ] -} \ No newline at end of file + "required": ["symbol"] +} diff --git a/models/SystemSymbol.json b/models/SystemSymbol.json index a6f5d54..315872a 100644 --- a/models/SystemSymbol.json +++ b/models/SystemSymbol.json @@ -5,4 +5,4 @@ "x-faker": { "fake": ["X1-{{random.alphaNumeric(5)}}"] } -} \ No newline at end of file +} diff --git a/models/SystemWaypoint.json b/models/SystemWaypoint.json index 832a750..2cb614e 100644 --- a/models/SystemWaypoint.json +++ b/models/SystemWaypoint.json @@ -28,11 +28,5 @@ "description": "The symbol of the parent waypoint, if this waypoint is in orbit around another waypoint. Otherwise this value is undefined." } }, - "required": [ - "symbol", - "type", - "x", - "y", - "orbitals" - ] -} \ No newline at end of file + "required": ["symbol", "type", "x", "y", "orbitals"] +} diff --git a/models/TradeGood.json b/models/TradeGood.json index e14d99c..a9a97c3 100644 --- a/models/TradeGood.json +++ b/models/TradeGood.json @@ -14,9 +14,5 @@ "description": "The description of the good." } }, - "required": [ - "symbol", - "name", - "description" - ] -} \ No newline at end of file + "required": ["symbol", "name", "description"] +} diff --git a/models/TradeSymbol.json b/models/TradeSymbol.json index 186b7cb..7d5f500 100644 --- a/models/TradeSymbol.json +++ b/models/TradeSymbol.json @@ -146,4 +146,4 @@ "SHIP_SURVEYOR" ], "description": "The good's symbol." -} \ No newline at end of file +} diff --git a/models/Waypoint.json b/models/Waypoint.json index baca3de..8bcc077 100644 --- a/models/Waypoint.json +++ b/models/Waypoint.json @@ -56,14 +56,5 @@ "description": "True if the waypoint is under construction." } }, - "required": [ - "symbol", - "type", - "systemSymbol", - "x", - "y", - "orbitals", - "traits", - "isUnderConstruction" - ] -} \ No newline at end of file + "required": ["symbol", "type", "systemSymbol", "x", "y", "orbitals", "traits", "isUnderConstruction"] +} diff --git a/models/WaypointFaction.json b/models/WaypointFaction.json index 1ca1401..ffb4959 100644 --- a/models/WaypointFaction.json +++ b/models/WaypointFaction.json @@ -6,7 +6,5 @@ "$ref": "./FactionSymbol.json" } }, - "required": [ - "symbol" - ] -} \ No newline at end of file + "required": ["symbol"] +} diff --git a/models/WaypointModifier.json b/models/WaypointModifier.json index d88d2d3..2cf993f 100644 --- a/models/WaypointModifier.json +++ b/models/WaypointModifier.json @@ -13,9 +13,5 @@ "description": "A description of the trait." } }, - "required": [ - "symbol", - "name", - "description" - ] -} \ No newline at end of file + "required": ["symbol", "name", "description"] +} diff --git a/models/WaypointModifierSymbol.json b/models/WaypointModifierSymbol.json index f540017..3b99659 100644 --- a/models/WaypointModifierSymbol.json +++ b/models/WaypointModifierSymbol.json @@ -1,11 +1,5 @@ { - "type": "string", - "description": "The unique identifier of the modifier.", - "enum": [ - "STRIPPED", - "UNSTABLE", - "RADIATION_LEAK", - "CRITICAL_LIMIT", - "CIVIL_UNREST" - ] -} \ No newline at end of file + "type": "string", + "description": "The unique identifier of the modifier.", + "enum": ["STRIPPED", "UNSTABLE", "RADIATION_LEAK", "CRITICAL_LIMIT", "CIVIL_UNREST"] +} diff --git a/models/WaypointOrbital.json b/models/WaypointOrbital.json index ba34489..075431f 100644 --- a/models/WaypointOrbital.json +++ b/models/WaypointOrbital.json @@ -8,7 +8,5 @@ "description": "The symbol of the orbiting waypoint." } }, - "required": [ - "symbol" - ] -} \ No newline at end of file + "required": ["symbol"] +} diff --git a/models/WaypointSymbol.json b/models/WaypointSymbol.json index a31555e..fabc875 100644 --- a/models/WaypointSymbol.json +++ b/models/WaypointSymbol.json @@ -5,4 +5,4 @@ "x-faker": { "fake": ["X1-{{random.alphaNumeric(5)}}-{{random.alphaNumeric(5)}}"] } -} \ No newline at end of file +} diff --git a/models/WaypointTrait.json b/models/WaypointTrait.json index 828f2ef..0476a11 100644 --- a/models/WaypointTrait.json +++ b/models/WaypointTrait.json @@ -13,9 +13,5 @@ "description": "A description of the trait." } }, - "required": [ - "symbol", - "name", - "description" - ] -} \ No newline at end of file + "required": ["symbol", "name", "description"] +} diff --git a/models/WaypointTraitSymbol.json b/models/WaypointTraitSymbol.json index 8ff0924..8df0038 100644 --- a/models/WaypointTraitSymbol.json +++ b/models/WaypointTraitSymbol.json @@ -1,75 +1,75 @@ { - "type": "string", - "description": "The unique identifier of the trait.", - "enum": [ - "UNCHARTED", - "UNDER_CONSTRUCTION", - "MARKETPLACE", - "SHIPYARD", - "OUTPOST", - "SCATTERED_SETTLEMENTS", - "SPRAWLING_CITIES", - "MEGA_STRUCTURES", - "PIRATE_BASE", - "OVERCROWDED", - "HIGH_TECH", - "CORRUPT", - "BUREAUCRATIC", - "TRADING_HUB", - "INDUSTRIAL", - "BLACK_MARKET", - "RESEARCH_FACILITY", - "MILITARY_BASE", - "SURVEILLANCE_OUTPOST", - "EXPLORATION_OUTPOST", - "MINERAL_DEPOSITS", - "COMMON_METAL_DEPOSITS", - "PRECIOUS_METAL_DEPOSITS", - "RARE_METAL_DEPOSITS", - "METHANE_POOLS", - "ICE_CRYSTALS", - "EXPLOSIVE_GASES", - "STRONG_MAGNETOSPHERE", - "VIBRANT_AURORAS", - "SALT_FLATS", - "CANYONS", - "PERPETUAL_DAYLIGHT", - "PERPETUAL_OVERCAST", - "DRY_SEABEDS", - "MAGMA_SEAS", - "SUPERVOLCANOES", - "ASH_CLOUDS", - "VAST_RUINS", - "MUTATED_FLORA", - "TERRAFORMED", - "EXTREME_TEMPERATURES", - "EXTREME_PRESSURE", - "DIVERSE_LIFE", - "SCARCE_LIFE", - "FOSSILS", - "WEAK_GRAVITY", - "STRONG_GRAVITY", - "CRUSHING_GRAVITY", - "TOXIC_ATMOSPHERE", - "CORROSIVE_ATMOSPHERE", - "BREATHABLE_ATMOSPHERE", - "THIN_ATMOSPHERE", - "JOVIAN", - "ROCKY", - "VOLCANIC", - "FROZEN", - "SWAMP", - "BARREN", - "TEMPERATE", - "JUNGLE", - "OCEAN", - "RADIOACTIVE", - "MICRO_GRAVITY_ANOMALIES", - "DEBRIS_CLUSTER", - "DEEP_CRATERS", - "SHALLOW_CRATERS", - "UNSTABLE_COMPOSITION", - "HOLLOWED_INTERIOR", - "STRIPPED" - ] -} \ No newline at end of file + "type": "string", + "description": "The unique identifier of the trait.", + "enum": [ + "UNCHARTED", + "UNDER_CONSTRUCTION", + "MARKETPLACE", + "SHIPYARD", + "OUTPOST", + "SCATTERED_SETTLEMENTS", + "SPRAWLING_CITIES", + "MEGA_STRUCTURES", + "PIRATE_BASE", + "OVERCROWDED", + "HIGH_TECH", + "CORRUPT", + "BUREAUCRATIC", + "TRADING_HUB", + "INDUSTRIAL", + "BLACK_MARKET", + "RESEARCH_FACILITY", + "MILITARY_BASE", + "SURVEILLANCE_OUTPOST", + "EXPLORATION_OUTPOST", + "MINERAL_DEPOSITS", + "COMMON_METAL_DEPOSITS", + "PRECIOUS_METAL_DEPOSITS", + "RARE_METAL_DEPOSITS", + "METHANE_POOLS", + "ICE_CRYSTALS", + "EXPLOSIVE_GASES", + "STRONG_MAGNETOSPHERE", + "VIBRANT_AURORAS", + "SALT_FLATS", + "CANYONS", + "PERPETUAL_DAYLIGHT", + "PERPETUAL_OVERCAST", + "DRY_SEABEDS", + "MAGMA_SEAS", + "SUPERVOLCANOES", + "ASH_CLOUDS", + "VAST_RUINS", + "MUTATED_FLORA", + "TERRAFORMED", + "EXTREME_TEMPERATURES", + "EXTREME_PRESSURE", + "DIVERSE_LIFE", + "SCARCE_LIFE", + "FOSSILS", + "WEAK_GRAVITY", + "STRONG_GRAVITY", + "CRUSHING_GRAVITY", + "TOXIC_ATMOSPHERE", + "CORROSIVE_ATMOSPHERE", + "BREATHABLE_ATMOSPHERE", + "THIN_ATMOSPHERE", + "JOVIAN", + "ROCKY", + "VOLCANIC", + "FROZEN", + "SWAMP", + "BARREN", + "TEMPERATE", + "JUNGLE", + "OCEAN", + "RADIOACTIVE", + "MICRO_GRAVITY_ANOMALIES", + "DEBRIS_CLUSTER", + "DEEP_CRATERS", + "SHALLOW_CRATERS", + "UNSTABLE_COMPOSITION", + "HOLLOWED_INTERIOR", + "STRIPPED" + ] +} diff --git a/models/WaypointType.json b/models/WaypointType.json index 359dc60..660f415 100644 --- a/models/WaypointType.json +++ b/models/WaypointType.json @@ -17,4 +17,4 @@ "ARTIFICIAL_GRAVITY_WELL", "FUEL_STATION" ] -} \ No newline at end of file +} diff --git a/reference/SpaceTraders.json b/reference/SpaceTraders.json index 5ca950a..0a67fd0 100644 --- a/reference/SpaceTraders.json +++ b/reference/SpaceTraders.json @@ -114,6 +114,10 @@ "waypoints" ], "properties": { + "accounts": { + "type": "integer", + "description": "Total number of accounts registered on the game server." + }, "agents": { "type": "integer", "description": "Number of registered agents in the game." @@ -2615,11 +2619,7 @@ "events": { "type": "array", "items": { - "oneOf": [ - { - "$ref": "../models/ShipConditionEvent.json" - } - ] + "$ref": "../models/ShipConditionEvent.json" } } }, @@ -2689,1281 +2689,1556 @@ "description": "", "properties": { "data": { - "$ref": "../models/ShipNav.json" - } - }, - "required": [ - "data" - ], - "type": "object" + "properties": { + "nav": { + "$ref": "../models/ShipNav.json" + }, + "fuel": { + "$ref": "../models/ShipFuel.json" + }, + "events": { + "type": "array", + "items": { + "$ref": "../models/ShipConditionEvent.json" + } + } + }, + "required": [ + "nav", + "fuel", + "events" + ], + "type": "object" + }, + "required": [ + "data" + ], + "type": "object" + } } - } - }, - "description": "The updated nav data of the ship." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Patch Ship Nav", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + }, + "description": "The updated data of the ship." } - } - ] - }, - "get": { - "description": "Get the current nav status of a ship.", - "operationId": "get-ship-nav", - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", - "properties": { - "data": { - "$ref": "../models/ShipNav.json" - } - }, - "required": [ - "data" - ], - "type": "object" - } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Patch Ship Nav", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" } - }, - "description": "The current nav status of the ship." - } + } + ] }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Get Ship Nav", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + "get": { + "description": "Get the current nav status of a ship.", + "operationId": "get-ship-nav", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "$ref": "../models/ShipNav.json" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "The current nav status of the ship." } - } - ] - } - }, - "/my/ships/{shipSymbol}/warp": { - "post": { - "description": "Warp your ship to a target destination in another system. The ship must be in orbit to use this function and must have the `Warp Drive` module installed. Warping will consume the necessary fuel from the ship's manifest.\n\nThe returned response will detail the route information including the expected time of arrival. Most ship actions are unavailable until the ship has arrived at its destination.", - "operationId": "warp-ship", - "requestBody": { - "content": { - "application/json": { + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Get Ship Nav", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, "schema": { - "properties": { - "waypointSymbol": { - "description": "The target destination.", - "type": "string" - } - }, - "required": [ - "waypointSymbol" - ], - "type": "object" + "type": "string" } } - }, - "description": "" - }, - "responses": { - "200": { + ] + } + }, + "/my/ships/{shipSymbol}/warp": { + "post": { + "description": "Warp your ship to a target destination in another system. The ship must be in orbit to use this function and must have the `Warp Drive` module installed. Warping will consume the necessary fuel from the ship's manifest.\n\nThe returned response will detail the route information including the expected time of arrival. Most ship actions are unavailable until the ship has arrived at its destination.", + "operationId": "warp-ship", + "requestBody": { "content": { "application/json": { "schema": { - "description": "", "properties": { - "data": { - "properties": { - "fuel": { - "$ref": "../models/ShipFuel.json" - }, - "nav": { - "$ref": "../models/ShipNav.json" - } - }, - "required": [ - "nav", - "fuel" - ], - "type": "object" + "waypointSymbol": { + "description": "The target destination.", + "type": "string" } }, "required": [ - "data" + "waypointSymbol" ], "type": "object" } } }, - "description": "The successful transit information including the route details and changes to ship fuel. The route includes the expected time of arrival." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Warp Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + "description": "" + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "properties": { + "fuel": { + "$ref": "../models/ShipFuel.json" + }, + "nav": { + "$ref": "../models/ShipNav.json" + } + }, + "required": [ + "nav", + "fuel" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "The successful transit information including the route details and changes to ship fuel. The route includes the expected time of arrival." } - } - ] - } - }, - "/my/ships/{shipSymbol}/sell": { - "post": { - "description": "Sell cargo in your ship to a market that trades this cargo. The ship must be docked in a waypoint that has the `Marketplace` trait in order to use this function.", - "operationId": "sell-cargo", - "requestBody": { - "content": { - "application/json": { + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Warp Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, "schema": { - "title": "SellCargoRequest", - "type": "object", - "properties": { - "symbol": { - "$ref": "../models/TradeSymbol.json" - }, - "units": { - "type": "integer", - "description": "Amounts of units to sell of the selected good." - } - }, - "required": [ - "symbol", - "units" - ] + "type": "string" } } - } - }, - "responses": { - "201": { + ] + } + }, + "/my/ships/{shipSymbol}/sell": { + "post": { + "description": "Sell cargo in your ship to a market that trades this cargo. The ship must be docked in a waypoint that has the `Marketplace` trait in order to use this function.", + "operationId": "sell-cargo", + "requestBody": { "content": { "application/json": { "schema": { - "title": "Sell Cargo 201 Response", - "description": "", + "title": "SellCargoRequest", + "type": "object", "properties": { - "data": { - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "cargo": { - "$ref": "../models/ShipCargo.json" - }, - "transaction": { - "$ref": "../models/MarketTransaction.json" - } - }, - "required": [ - "cargo", - "transaction", - "agent" - ], - "type": "object" + "symbol": { + "$ref": "../models/TradeSymbol.json" + }, + "units": { + "type": "integer", + "description": "Amounts of units to sell of the selected good." } }, "required": [ - "data" - ], - "type": "object" + "symbol", + "units" + ] } } - }, - "description": "Cargo was successfully sold." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Sell Cargo", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "Symbol of a ship." - } - ] - } - }, - "/my/ships/{shipSymbol}/scan/systems": { - "post": { - "description": "Scan for nearby systems, retrieving information on the systems' distance from the ship and their waypoints. Requires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", - "operationId": "create-ship-system-scan", - "responses": { - "201": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "data": { - "type": "object", - "required": [ - "cooldown", - "systems" - ], - "properties": { - "cooldown": { - "$ref": "../models/Cooldown.json" + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "title": "Sell Cargo 201 Response", + "description": "", + "properties": { + "data": { + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { + "$ref": "../models/MarketTransaction.json" + } }, - "systems": { - "type": "array", - "description": "List of scanned systems.", - "items": { - "$ref": "../models/ScannedSystem.json" + "required": [ + "cargo", + "transaction", + "agent" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "Cargo was successfully sold." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Sell Cargo", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "Symbol of a ship." + } + ] + } + }, + "/my/ships/{shipSymbol}/scan/systems": { + "post": { + "description": "Scan for nearby systems, retrieving information on the systems' distance from the ship and their waypoints. Requires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", + "operationId": "create-ship-system-scan", + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "object", + "required": [ + "cooldown", + "systems" + ], + "properties": { + "cooldown": { + "$ref": "../models/Cooldown.json" + }, + "systems": { + "type": "array", + "description": "List of scanned systems.", + "items": { + "$ref": "../models/ScannedSystem.json" + } } } } - } - }, - "required": [ - "data" - ] + }, + "required": [ + "data" + ] + } } + }, + "description": "Successfully scanned for nearby systems." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Scan Systems", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" } - }, - "description": "Successfully scanned for nearby systems." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Scan Systems", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" } - } - ] - } - }, - "/my/ships/{shipSymbol}/scan/waypoints": { - "post": { - "description": "Scan for nearby waypoints, retrieving detailed information on each waypoint in range. Scanning uncharted waypoints will allow you to ignore their uncharted state and will list the waypoints' traits.\n\nRequires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", - "operationId": "create-ship-waypoint-scan", - "responses": { - "201": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "data": { - "type": "object", - "required": [ - "cooldown", - "waypoints" - ], - "properties": { - "cooldown": { - "$ref": "../models/Cooldown.json" - }, - "waypoints": { - "type": "array", - "description": "List of scanned waypoints.", - "items": { - "$ref": "../models/ScannedWaypoint.json" + ] + } + }, + "/my/ships/{shipSymbol}/scan/waypoints": { + "post": { + "description": "Scan for nearby waypoints, retrieving detailed information on each waypoint in range. Scanning uncharted waypoints will allow you to ignore their uncharted state and will list the waypoints' traits.\n\nRequires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", + "operationId": "create-ship-waypoint-scan", + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "object", + "required": [ + "cooldown", + "waypoints" + ], + "properties": { + "cooldown": { + "$ref": "../models/Cooldown.json" + }, + "waypoints": { + "type": "array", + "description": "List of scanned waypoints.", + "items": { + "$ref": "../models/ScannedWaypoint.json" + } } } } - } - }, - "required": [ - "data" - ] + }, + "required": [ + "data" + ] + } } + }, + "description": "Successfully scanned for nearby waypoints." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Scan Waypoints", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" } - }, - "description": "Successfully scanned for nearby waypoints." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Scan Waypoints", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" } - } - ] - } - }, - "/my/ships/{shipSymbol}/scan/ships": { - "post": { - "description": "Scan for nearby ships, retrieving information for all ships in range.\n\nRequires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", - "operationId": "create-ship-ship-scan", - "responses": { - "201": { + ] + } + }, + "/my/ships/{shipSymbol}/scan/ships": { + "post": { + "description": "Scan for nearby ships, retrieving information for all ships in range.\n\nRequires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", + "operationId": "create-ship-ship-scan", + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "object", + "required": [ + "cooldown", + "ships" + ], + "properties": { + "cooldown": { + "$ref": "../models/Cooldown.json" + }, + "ships": { + "type": "array", + "description": "List of scanned ships.", + "items": { + "$ref": "../models/ScannedShip.json" + } + } + } + } + }, + "required": [ + "data" + ] + } + } + }, + "description": "Successfully scanned for nearby ships." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Scan Ships", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + } + }, + "/my/ships/{shipSymbol}/refuel": { + "post": { + "description": "Refuel your ship by buying fuel from the local market.\n\nRequires the ship to be docked in a waypoint that has the `Marketplace` trait, and the market must be selling fuel in order to refuel.\n\nEach fuel bought from the market replenishes 100 units in your ship's fuel.\n\nShips will always be refuel to their frame's maximum fuel capacity when using this action.", + "operationId": "refuel-ship", + "requestBody": { "content": { "application/json": { "schema": { "type": "object", "properties": { - "data": { - "type": "object", - "required": [ - "cooldown", - "ships" - ], - "properties": { - "cooldown": { - "$ref": "../models/Cooldown.json" - }, - "ships": { - "type": "array", - "description": "List of scanned ships.", - "items": { - "$ref": "../models/ScannedShip.json" - } - } - } + "units": { + "type": "integer", + "description": "The amount of fuel to fill in the ship's tanks. When not specified, the ship will be refueled to its maximum fuel capacity. If the amount specified is greater than the ship's remaining capacity, the ship will only be refueled to its maximum fuel capacity. The amount specified is not in market units but in ship fuel units.", + "example": "100", + "minimum": 1 + }, + "fromCargo": { + "type": "boolean", + "description": "Wether to use the FUEL thats in your cargo or not. Default: false", + "example": false } - }, - "required": [ - "data" - ] + } } } - }, - "description": "Successfully scanned for nearby ships." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Scan Ships", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" } - } - ] - } - }, - "/my/ships/{shipSymbol}/refuel": { - "post": { - "description": "Refuel your ship by buying fuel from the local market.\n\nRequires the ship to be docked in a waypoint that has the `Marketplace` trait, and the market must be selling fuel in order to refuel.\n\nEach fuel bought from the market replenishes 100 units in your ship's fuel.\n\nShips will always be refuel to their frame's maximum fuel capacity when using this action.", - "operationId": "refuel-ship", - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "units": { - "type": "integer", - "description": "The amount of fuel to fill in the ship's tanks. When not specified, the ship will be refueled to its maximum fuel capacity. If the amount specified is greater than the ship's remaining capacity, the ship will only be refueled to its maximum fuel capacity. The amount specified is not in market units but in ship fuel units.", - "example": "100", - "minimum": 1 - }, - "fromCargo": { - "type": "boolean", - "description": "Wether to use the FUEL thats in your cargo or not. Default: false", - "example": false + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "fuel": { + "$ref": "../models/ShipFuel.json" + }, + "transaction": { + "$ref": "../models/MarketTransaction.json" + } + }, + "required": [ + "agent", + "fuel", + "transaction" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" } } - } + }, + "description": "Refueled successfully." } - } - }, - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", - "properties": { - "data": { - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "fuel": { - "$ref": "../models/ShipFuel.json" - }, - "transaction": { - "$ref": "../models/MarketTransaction.json" - } - }, - "required": [ - "agent", - "fuel", - "transaction" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - }, - "description": "Refueled successfully." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Refuel Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + }, + "security": [ + { + "AgentToken": [] } - } - ] - } - }, - "/my/ships/{shipSymbol}/purchase": { - "post": { - "description": "Purchase cargo from a market.\n\nThe ship must be docked in a waypoint that has `Marketplace` trait, and the market must be selling a good to be able to purchase it.\n\nThe maximum amount of units of a good that can be purchased in each transaction are denoted by the `tradeVolume` value of the good, which can be viewed by using the Get Market action.\n\nPurchased goods are added to the ship's cargo hold.", - "operationId": "purchase-cargo", - "requestBody": { - "content": { - "application/json": { + ], + "summary": "Refuel Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, "schema": { - "title": "Purchase Cargo Request", - "type": "object", - "properties": { - "symbol": { - "$ref": "../models/TradeSymbol.json" - }, - "units": { - "type": "integer", - "description": "Amounts of units to purchase." - } - }, - "required": [ - "symbol", - "units" - ] + "type": "string" } } - } - }, - "responses": { - "201": { + ] + } + }, + "/my/ships/{shipSymbol}/purchase": { + "post": { + "description": "Purchase cargo from a market.\n\nThe ship must be docked in a waypoint that has `Marketplace` trait, and the market must be selling a good to be able to purchase it.\n\nThe maximum amount of units of a good that can be purchased in each transaction are denoted by the `tradeVolume` value of the good, which can be viewed by using the Get Market action.\n\nPurchased goods are added to the ship's cargo hold.", + "operationId": "purchase-cargo", + "requestBody": { "content": { "application/json": { "schema": { - "title": "Purchase Cargo 201 Response", - "description": "", + "title": "Purchase Cargo Request", + "type": "object", "properties": { - "data": { - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "cargo": { - "$ref": "../models/ShipCargo.json" - }, - "transaction": { - "$ref": "../models/MarketTransaction.json" - } - }, - "required": [ - "cargo", - "transaction", - "agent" - ], - "type": "object" + "symbol": { + "$ref": "../models/TradeSymbol.json" + }, + "units": { + "type": "integer", + "description": "Amounts of units to purchase." } }, "required": [ - "data" - ], - "type": "object" + "symbol", + "units" + ] } } - }, - "description": "Purchased goods successfully." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Purchase Cargo", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The ship's symbol." - } - ] - } - }, - "/my/ships/{shipSymbol}/transfer": { - "post": { - "description": "Transfer cargo between ships.\n\nThe receiving ship must be in the same waypoint as the transferring ship, and it must able to hold the additional cargo after the transfer is complete. Both ships also must be in the same state, either both are docked or both are orbiting.\n\nThe response body's cargo shows the cargo of the transferring ship after the transfer is complete.", - "operationId": "transfer-cargo", - "requestBody": { - "content": { - "application/json": { - "schema": { - "title": "Transfer Cargo Request", - "type": "object", - "properties": { - "tradeSymbol": { - "$ref": "../models/TradeSymbol.json" - }, - "units": { - "type": "integer", - "description": "Amount of units to transfer." - }, - "shipSymbol": { - "type": "string", - "description": "The symbol of the ship to transfer to." + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "title": "Purchase Cargo 201 Response", + "description": "", + "properties": { + "data": { + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { + "$ref": "../models/MarketTransaction.json" + } + }, + "required": [ + "cargo", + "transaction", + "agent" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" } - }, - "required": [ - "tradeSymbol", - "units", - "shipSymbol" - ] - } + } + }, + "description": "Purchased goods successfully." } - } - }, - "responses": { - "200": { + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Purchase Cargo", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/transfer": { + "post": { + "description": "Transfer cargo between ships.\n\nThe receiving ship must be in the same waypoint as the transferring ship, and it must able to hold the additional cargo after the transfer is complete. Both ships also must be in the same state, either both are docked or both are orbiting.\n\nThe response body's cargo shows the cargo of the transferring ship after the transfer is complete.", + "operationId": "transfer-cargo", + "requestBody": { "content": { "application/json": { "schema": { - "title": "Transfer Cargo 200 Response", + "title": "Transfer Cargo Request", "type": "object", "properties": { - "data": { - "type": "object", - "required": [ - "cargo" - ], - "properties": { - "cargo": { - "$ref": "../models/ShipCargo.json" - } - } + "tradeSymbol": { + "$ref": "../models/TradeSymbol.json" + }, + "units": { + "type": "integer", + "description": "Amount of units to transfer." + }, + "shipSymbol": { + "type": "string", + "description": "The symbol of the ship to transfer to." } }, "required": [ - "data" + "tradeSymbol", + "units", + "shipSymbol" ] } } - }, - "description": "Transfer successful." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Transfer Cargo", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The transferring ship's symbol." - } - ] - } - }, - "/my/ships/{shipSymbol}/negotiate/contract": { - "post": { - "description": "Negotiate a new contract with the HQ.\n\nIn order to negotiate a new contract, an agent must not have ongoing or offered contracts over the allowed maximum amount. Currently the maximum contracts an agent can have at a time is 1.\n\nOnce a contract is negotiated, it is added to the list of contracts offered to the agent, which the agent can then accept. \n\nThe ship must be present at any waypoint with a faction present to negotiate a contract with that faction.", - "operationId": "negotiateContract", - "responses": { - "201": { - "content": { - "application/json": { - "schema": { - "title": "Negotiate Contract 200 Response", - "description": "", - "properties": { - "data": { - "properties": { - "contract": { - "$ref": "../models/Contract.json" + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "title": "Transfer Cargo 200 Response", + "type": "object", + "properties": { + "data": { + "type": "object", + "required": [ + "cargo" + ], + "properties": { + "cargo": { + "$ref": "../models/ShipCargo.json" + } } - }, - "required": [ - "contract" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" + } + }, + "required": [ + "data" + ] + } } - } - }, - "description": "Successfully negotiated a new contract." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Negotiate Contract", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The ship's symbol." - } - ] - } - }, - "/my/ships/{shipSymbol}/mounts": { - "get": { - "description": "Get the mounts installed on a ship.", - "operationId": "get-mounts", - "responses": { - "200": { + }, + "description": "Transfer successful." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Transfer Cargo", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The transferring ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/negotiate/contract": { + "post": { + "description": "Negotiate a new contract with the HQ.\n\nIn order to negotiate a new contract, an agent must not have ongoing or offered contracts over the allowed maximum amount. Currently the maximum contracts an agent can have at a time is 1.\n\nOnce a contract is negotiated, it is added to the list of contracts offered to the agent, which the agent can then accept. \n\nThe ship must be present at any waypoint with a faction present to negotiate a contract with that faction.", + "operationId": "negotiateContract", + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "title": "Negotiate Contract 200 Response", + "description": "", + "properties": { + "data": { + "properties": { + "contract": { + "$ref": "../models/Contract.json" + } + }, + "required": [ + "contract" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "Successfully negotiated a new contract." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Negotiate Contract", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/mounts": { + "get": { + "description": "Get the mounts installed on a ship.", + "operationId": "get-mounts", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "title": "Get Mounts 200 Response", + "description": "", + "properties": { + "data": { + "items": { + "$ref": "../models/ShipMount.json" + }, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "Got installed mounts." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Get Mounts", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/mounts/install": { + "post": { + "description": "Install a mount on a ship.\n\nIn order to install a mount, the ship must be docked and located in a waypoint that has a `Shipyard` trait. The ship also must have the mount to install in its cargo hold.\n\nAn installation fee will be deduced by the Shipyard for installing the mount on the ship. ", + "operationId": "install-mount", + "requestBody": { "content": { "application/json": { "schema": { - "title": "Get Mounts 200 Response", - "description": "", + "title": "Install Mount Request", "properties": { - "data": { - "items": { - "$ref": "../models/ShipMount.json" - }, - "type": "array" + "symbol": { + "type": "string" } }, "required": [ - "data" + "symbol" ], "type": "object" } } - }, - "description": "Got installed mounts." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Get Mounts", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The ship's symbol." - } - ] - } - }, - "/my/ships/{shipSymbol}/mounts/install": { - "post": { - "description": "Install a mount on a ship.\n\nIn order to install a mount, the ship must be docked and located in a waypoint that has a `Shipyard` trait. The ship also must have the mount to install in its cargo hold.\n\nAn installation fee will be deduced by the Shipyard for installing the mount on the ship. ", - "operationId": "install-mount", - "requestBody": { - "content": { - "application/json": { - "schema": { - "title": "Install Mount Request", - "properties": { - "symbol": { - "type": "string" + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "title": "Install Mount 201 Response", + "type": "object", + "properties": { + "data": { + "type": "object", + "required": [ + "agent", + "mounts", + "cargo", + "transaction" + ], + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "mounts": { + "type": "array", + "description": "List of installed mounts after the installation of the new mount.", + "items": { + "$ref": "../models/ShipMount.json" + } + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { + "$ref": "../models/ShipModificationTransaction.json" + } + } + } + }, + "required": [ + "data" + ] } - }, - "required": [ - "symbol" - ], - "type": "object" - } + } + }, + "description": "Successfully installed the mount." } - } - }, - "responses": { - "201": { + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Install Mount", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/mounts/remove": { + "post": { + "description": "Remove a mount from a ship.\n\nThe ship must be docked in a waypoint that has the `Shipyard` trait, and must have the desired mount that it wish to remove installed.\n\nA removal fee will be deduced from the agent by the Shipyard.", + "operationId": "remove-mount", + "requestBody": { "content": { "application/json": { "schema": { - "title": "Install Mount 201 Response", + "title": "Remove Mount Request", "type": "object", "properties": { - "data": { - "type": "object", - "required": [ - "agent", - "mounts", - "cargo", - "transaction" - ], - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "mounts": { - "type": "array", - "description": "List of installed mounts after the installation of the new mount.", - "items": { - "$ref": "../models/ShipMount.json" - } - }, - "cargo": { - "$ref": "../models/ShipCargo.json" - }, - "transaction": { - "$ref": "../models/ShipModificationTransaction.json" - } - } + "symbol": { + "type": "string", + "description": "The symbol of the mount to remove." } }, "required": [ - "data" + "symbol" ] } } - }, - "description": "Successfully installed the mount." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Install Mount", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The ship's symbol." - } - ] - } - }, - "/my/ships/{shipSymbol}/mounts/remove": { - "post": { - "description": "Remove a mount from a ship.\n\nThe ship must be docked in a waypoint that has the `Shipyard` trait, and must have the desired mount that it wish to remove installed.\n\nA removal fee will be deduced from the agent by the Shipyard.", - "operationId": "remove-mount", - "requestBody": { - "content": { - "application/json": { + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "title": "Remove Mount 201 Response", + "type": "object", + "properties": { + "data": { + "type": "object", + "required": [ + "agent", + "mounts", + "cargo", + "transaction" + ], + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "mounts": { + "type": "array", + "description": "List of installed mounts after the removal of the selected mount.", + "items": { + "$ref": "../models/ShipMount.json" + } + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { + "$ref": "../models/ShipModificationTransaction.json" + } + } + } + }, + "required": [ + "data" + ] + } + } + }, + "description": "Successfully removed the mount." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Remove Mount", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, "schema": { - "title": "Remove Mount Request", - "type": "object", - "properties": { - "symbol": { - "type": "string", - "description": "The symbol of the mount to remove." + "type": "string" + }, + "description": "The ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/scrap": { + "get": { + "x-preview-feature": true, + "description": "Get the amount of value that will be returned when scrapping a ship.", + "operationId": "get-scrap-ship", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "properties": { + "transaction": { + "$ref": "../models/ScrapTransaction.json" + } + }, + "required": [ + "transaction" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" } - }, - "required": [ - "symbol" - ] + } + }, + "description": "Successfully retrieved the amount of value that will be returned when scrapping a ship." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Get Scrap Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" } } - } + ] }, - "responses": { - "201": { - "content": { - "application/json": { - "schema": { - "title": "Remove Mount 201 Response", - "type": "object", - "properties": { - "data": { - "type": "object", - "required": [ - "agent", - "mounts", - "cargo", - "transaction" - ], - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "mounts": { - "type": "array", - "description": "List of installed mounts after the removal of the selected mount.", - "items": { - "$ref": "../models/ShipMount.json" + "post": { + "x-preview-feature": true, + "description": "Scrap a ship, removing it from the game and returning a portion of the ship's value to the agent. The ship must be docked in a waypoint that has the `Shipyard` trait in order to use this function. To preview the amount of value that will be returned, use the Get Ship action.", + "operationId": "scrap-ship", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "transaction": { + "$ref": "../models/ScrapTransaction.json" } }, - "cargo": { - "$ref": "../models/ShipCargo.json" + "required": [ + "agent", + "transaction" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "Ship scrapped successfully." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Scrap Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + } + }, + "/my/ships/{shipSymbol}/repair": { + "get": { + "x-preview-feature": true, + "description": "Get the cost of repairing a ship.", + "operationId": "get-repair-ship", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "properties": { + "transaction": { + "$ref": "../models/RepairTransaction.json" + } }, - "transaction": { - "$ref": "../models/ShipModificationTransaction.json" - } + "required": [ + "transaction" + ], + "type": "object" } - } - }, - "required": [ - "data" - ] + }, + "required": [ + "data" + ], + "type": "object" + } } + }, + "description": "Successfully retrieved the cost of repairing a ship." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Get Repair Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" } - }, - "description": "Successfully removed the mount." - } + } + ] }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Remove Mount", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The ship's symbol." - } - ] - } - }, - "/my/ships/{shipSymbol}/scrap": { - "get": { - "x-preview-feature": true, - "description": "Get the amount of value that will be returned when scrapping a ship.", - "operationId": "get-scrap-ship", - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", - "properties": { - "data": { - "properties": { - "transaction": { - "$ref": "../models/ScrapTransaction.json" - } - }, - "required": [ - "transaction" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" + "post": { + "x-preview-feature": true, + "description": "Repair a ship, restoring the ship to maximum condition. The ship must be docked at a waypoint that has the `Shipyard` trait in order to use this function. To preview the cost of repairing the ship, use the Get action.", + "operationId": "repair-ship", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "ship": { + "$ref": "../models/Ship.json" + }, + "transaction": { + "$ref": "../models/RepairTransaction.json" + } + }, + "required": [ + "agent", + "ship", + "transaction" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } } + }, + "description": "Ship repaired successfully." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Repair Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" } - }, - "description": "Successfully retrieved the amount of value that will be returned when scrapping a ship." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Get Scrap Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" } - } - ] + ] + } }, - "post": { - "x-preview-feature": true, - "description": "Scrap a ship, removing it from the game and returning a portion of the ship's value to the agent. The ship must be docked in a waypoint that has the `Shipyard` trait in order to use this function. To preview the amount of value that will be returned, use the Get Ship action.", - "operationId": "scrap-ship", - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", - "properties": { - "data": { - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "transaction": { - "$ref": "../models/ScrapTransaction.json" + "/market/supply-chain": { + "get": { + "summary": "Get Supply Chain", + "description": "Describes which import and exports map to each other.", + "parameters": [], + "operationId": "get-supply-chain", + "responses": { + "200": { + "description": "Successfully retrieved the supply chain information", + "content": { + "application/json": { + "schema": { + "type": "object", + "x-examples": { + "Example 1": { + "data": { + "exportToImportMap": { + "LIQUID_HYDROGEN": [ + "MACHINERY" + ], + "LIQUID_NITROGEN": [ + "MACHINERY" + ] + } } - }, - "required": [ - "agent", - "transaction" - ], - "type": "object" + } + }, + "properties": { + "data": { + "type": "object", + "properties": { + "exportToImportMap": { + "type": "object", + "properties": { + "string": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "required": [ + "exportToImportMap" + ] + } + }, + "required": [ + "data" + ] } }, - "required": [ - "data" - ], - "type": "object" + "application/xml": { + "schema": { + "type": "object", + "properties": {} + } + } } } }, - "description": "Ship scrapped successfully." - } - }, - "security": [ - { - "AgentToken": [] + "tags": [ + "Data" + ], + "security": [ + { + "AgentToken": [] + } + ] } - ], - "summary": "Scrap Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + } + }, + "/my/ships/{shipSymbol}/modules": { + "get": { + "operationId": "get-ship-modules", + "summary": "Get Ship Modules", + "description": "Get the modules installed on a ship.", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The symbol of the ship" } - } - ] - } - }, - "/my/ships/{shipSymbol}/repair": { - "get": { - "x-preview-feature": true, - "description": "Get the cost of repairing a ship.", - "operationId": "get-repair-ship", - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", - "properties": { - "data": { - "properties": { - "transaction": { - "$ref": "../models/RepairTransaction.json" + ], + "responses": { + "200": { + "description": "Successfully retrieved ship modules.", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "data" + ], + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "../models/ShipModule.json" } - }, - "required": [ - "transaction" - ], - "type": "object" + } } - }, - "required": [ - "data" - ], - "type": "object" + } } } - }, - "description": "Successfully retrieved the cost of repairing a ship." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Get Repair Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" } } - ] + } }, - "post": { - "x-preview-feature": true, - "description": "Repair a ship, restoring the ship to maximum condition. The ship must be docked at a waypoint that has the `Shipyard` trait in order to use this function. To preview the cost of repairing the ship, use the Get action.", - "operationId": "repair-ship", - "responses": { - "200": { + "/my/ships/{shipSymbol}/modules/install": { + "post": { + "operationId": "install-ship-module", + "summary": "Install Ship Module", + "description": "Install a module on a ship. The module must be in your cargo.", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The symbol of the ship" + } + ], + "requestBody": { "content": { "application/json": { "schema": { - "description": "", + "type": "object", + "required": [ + "symbol" + ], "properties": { - "data": { - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "ship": { - "$ref": "../models/Ship.json" - }, - "transaction": { - "$ref": "../models/RepairTransaction.json" + "symbol": { + "type": "string", + "description": "The symbol of the module to install" + } + } + } + } + } + }, + "responses": { + "201": { + "description": "Successfully installed the module on the ship.", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "data" + ], + "properties": { + "data": { + "type": "object", + "required": [ + "agent", + "modules", + "cargo", + "transaction" + ], + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "modules": { + "type": "array", + "items": { + "$ref": "../models/ShipModule.json" + } + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { + "type": "object", + "required": [ + "waypointSymbol", + "shipSymbol", + "tradeSymbol", + "totalPrice", + "timestamp" + ], + "properties": { + "waypointSymbol": { + "type": "string" + }, + "shipSymbol": { + "type": "string" + }, + "tradeSymbol": { + "type": "string" + }, + "totalPrice": { + "type": "integer" + }, + "timestamp": { + "type": "string" + } + } + } } - }, - "required": [ - "agent", - "ship", - "transaction" - ], - "type": "object" + } } - }, - "required": [ - "data" - ], - "type": "object" + } } } - }, - "description": "Ship repaired successfully." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Repair Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" } } - ] - } - }, - "/market/supply-chain": { - "get": { - "summary": "Get Supply Chain", - "description": "Describes which import and exports map to each other.", - "parameters": [], - "operationId": "get-supply-chain", - "responses": { - "200": { - "description": "Successfully retrieved the supply chain information", + } + }, + "/my/ships/{shipSymbol}/modules/remove": { + "post": { + "operationId": "remove-ship-module", + "summary": "Remove Ship Module", + "description": "Remove a module from a ship. The module will be placed in cargo.", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The symbol of the ship" + } + ], + "requestBody": { "content": { "application/json": { "schema": { "type": "object", - "x-examples": { - "Example 1": { - "data": { - "exportToImportMap": { - "LIQUID_HYDROGEN": [ - "MACHINERY" - ], - "LIQUID_NITROGEN": [ - "MACHINERY" - ] - } - } - } - }, + "required": [ + "symbol" + ], "properties": { - "data": { - "type": "object", - "properties": { - "exportToImportMap": { - "type": "object", - "properties": { - "string": { - "type": "array", - "items": { + "symbol": { + "type": "string", + "description": "The symbol of the module to remove" + } + } + } + } + } + }, + "responses": { + "201": { + "description": "Successfully removed the module from the ship.", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "data" + ], + "properties": { + "data": { + "type": "object", + "required": [ + "agent", + "modules", + "cargo", + "transaction" + ], + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "modules": { + "type": "array", + "items": { + "$ref": "../models/ShipModule.json" + } + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { + "type": "object", + "required": [ + "waypointSymbol", + "shipSymbol", + "tradeSymbol", + "totalPrice", + "timestamp" + ], + "properties": { + "waypointSymbol": { + "type": "string" + }, + "shipSymbol": { + "type": "string" + }, + "tradeSymbol": { + "type": "string" + }, + "totalPrice": { + "type": "integer" + }, + "timestamp": { "type": "string" } } } - }, - "required": [ - "exportToImportMap" - ] + } } - }, - "required": [ - "data" - ] - } - }, - "application/xml": { - "schema": { - "type": "object", - "properties": {} + } } } } } - }, - "tags": [ - "Data" - ], - "security": [ - { - "AgentToken": [] - } - ] - }, - "parameters": [] + } + } } } - } \ No newline at end of file + } +} \ No newline at end of file From c41550805b02e7dc2cd6b34dfd15f98586ca04f2 Mon Sep 17 00:00:00 2001 From: Bart Riepe Date: Fri, 28 Feb 2025 01:02:11 +0900 Subject: [PATCH 3/6] fix: response type of registration endpoint --- reference/SpaceTraders.json | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/reference/SpaceTraders.json b/reference/SpaceTraders.json index 0a67fd0..c5942ce 100644 --- a/reference/SpaceTraders.json +++ b/reference/SpaceTraders.json @@ -328,8 +328,11 @@ "faction": { "$ref": "../models/Faction.json" }, - "ship": { - "$ref": "../models/Ship.json" + "ships": { + "type": "array", + "items": { + "$ref": "../models/Ship.json" + } }, "token": { "description": "A Bearer token for accessing secured API endpoints.", From 8cab2101ea0cff4f15dbe094e332f64b1aea8283 Mon Sep 17 00:00:00 2001 From: Bart Riepe Date: Fri, 28 Feb 2025 01:19:14 +0900 Subject: [PATCH 4/6] fix: hopefully proper formatting now --- reference/SpaceTraders.json | 2536 +++++++++++++++++------------------ 1 file changed, 1268 insertions(+), 1268 deletions(-) diff --git a/reference/SpaceTraders.json b/reference/SpaceTraders.json index c5942ce..06dd1f8 100644 --- a/reference/SpaceTraders.json +++ b/reference/SpaceTraders.json @@ -2689,7 +2689,7 @@ "content": { "application/json": { "schema": { - "description": "", + "description": "Success response for updating the nav configuration of a ship.", "properties": { "data": { "properties": { @@ -2719,1309 +2719,1309 @@ "type": "object" } } - }, - "description": "The updated data of the ship." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Patch Ship Nav", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" } - } - ] + }, + "description": "The updated data of the ship." + } }, - "get": { - "description": "Get the current nav status of a ship.", - "operationId": "get-ship-nav", - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", - "properties": { - "data": { - "$ref": "../models/ShipNav.json" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - }, - "description": "The current nav status of the ship." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Get Ship Nav", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - } + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Patch Ship Nav", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" } - ] - } + } + ] }, - "/my/ships/{shipSymbol}/warp": { - "post": { - "description": "Warp your ship to a target destination in another system. The ship must be in orbit to use this function and must have the `Warp Drive` module installed. Warping will consume the necessary fuel from the ship's manifest.\n\nThe returned response will detail the route information including the expected time of arrival. Most ship actions are unavailable until the ship has arrived at its destination.", - "operationId": "warp-ship", - "requestBody": { + "get": { + "description": "Get the current nav status of a ship.", + "operationId": "get-ship-nav", + "responses": { + "200": { "content": { "application/json": { "schema": { + "description": "", "properties": { - "waypointSymbol": { - "description": "The target destination.", - "type": "string" + "data": { + "$ref": "../models/ShipNav.json" } }, "required": [ - "waypointSymbol" + "data" ], "type": "object" } } }, - "description": "" - }, - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", + "description": "The current nav status of the ship." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Get Ship Nav", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + } + } + }, + "/my/ships/{shipSymbol}/warp": { + "post": { + "description": "Warp your ship to a target destination in another system. The ship must be in orbit to use this function and must have the `Warp Drive` module installed. Warping will consume the necessary fuel from the ship's manifest.\n\nThe returned response will detail the route information including the expected time of arrival. Most ship actions are unavailable until the ship has arrived at its destination.", + "operationId": "warp-ship", + "requestBody": { + "content": { + "application/json": { + "schema": { + "properties": { + "waypointSymbol": { + "description": "The target destination.", + "type": "string" + } + }, + "required": [ + "waypointSymbol" + ], + "type": "object" + } + } + }, + "description": "" + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { "properties": { - "data": { - "properties": { - "fuel": { - "$ref": "../models/ShipFuel.json" - }, - "nav": { - "$ref": "../models/ShipNav.json" - } - }, - "required": [ - "nav", - "fuel" - ], - "type": "object" + "fuel": { + "$ref": "../models/ShipFuel.json" + }, + "nav": { + "$ref": "../models/ShipNav.json" } }, "required": [ - "data" + "nav", + "fuel" ], "type": "object" } - } - }, - "description": "The successful transit information including the route details and changes to ship fuel. The route includes the expected time of arrival." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Warp Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + }, + "required": [ + "data" + ], + "type": "object" } } - ] + }, + "description": "The successful transit information including the route details and changes to ship fuel. The route includes the expected time of arrival." } }, - "/my/ships/{shipSymbol}/sell": { - "post": { - "description": "Sell cargo in your ship to a market that trades this cargo. The ship must be docked in a waypoint that has the `Marketplace` trait in order to use this function.", - "operationId": "sell-cargo", - "requestBody": { - "content": { - "application/json": { - "schema": { - "title": "SellCargoRequest", - "type": "object", - "properties": { - "symbol": { - "$ref": "../models/TradeSymbol.json" - }, - "units": { - "type": "integer", - "description": "Amounts of units to sell of the selected good." - } - }, - "required": [ - "symbol", - "units" - ] + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Warp Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + } + }, + "/my/ships/{shipSymbol}/sell": { + "post": { + "description": "Sell cargo in your ship to a market that trades this cargo. The ship must be docked in a waypoint that has the `Marketplace` trait in order to use this function.", + "operationId": "sell-cargo", + "requestBody": { + "content": { + "application/json": { + "schema": { + "title": "SellCargoRequest", + "type": "object", + "properties": { + "symbol": { + "$ref": "../models/TradeSymbol.json" + }, + "units": { + "type": "integer", + "description": "Amounts of units to sell of the selected good." } - } + }, + "required": [ + "symbol", + "units" + ] } - }, - "responses": { - "201": { - "content": { - "application/json": { - "schema": { - "title": "Sell Cargo 201 Response", - "description": "", + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "title": "Sell Cargo 201 Response", + "description": "", + "properties": { + "data": { "properties": { - "data": { - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "cargo": { - "$ref": "../models/ShipCargo.json" - }, - "transaction": { - "$ref": "../models/MarketTransaction.json" - } - }, - "required": [ - "cargo", - "transaction", - "agent" - ], - "type": "object" + "agent": { + "$ref": "../models/Agent.json" + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { + "$ref": "../models/MarketTransaction.json" } }, "required": [ - "data" + "cargo", + "transaction", + "agent" ], "type": "object" } - } - }, - "description": "Cargo was successfully sold." + }, + "required": [ + "data" + ], + "type": "object" + } } }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Sell Cargo", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "Symbol of a ship." - } - ] + "description": "Cargo was successfully sold." } }, - "/my/ships/{shipSymbol}/scan/systems": { - "post": { - "description": "Scan for nearby systems, retrieving information on the systems' distance from the ship and their waypoints. Requires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", - "operationId": "create-ship-system-scan", - "responses": { - "201": { - "content": { - "application/json": { - "schema": { + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Sell Cargo", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "Symbol of a ship." + } + ] + } + }, + "/my/ships/{shipSymbol}/scan/systems": { + "post": { + "description": "Scan for nearby systems, retrieving information on the systems' distance from the ship and their waypoints. Requires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", + "operationId": "create-ship-system-scan", + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { "type": "object", + "required": [ + "cooldown", + "systems" + ], "properties": { - "data": { - "type": "object", - "required": [ - "cooldown", - "systems" - ], - "properties": { - "cooldown": { - "$ref": "../models/Cooldown.json" - }, - "systems": { - "type": "array", - "description": "List of scanned systems.", - "items": { - "$ref": "../models/ScannedSystem.json" - } - } + "cooldown": { + "$ref": "../models/Cooldown.json" + }, + "systems": { + "type": "array", + "description": "List of scanned systems.", + "items": { + "$ref": "../models/ScannedSystem.json" } } - }, - "required": [ - "data" - ] + } } - } - }, - "description": "Successfully scanned for nearby systems." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Scan Systems", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + }, + "required": [ + "data" + ] } } - ] + }, + "description": "Successfully scanned for nearby systems." } }, - "/my/ships/{shipSymbol}/scan/waypoints": { - "post": { - "description": "Scan for nearby waypoints, retrieving detailed information on each waypoint in range. Scanning uncharted waypoints will allow you to ignore their uncharted state and will list the waypoints' traits.\n\nRequires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", - "operationId": "create-ship-waypoint-scan", - "responses": { - "201": { - "content": { - "application/json": { - "schema": { + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Scan Systems", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + } + }, + "/my/ships/{shipSymbol}/scan/waypoints": { + "post": { + "description": "Scan for nearby waypoints, retrieving detailed information on each waypoint in range. Scanning uncharted waypoints will allow you to ignore their uncharted state and will list the waypoints' traits.\n\nRequires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", + "operationId": "create-ship-waypoint-scan", + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { "type": "object", + "required": [ + "cooldown", + "waypoints" + ], "properties": { - "data": { - "type": "object", - "required": [ - "cooldown", - "waypoints" - ], - "properties": { - "cooldown": { - "$ref": "../models/Cooldown.json" - }, - "waypoints": { - "type": "array", - "description": "List of scanned waypoints.", - "items": { - "$ref": "../models/ScannedWaypoint.json" - } - } + "cooldown": { + "$ref": "../models/Cooldown.json" + }, + "waypoints": { + "type": "array", + "description": "List of scanned waypoints.", + "items": { + "$ref": "../models/ScannedWaypoint.json" } } - }, - "required": [ - "data" - ] + } } - } - }, - "description": "Successfully scanned for nearby waypoints." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Scan Waypoints", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + }, + "required": [ + "data" + ] } } - ] + }, + "description": "Successfully scanned for nearby waypoints." } }, - "/my/ships/{shipSymbol}/scan/ships": { - "post": { - "description": "Scan for nearby ships, retrieving information for all ships in range.\n\nRequires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", - "operationId": "create-ship-ship-scan", - "responses": { - "201": { - "content": { - "application/json": { - "schema": { + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Scan Waypoints", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + } + }, + "/my/ships/{shipSymbol}/scan/ships": { + "post": { + "description": "Scan for nearby ships, retrieving information for all ships in range.\n\nRequires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", + "operationId": "create-ship-ship-scan", + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { "type": "object", + "required": [ + "cooldown", + "ships" + ], "properties": { - "data": { - "type": "object", - "required": [ - "cooldown", - "ships" - ], - "properties": { - "cooldown": { - "$ref": "../models/Cooldown.json" - }, - "ships": { - "type": "array", - "description": "List of scanned ships.", - "items": { - "$ref": "../models/ScannedShip.json" - } - } + "cooldown": { + "$ref": "../models/Cooldown.json" + }, + "ships": { + "type": "array", + "description": "List of scanned ships.", + "items": { + "$ref": "../models/ScannedShip.json" } } - }, - "required": [ - "data" - ] + } } - } - }, - "description": "Successfully scanned for nearby ships." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Scan Ships", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + }, + "required": [ + "data" + ] } } - ] + }, + "description": "Successfully scanned for nearby ships." } }, - "/my/ships/{shipSymbol}/refuel": { - "post": { - "description": "Refuel your ship by buying fuel from the local market.\n\nRequires the ship to be docked in a waypoint that has the `Marketplace` trait, and the market must be selling fuel in order to refuel.\n\nEach fuel bought from the market replenishes 100 units in your ship's fuel.\n\nShips will always be refuel to their frame's maximum fuel capacity when using this action.", - "operationId": "refuel-ship", - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "units": { - "type": "integer", - "description": "The amount of fuel to fill in the ship's tanks. When not specified, the ship will be refueled to its maximum fuel capacity. If the amount specified is greater than the ship's remaining capacity, the ship will only be refueled to its maximum fuel capacity. The amount specified is not in market units but in ship fuel units.", - "example": "100", - "minimum": 1 - }, - "fromCargo": { - "type": "boolean", - "description": "Wether to use the FUEL thats in your cargo or not. Default: false", - "example": false - } - } + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Scan Ships", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + } + }, + "/my/ships/{shipSymbol}/refuel": { + "post": { + "description": "Refuel your ship by buying fuel from the local market.\n\nRequires the ship to be docked in a waypoint that has the `Marketplace` trait, and the market must be selling fuel in order to refuel.\n\nEach fuel bought from the market replenishes 100 units in your ship's fuel.\n\nShips will always be refuel to their frame's maximum fuel capacity when using this action.", + "operationId": "refuel-ship", + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "units": { + "type": "integer", + "description": "The amount of fuel to fill in the ship's tanks. When not specified, the ship will be refueled to its maximum fuel capacity. If the amount specified is greater than the ship's remaining capacity, the ship will only be refueled to its maximum fuel capacity. The amount specified is not in market units but in ship fuel units.", + "example": "100", + "minimum": 1 + }, + "fromCargo": { + "type": "boolean", + "description": "Wether to use the FUEL thats in your cargo or not. Default: false", + "example": false } } } - }, - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { "properties": { - "data": { - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "fuel": { - "$ref": "../models/ShipFuel.json" - }, - "transaction": { - "$ref": "../models/MarketTransaction.json" - } - }, - "required": [ - "agent", - "fuel", - "transaction" - ], - "type": "object" + "agent": { + "$ref": "../models/Agent.json" + }, + "fuel": { + "$ref": "../models/ShipFuel.json" + }, + "transaction": { + "$ref": "../models/MarketTransaction.json" } }, "required": [ - "data" + "agent", + "fuel", + "transaction" ], "type": "object" } - } - }, - "description": "Refueled successfully." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Refuel Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + }, + "required": [ + "data" + ], + "type": "object" } } - ] + }, + "description": "Refueled successfully." } }, - "/my/ships/{shipSymbol}/purchase": { - "post": { - "description": "Purchase cargo from a market.\n\nThe ship must be docked in a waypoint that has `Marketplace` trait, and the market must be selling a good to be able to purchase it.\n\nThe maximum amount of units of a good that can be purchased in each transaction are denoted by the `tradeVolume` value of the good, which can be viewed by using the Get Market action.\n\nPurchased goods are added to the ship's cargo hold.", - "operationId": "purchase-cargo", - "requestBody": { - "content": { - "application/json": { - "schema": { - "title": "Purchase Cargo Request", - "type": "object", - "properties": { - "symbol": { - "$ref": "../models/TradeSymbol.json" - }, - "units": { - "type": "integer", - "description": "Amounts of units to purchase." - } - }, - "required": [ - "symbol", - "units" - ] + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Refuel Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + } + }, + "/my/ships/{shipSymbol}/purchase": { + "post": { + "description": "Purchase cargo from a market.\n\nThe ship must be docked in a waypoint that has `Marketplace` trait, and the market must be selling a good to be able to purchase it.\n\nThe maximum amount of units of a good that can be purchased in each transaction are denoted by the `tradeVolume` value of the good, which can be viewed by using the Get Market action.\n\nPurchased goods are added to the ship's cargo hold.", + "operationId": "purchase-cargo", + "requestBody": { + "content": { + "application/json": { + "schema": { + "title": "Purchase Cargo Request", + "type": "object", + "properties": { + "symbol": { + "$ref": "../models/TradeSymbol.json" + }, + "units": { + "type": "integer", + "description": "Amounts of units to purchase." } - } + }, + "required": [ + "symbol", + "units" + ] } - }, - "responses": { - "201": { - "content": { - "application/json": { - "schema": { - "title": "Purchase Cargo 201 Response", - "description": "", + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "title": "Purchase Cargo 201 Response", + "description": "", + "properties": { + "data": { "properties": { - "data": { - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "cargo": { - "$ref": "../models/ShipCargo.json" - }, - "transaction": { - "$ref": "../models/MarketTransaction.json" - } - }, - "required": [ - "cargo", - "transaction", - "agent" - ], - "type": "object" + "agent": { + "$ref": "../models/Agent.json" + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { + "$ref": "../models/MarketTransaction.json" } }, "required": [ - "data" + "cargo", + "transaction", + "agent" ], "type": "object" } - } - }, - "description": "Purchased goods successfully." + }, + "required": [ + "data" + ], + "type": "object" + } } }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Purchase Cargo", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The ship's symbol." - } - ] + "description": "Purchased goods successfully." } }, - "/my/ships/{shipSymbol}/transfer": { - "post": { - "description": "Transfer cargo between ships.\n\nThe receiving ship must be in the same waypoint as the transferring ship, and it must able to hold the additional cargo after the transfer is complete. Both ships also must be in the same state, either both are docked or both are orbiting.\n\nThe response body's cargo shows the cargo of the transferring ship after the transfer is complete.", - "operationId": "transfer-cargo", - "requestBody": { - "content": { - "application/json": { - "schema": { - "title": "Transfer Cargo Request", - "type": "object", - "properties": { - "tradeSymbol": { - "$ref": "../models/TradeSymbol.json" - }, - "units": { - "type": "integer", - "description": "Amount of units to transfer." - }, - "shipSymbol": { - "type": "string", - "description": "The symbol of the ship to transfer to." - } - }, - "required": [ - "tradeSymbol", - "units", - "shipSymbol" - ] + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Purchase Cargo", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/transfer": { + "post": { + "description": "Transfer cargo between ships.\n\nThe receiving ship must be in the same waypoint as the transferring ship, and it must able to hold the additional cargo after the transfer is complete. Both ships also must be in the same state, either both are docked or both are orbiting.\n\nThe response body's cargo shows the cargo of the transferring ship after the transfer is complete.", + "operationId": "transfer-cargo", + "requestBody": { + "content": { + "application/json": { + "schema": { + "title": "Transfer Cargo Request", + "type": "object", + "properties": { + "tradeSymbol": { + "$ref": "../models/TradeSymbol.json" + }, + "units": { + "type": "integer", + "description": "Amount of units to transfer." + }, + "shipSymbol": { + "type": "string", + "description": "The symbol of the ship to transfer to." } - } + }, + "required": [ + "tradeSymbol", + "units", + "shipSymbol" + ] } - }, - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "title": "Transfer Cargo 200 Response", + } + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "title": "Transfer Cargo 200 Response", + "type": "object", + "properties": { + "data": { "type": "object", + "required": [ + "cargo" + ], "properties": { - "data": { - "type": "object", - "required": [ - "cargo" - ], - "properties": { - "cargo": { - "$ref": "../models/ShipCargo.json" - } - } + "cargo": { + "$ref": "../models/ShipCargo.json" } - }, - "required": [ - "data" - ] + } } - } - }, - "description": "Transfer successful." + }, + "required": [ + "data" + ] + } } }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Transfer Cargo", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The transferring ship's symbol." - } - ] + "description": "Transfer successful." } }, - "/my/ships/{shipSymbol}/negotiate/contract": { - "post": { - "description": "Negotiate a new contract with the HQ.\n\nIn order to negotiate a new contract, an agent must not have ongoing or offered contracts over the allowed maximum amount. Currently the maximum contracts an agent can have at a time is 1.\n\nOnce a contract is negotiated, it is added to the list of contracts offered to the agent, which the agent can then accept. \n\nThe ship must be present at any waypoint with a faction present to negotiate a contract with that faction.", - "operationId": "negotiateContract", - "responses": { - "201": { - "content": { - "application/json": { - "schema": { - "title": "Negotiate Contract 200 Response", - "description": "", + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Transfer Cargo", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The transferring ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/negotiate/contract": { + "post": { + "description": "Negotiate a new contract with the HQ.\n\nIn order to negotiate a new contract, an agent must not have ongoing or offered contracts over the allowed maximum amount. Currently the maximum contracts an agent can have at a time is 1.\n\nOnce a contract is negotiated, it is added to the list of contracts offered to the agent, which the agent can then accept. \n\nThe ship must be present at any waypoint with a faction present to negotiate a contract with that faction.", + "operationId": "negotiateContract", + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "title": "Negotiate Contract 200 Response", + "description": "", + "properties": { + "data": { "properties": { - "data": { - "properties": { - "contract": { - "$ref": "../models/Contract.json" - } - }, - "required": [ - "contract" - ], - "type": "object" + "contract": { + "$ref": "../models/Contract.json" } }, "required": [ - "data" + "contract" ], "type": "object" } - } - }, - "description": "Successfully negotiated a new contract." + }, + "required": [ + "data" + ], + "type": "object" + } } }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Negotiate Contract", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The ship's symbol." - } - ] + "description": "Successfully negotiated a new contract." } }, - "/my/ships/{shipSymbol}/mounts": { - "get": { - "description": "Get the mounts installed on a ship.", - "operationId": "get-mounts", - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "title": "Get Mounts 200 Response", - "description": "", - "properties": { - "data": { - "items": { - "$ref": "../models/ShipMount.json" - }, - "type": "array" - } + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Negotiate Contract", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/mounts": { + "get": { + "description": "Get the mounts installed on a ship.", + "operationId": "get-mounts", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "title": "Get Mounts 200 Response", + "description": "", + "properties": { + "data": { + "items": { + "$ref": "../models/ShipMount.json" }, - "required": [ - "data" - ], - "type": "object" + "type": "array" } - } - }, - "description": "Got installed mounts." + }, + "required": [ + "data" + ], + "type": "object" + } } }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Get Mounts", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The ship's symbol." - } - ] + "description": "Got installed mounts." } }, - "/my/ships/{shipSymbol}/mounts/install": { - "post": { - "description": "Install a mount on a ship.\n\nIn order to install a mount, the ship must be docked and located in a waypoint that has a `Shipyard` trait. The ship also must have the mount to install in its cargo hold.\n\nAn installation fee will be deduced by the Shipyard for installing the mount on the ship. ", - "operationId": "install-mount", - "requestBody": { - "content": { - "application/json": { - "schema": { - "title": "Install Mount Request", - "properties": { - "symbol": { - "type": "string" - } - }, - "required": [ - "symbol" - ], - "type": "object" + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Get Mounts", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/mounts/install": { + "post": { + "description": "Install a mount on a ship.\n\nIn order to install a mount, the ship must be docked and located in a waypoint that has a `Shipyard` trait. The ship also must have the mount to install in its cargo hold.\n\nAn installation fee will be deduced by the Shipyard for installing the mount on the ship. ", + "operationId": "install-mount", + "requestBody": { + "content": { + "application/json": { + "schema": { + "title": "Install Mount Request", + "properties": { + "symbol": { + "type": "string" } - } + }, + "required": [ + "symbol" + ], + "type": "object" } - }, - "responses": { - "201": { - "content": { - "application/json": { - "schema": { - "title": "Install Mount 201 Response", + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "title": "Install Mount 201 Response", + "type": "object", + "properties": { + "data": { "type": "object", + "required": [ + "agent", + "mounts", + "cargo", + "transaction" + ], "properties": { - "data": { - "type": "object", - "required": [ - "agent", - "mounts", - "cargo", - "transaction" - ], - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "mounts": { - "type": "array", - "description": "List of installed mounts after the installation of the new mount.", - "items": { - "$ref": "../models/ShipMount.json" - } - }, - "cargo": { - "$ref": "../models/ShipCargo.json" - }, - "transaction": { - "$ref": "../models/ShipModificationTransaction.json" - } + "agent": { + "$ref": "../models/Agent.json" + }, + "mounts": { + "type": "array", + "description": "List of installed mounts after the installation of the new mount.", + "items": { + "$ref": "../models/ShipMount.json" } + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { + "$ref": "../models/ShipModificationTransaction.json" } - }, - "required": [ - "data" - ] + } } - } - }, - "description": "Successfully installed the mount." + }, + "required": [ + "data" + ] + } } }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Install Mount", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The ship's symbol." - } - ] + "description": "Successfully installed the mount." } }, - "/my/ships/{shipSymbol}/mounts/remove": { - "post": { - "description": "Remove a mount from a ship.\n\nThe ship must be docked in a waypoint that has the `Shipyard` trait, and must have the desired mount that it wish to remove installed.\n\nA removal fee will be deduced from the agent by the Shipyard.", - "operationId": "remove-mount", - "requestBody": { - "content": { - "application/json": { - "schema": { - "title": "Remove Mount Request", - "type": "object", - "properties": { - "symbol": { - "type": "string", - "description": "The symbol of the mount to remove." - } - }, - "required": [ - "symbol" - ] + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Install Mount", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/mounts/remove": { + "post": { + "description": "Remove a mount from a ship.\n\nThe ship must be docked in a waypoint that has the `Shipyard` trait, and must have the desired mount that it wish to remove installed.\n\nA removal fee will be deduced from the agent by the Shipyard.", + "operationId": "remove-mount", + "requestBody": { + "content": { + "application/json": { + "schema": { + "title": "Remove Mount Request", + "type": "object", + "properties": { + "symbol": { + "type": "string", + "description": "The symbol of the mount to remove." } - } + }, + "required": [ + "symbol" + ] } - }, - "responses": { - "201": { - "content": { - "application/json": { - "schema": { - "title": "Remove Mount 201 Response", + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "title": "Remove Mount 201 Response", + "type": "object", + "properties": { + "data": { "type": "object", + "required": [ + "agent", + "mounts", + "cargo", + "transaction" + ], "properties": { - "data": { - "type": "object", - "required": [ - "agent", - "mounts", - "cargo", - "transaction" - ], - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "mounts": { - "type": "array", - "description": "List of installed mounts after the removal of the selected mount.", - "items": { - "$ref": "../models/ShipMount.json" - } - }, - "cargo": { - "$ref": "../models/ShipCargo.json" - }, - "transaction": { - "$ref": "../models/ShipModificationTransaction.json" - } + "agent": { + "$ref": "../models/Agent.json" + }, + "mounts": { + "type": "array", + "description": "List of installed mounts after the removal of the selected mount.", + "items": { + "$ref": "../models/ShipMount.json" } + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { + "$ref": "../models/ShipModificationTransaction.json" } - }, - "required": [ - "data" - ] + } } - } - }, - "description": "Successfully removed the mount." + }, + "required": [ + "data" + ] + } } }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Remove Mount", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The ship's symbol." - } - ] + "description": "Successfully removed the mount." } }, - "/my/ships/{shipSymbol}/scrap": { - "get": { - "x-preview-feature": true, - "description": "Get the amount of value that will be returned when scrapping a ship.", - "operationId": "get-scrap-ship", - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Remove Mount", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/scrap": { + "get": { + "x-preview-feature": true, + "description": "Get the amount of value that will be returned when scrapping a ship.", + "operationId": "get-scrap-ship", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { "properties": { - "data": { - "properties": { - "transaction": { - "$ref": "../models/ScrapTransaction.json" - } - }, - "required": [ - "transaction" - ], - "type": "object" + "transaction": { + "$ref": "../models/ScrapTransaction.json" } }, "required": [ - "data" + "transaction" ], "type": "object" } - } - }, - "description": "Successfully retrieved the amount of value that will be returned when scrapping a ship." + }, + "required": [ + "data" + ], + "type": "object" + } } }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Get Scrap Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, + "description": "Successfully retrieved the amount of value that will be returned when scrapping a ship." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Get Scrap Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + }, + "post": { + "x-preview-feature": true, + "description": "Scrap a ship, removing it from the game and returning a portion of the ship's value to the agent. The ship must be docked in a waypoint that has the `Shipyard` trait in order to use this function. To preview the amount of value that will be returned, use the Get Ship action.", + "operationId": "scrap-ship", + "responses": { + "200": { + "content": { + "application/json": { "schema": { - "type": "string" - } - } - ] - }, - "post": { - "x-preview-feature": true, - "description": "Scrap a ship, removing it from the game and returning a portion of the ship's value to the agent. The ship must be docked in a waypoint that has the `Shipyard` trait in order to use this function. To preview the amount of value that will be returned, use the Get Ship action.", - "operationId": "scrap-ship", - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", + "description": "", + "properties": { + "data": { "properties": { - "data": { - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "transaction": { - "$ref": "../models/ScrapTransaction.json" - } - }, - "required": [ - "agent", - "transaction" - ], - "type": "object" + "agent": { + "$ref": "../models/Agent.json" + }, + "transaction": { + "$ref": "../models/ScrapTransaction.json" } }, "required": [ - "data" + "agent", + "transaction" ], "type": "object" - } - } - }, - "description": "Ship scrapped successfully." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Scrap Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + } + }, + "required": [ + "data" + ], + "type": "object" } } - ] + }, + "description": "Ship scrapped successfully." } }, - "/my/ships/{shipSymbol}/repair": { - "get": { - "x-preview-feature": true, - "description": "Get the cost of repairing a ship.", - "operationId": "get-repair-ship", - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Scrap Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + } + }, + "/my/ships/{shipSymbol}/repair": { + "get": { + "x-preview-feature": true, + "description": "Get the cost of repairing a ship.", + "operationId": "get-repair-ship", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { "properties": { - "data": { - "properties": { - "transaction": { - "$ref": "../models/RepairTransaction.json" - } - }, - "required": [ - "transaction" - ], - "type": "object" + "transaction": { + "$ref": "../models/RepairTransaction.json" } }, "required": [ - "data" + "transaction" ], "type": "object" } - } - }, - "description": "Successfully retrieved the cost of repairing a ship." + }, + "required": [ + "data" + ], + "type": "object" + } } }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Get Repair Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, + "description": "Successfully retrieved the cost of repairing a ship." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Get Repair Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + }, + "post": { + "x-preview-feature": true, + "description": "Repair a ship, restoring the ship to maximum condition. The ship must be docked at a waypoint that has the `Shipyard` trait in order to use this function. To preview the cost of repairing the ship, use the Get action.", + "operationId": "repair-ship", + "responses": { + "200": { + "content": { + "application/json": { "schema": { - "type": "string" - } - } - ] - }, - "post": { - "x-preview-feature": true, - "description": "Repair a ship, restoring the ship to maximum condition. The ship must be docked at a waypoint that has the `Shipyard` trait in order to use this function. To preview the cost of repairing the ship, use the Get action.", - "operationId": "repair-ship", - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", + "description": "", + "properties": { + "data": { "properties": { - "data": { - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "ship": { - "$ref": "../models/Ship.json" - }, - "transaction": { - "$ref": "../models/RepairTransaction.json" - } - }, - "required": [ - "agent", - "ship", - "transaction" - ], - "type": "object" + "agent": { + "$ref": "../models/Agent.json" + }, + "ship": { + "$ref": "../models/Ship.json" + }, + "transaction": { + "$ref": "../models/RepairTransaction.json" } }, "required": [ - "data" + "agent", + "ship", + "transaction" ], "type": "object" } - } - }, - "description": "Ship repaired successfully." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Repair Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + }, + "required": [ + "data" + ], + "type": "object" } } - ] + }, + "description": "Ship repaired successfully." } }, - "/market/supply-chain": { - "get": { - "summary": "Get Supply Chain", - "description": "Describes which import and exports map to each other.", - "parameters": [], - "operationId": "get-supply-chain", - "responses": { - "200": { - "description": "Successfully retrieved the supply chain information", - "content": { - "application/json": { - "schema": { - "type": "object", - "x-examples": { - "Example 1": { - "data": { - "exportToImportMap": { - "LIQUID_HYDROGEN": [ - "MACHINERY" - ], - "LIQUID_NITROGEN": [ - "MACHINERY" - ] - } - } + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Repair Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + } + }, + "/market/supply-chain": { + "get": { + "summary": "Get Supply Chain", + "description": "Describes which import and exports map to each other.", + "parameters": [], + "operationId": "get-supply-chain", + "responses": { + "200": { + "description": "Successfully retrieved the supply chain information", + "content": { + "application/json": { + "schema": { + "type": "object", + "x-examples": { + "Example 1": { + "data": { + "exportToImportMap": { + "LIQUID_HYDROGEN": [ + "MACHINERY" + ], + "LIQUID_NITROGEN": [ + "MACHINERY" + ] } - }, + } + } + }, + "properties": { + "data": { + "type": "object", "properties": { - "data": { + "exportToImportMap": { "type": "object", "properties": { - "exportToImportMap": { - "type": "object", - "properties": { - "string": { - "type": "array", - "items": { - "type": "string" - } - } + "string": { + "type": "array", + "items": { + "type": "string" } - }, - "required": [ - "exportToImportMap" - ] + } } }, "required": [ - "data" + "exportToImportMap" ] } }, - "application/xml": { - "schema": { - "type": "object", - "properties": {} - } - } + "required": [ + "data" + ] + } + }, + "application/xml": { + "schema": { + "type": "object", + "properties": {} } } - }, - "tags": [ - "Data" - ], - "security": [ - { - "AgentToken": [] - } - ] + } + } + }, + "tags": [ + "Data" + ], + "security": [ + { + "AgentToken": [] } + ] + } + } + }, + "/my/ships/{shipSymbol}/modules": { + "get": { + "operationId": "get-ship-modules", + "summary": "Get Ship Modules", + "description": "Get the modules installed on a ship.", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The symbol of the ship" } - }, - "/my/ships/{shipSymbol}/modules": { - "get": { - "operationId": "get-ship-modules", - "summary": "Get Ship Modules", - "description": "Get the modules installed on a ship.", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, + ], + "responses": { + "200": { + "description": "Successfully retrieved ship modules.", + "content": { + "application/json": { "schema": { - "type": "string" - }, - "description": "The symbol of the ship" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved ship modules.", - "content": { - "application/json": { - "schema": { - "type": "object", - "required": [ - "data" - ], - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "../models/ShipModule.json" - } - } + "type": "object", + "required": [ + "data" + ], + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "../models/ShipModule.json" } } } @@ -4029,102 +4029,102 @@ } } } - }, - "/my/ships/{shipSymbol}/modules/install": { - "post": { - "operationId": "install-ship-module", - "summary": "Install Ship Module", - "description": "Install a module on a ship. The module must be in your cargo.", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The symbol of the ship" - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "required": [ - "symbol" - ], - "properties": { - "symbol": { - "type": "string", - "description": "The symbol of the module to install" - } - } + } + } + }, + "/my/ships/{shipSymbol}/modules/install": { + "post": { + "operationId": "install-ship-module", + "summary": "Install Ship Module", + "description": "Install a module on a ship. The module must be in your cargo.", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The symbol of the ship" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "symbol" + ], + "properties": { + "symbol": { + "type": "string", + "description": "The symbol of the module to install" } } } - }, - "responses": { - "201": { - "description": "Successfully installed the module on the ship.", - "content": { - "application/json": { - "schema": { + } + } + }, + "responses": { + "201": { + "description": "Successfully installed the module on the ship.", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "data" + ], + "properties": { + "data": { "type": "object", "required": [ - "data" + "agent", + "modules", + "cargo", + "transaction" ], "properties": { - "data": { + "agent": { + "$ref": "../models/Agent.json" + }, + "modules": { + "type": "array", + "items": { + "$ref": "../models/ShipModule.json" + } + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { "type": "object", "required": [ - "agent", - "modules", - "cargo", - "transaction" + "waypointSymbol", + "shipSymbol", + "tradeSymbol", + "totalPrice", + "timestamp" ], "properties": { - "agent": { - "$ref": "../models/Agent.json" + "waypointSymbol": { + "type": "string" }, - "modules": { - "type": "array", - "items": { - "$ref": "../models/ShipModule.json" - } + "shipSymbol": { + "type": "string" }, - "cargo": { - "$ref": "../models/ShipCargo.json" + "tradeSymbol": { + "type": "string" }, - "transaction": { - "type": "object", - "required": [ - "waypointSymbol", - "shipSymbol", - "tradeSymbol", - "totalPrice", - "timestamp" - ], - "properties": { - "waypointSymbol": { - "type": "string" - }, - "shipSymbol": { - "type": "string" - }, - "tradeSymbol": { - "type": "string" - }, - "totalPrice": { - "type": "integer" - }, - "timestamp": { - "type": "string" - } - } + "totalPrice": { + "type": "integer" + }, + "timestamp": { + "type": "string" } } } @@ -4135,102 +4135,102 @@ } } } - }, - "/my/ships/{shipSymbol}/modules/remove": { - "post": { - "operationId": "remove-ship-module", - "summary": "Remove Ship Module", - "description": "Remove a module from a ship. The module will be placed in cargo.", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The symbol of the ship" - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "required": [ - "symbol" - ], - "properties": { - "symbol": { - "type": "string", - "description": "The symbol of the module to remove" - } - } + } + } + }, + "/my/ships/{shipSymbol}/modules/remove": { + "post": { + "operationId": "remove-ship-module", + "summary": "Remove Ship Module", + "description": "Remove a module from a ship. The module will be placed in cargo.", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The symbol of the ship" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "symbol" + ], + "properties": { + "symbol": { + "type": "string", + "description": "The symbol of the module to remove" } } } - }, - "responses": { - "201": { - "description": "Successfully removed the module from the ship.", - "content": { - "application/json": { - "schema": { + } + } + }, + "responses": { + "201": { + "description": "Successfully removed the module from the ship.", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "data" + ], + "properties": { + "data": { "type": "object", "required": [ - "data" + "agent", + "modules", + "cargo", + "transaction" ], "properties": { - "data": { + "agent": { + "$ref": "../models/Agent.json" + }, + "modules": { + "type": "array", + "items": { + "$ref": "../models/ShipModule.json" + } + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { "type": "object", "required": [ - "agent", - "modules", - "cargo", - "transaction" + "waypointSymbol", + "shipSymbol", + "tradeSymbol", + "totalPrice", + "timestamp" ], "properties": { - "agent": { - "$ref": "../models/Agent.json" + "waypointSymbol": { + "type": "string" }, - "modules": { - "type": "array", - "items": { - "$ref": "../models/ShipModule.json" - } + "shipSymbol": { + "type": "string" }, - "cargo": { - "$ref": "../models/ShipCargo.json" + "tradeSymbol": { + "type": "string" }, - "transaction": { - "type": "object", - "required": [ - "waypointSymbol", - "shipSymbol", - "tradeSymbol", - "totalPrice", - "timestamp" - ], - "properties": { - "waypointSymbol": { - "type": "string" - }, - "shipSymbol": { - "type": "string" - }, - "tradeSymbol": { - "type": "string" - }, - "totalPrice": { - "type": "integer" - }, - "timestamp": { - "type": "string" - } - } + "totalPrice": { + "type": "integer" + }, + "timestamp": { + "type": "string" } } } From 2c9153f070ff557544ab5290bf5e3fe2509f8109 Mon Sep 17 00:00:00 2001 From: Bart Riepe Date: Fri, 28 Feb 2025 01:24:56 +0900 Subject: [PATCH 5/6] fix: nope, was still broken --- reference/SpaceTraders.json | 2602 +++++++++++++++++------------------ 1 file changed, 1301 insertions(+), 1301 deletions(-) diff --git a/reference/SpaceTraders.json b/reference/SpaceTraders.json index 06dd1f8..bc85cea 100644 --- a/reference/SpaceTraders.json +++ b/reference/SpaceTraders.json @@ -1,5 +1,5 @@ { - "openapi": "3.1.1", + "openapi": "3.0.1", "info": { "title": "SpaceTraders API", "version": "2.3.0", @@ -2712,12 +2712,12 @@ "events" ], "type": "object" - }, - "required": [ - "data" - ], - "type": "object" - } + } + }, + "required": [ + "data" + ], + "type": "object" } } }, @@ -2790,1341 +2790,1341 @@ } ] } - } - }, - "/my/ships/{shipSymbol}/warp": { - "post": { - "description": "Warp your ship to a target destination in another system. The ship must be in orbit to use this function and must have the `Warp Drive` module installed. Warping will consume the necessary fuel from the ship's manifest.\n\nThe returned response will detail the route information including the expected time of arrival. Most ship actions are unavailable until the ship has arrived at its destination.", - "operationId": "warp-ship", - "requestBody": { - "content": { - "application/json": { - "schema": { - "properties": { - "waypointSymbol": { - "description": "The target destination.", - "type": "string" - } - }, - "required": [ - "waypointSymbol" - ], - "type": "object" - } - } - }, - "description": "" - }, - "responses": { - "200": { + }, + "/my/ships/{shipSymbol}/warp": { + "post": { + "description": "Warp your ship to a target destination in another system. The ship must be in orbit to use this function and must have the `Warp Drive` module installed. Warping will consume the necessary fuel from the ship's manifest.\n\nThe returned response will detail the route information including the expected time of arrival. Most ship actions are unavailable until the ship has arrived at its destination.", + "operationId": "warp-ship", + "requestBody": { "content": { "application/json": { "schema": { - "description": "", "properties": { - "data": { - "properties": { - "fuel": { - "$ref": "../models/ShipFuel.json" - }, - "nav": { - "$ref": "../models/ShipNav.json" - } - }, - "required": [ - "nav", - "fuel" - ], - "type": "object" + "waypointSymbol": { + "description": "The target destination.", + "type": "string" } }, "required": [ - "data" + "waypointSymbol" ], "type": "object" } } }, - "description": "The successful transit information including the route details and changes to ship fuel. The route includes the expected time of arrival." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Warp Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + "description": "" + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "properties": { + "fuel": { + "$ref": "../models/ShipFuel.json" + }, + "nav": { + "$ref": "../models/ShipNav.json" + } + }, + "required": [ + "nav", + "fuel" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "The successful transit information including the route details and changes to ship fuel. The route includes the expected time of arrival." } - } - ] - } - }, - "/my/ships/{shipSymbol}/sell": { - "post": { - "description": "Sell cargo in your ship to a market that trades this cargo. The ship must be docked in a waypoint that has the `Marketplace` trait in order to use this function.", - "operationId": "sell-cargo", - "requestBody": { - "content": { - "application/json": { + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Warp Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, "schema": { - "title": "SellCargoRequest", - "type": "object", - "properties": { - "symbol": { - "$ref": "../models/TradeSymbol.json" - }, - "units": { - "type": "integer", - "description": "Amounts of units to sell of the selected good." - } - }, - "required": [ - "symbol", - "units" - ] + "type": "string" } } - } - }, - "responses": { - "201": { - "content": { - "application/json": { - "schema": { - "title": "Sell Cargo 201 Response", - "description": "", - "properties": { - "data": { - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "cargo": { - "$ref": "../models/ShipCargo.json" - }, - "transaction": { - "$ref": "../models/MarketTransaction.json" - } - }, - "required": [ - "cargo", - "transaction", - "agent" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - }, - "description": "Cargo was successfully sold." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Sell Cargo", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "Symbol of a ship." - } - ] - } - }, - "/my/ships/{shipSymbol}/scan/systems": { - "post": { - "description": "Scan for nearby systems, retrieving information on the systems' distance from the ship and their waypoints. Requires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", - "operationId": "create-ship-system-scan", - "responses": { - "201": { + ] + } + }, + "/my/ships/{shipSymbol}/sell": { + "post": { + "description": "Sell cargo in your ship to a market that trades this cargo. The ship must be docked in a waypoint that has the `Marketplace` trait in order to use this function.", + "operationId": "sell-cargo", + "requestBody": { "content": { "application/json": { "schema": { + "title": "SellCargoRequest", "type": "object", "properties": { - "data": { - "type": "object", - "required": [ - "cooldown", - "systems" - ], - "properties": { - "cooldown": { - "$ref": "../models/Cooldown.json" - }, - "systems": { - "type": "array", - "description": "List of scanned systems.", - "items": { - "$ref": "../models/ScannedSystem.json" - } - } - } + "symbol": { + "$ref": "../models/TradeSymbol.json" + }, + "units": { + "type": "integer", + "description": "Amounts of units to sell of the selected good." } }, "required": [ - "data" + "symbol", + "units" ] } } - }, - "description": "Successfully scanned for nearby systems." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Scan Systems", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" } - } - ] - } - }, - "/my/ships/{shipSymbol}/scan/waypoints": { - "post": { - "description": "Scan for nearby waypoints, retrieving detailed information on each waypoint in range. Scanning uncharted waypoints will allow you to ignore their uncharted state and will list the waypoints' traits.\n\nRequires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", - "operationId": "create-ship-waypoint-scan", - "responses": { - "201": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "data": { - "type": "object", - "required": [ - "cooldown", - "waypoints" - ], - "properties": { - "cooldown": { - "$ref": "../models/Cooldown.json" - }, - "waypoints": { - "type": "array", - "description": "List of scanned waypoints.", - "items": { - "$ref": "../models/ScannedWaypoint.json" + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "title": "Sell Cargo 201 Response", + "description": "", + "properties": { + "data": { + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { + "$ref": "../models/MarketTransaction.json" } - } + }, + "required": [ + "cargo", + "transaction", + "agent" + ], + "type": "object" } - } - }, - "required": [ - "data" - ] + }, + "required": [ + "data" + ], + "type": "object" + } } - } - }, - "description": "Successfully scanned for nearby waypoints." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Scan Waypoints", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + }, + "description": "Cargo was successfully sold." } - } - ] - } - }, - "/my/ships/{shipSymbol}/scan/ships": { - "post": { - "description": "Scan for nearby ships, retrieving information for all ships in range.\n\nRequires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", - "operationId": "create-ship-ship-scan", - "responses": { - "201": { - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "data": { - "type": "object", - "required": [ - "cooldown", - "ships" - ], - "properties": { - "cooldown": { - "$ref": "../models/Cooldown.json" - }, - "ships": { - "type": "array", - "description": "List of scanned ships.", - "items": { - "$ref": "../models/ScannedShip.json" + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Sell Cargo", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "Symbol of a ship." + } + ] + } + }, + "/my/ships/{shipSymbol}/scan/systems": { + "post": { + "description": "Scan for nearby systems, retrieving information on the systems' distance from the ship and their waypoints. Requires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", + "operationId": "create-ship-system-scan", + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "object", + "required": [ + "cooldown", + "systems" + ], + "properties": { + "cooldown": { + "$ref": "../models/Cooldown.json" + }, + "systems": { + "type": "array", + "description": "List of scanned systems.", + "items": { + "$ref": "../models/ScannedSystem.json" + } } } } - } - }, - "required": [ - "data" - ] + }, + "required": [ + "data" + ] + } } - } - }, - "description": "Successfully scanned for nearby ships." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Scan Ships", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + }, + "description": "Successfully scanned for nearby systems." } - } - ] - } - }, - "/my/ships/{shipSymbol}/refuel": { - "post": { - "description": "Refuel your ship by buying fuel from the local market.\n\nRequires the ship to be docked in a waypoint that has the `Marketplace` trait, and the market must be selling fuel in order to refuel.\n\nEach fuel bought from the market replenishes 100 units in your ship's fuel.\n\nShips will always be refuel to their frame's maximum fuel capacity when using this action.", - "operationId": "refuel-ship", - "requestBody": { - "content": { - "application/json": { + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Scan Systems", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, "schema": { - "type": "object", - "properties": { - "units": { - "type": "integer", - "description": "The amount of fuel to fill in the ship's tanks. When not specified, the ship will be refueled to its maximum fuel capacity. If the amount specified is greater than the ship's remaining capacity, the ship will only be refueled to its maximum fuel capacity. The amount specified is not in market units but in ship fuel units.", - "example": "100", - "minimum": 1 - }, - "fromCargo": { - "type": "boolean", - "description": "Wether to use the FUEL thats in your cargo or not. Default: false", - "example": false + "type": "string" + } + } + ] + } + }, + "/my/ships/{shipSymbol}/scan/waypoints": { + "post": { + "description": "Scan for nearby waypoints, retrieving detailed information on each waypoint in range. Scanning uncharted waypoints will allow you to ignore their uncharted state and will list the waypoints' traits.\n\nRequires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", + "operationId": "create-ship-waypoint-scan", + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "object", + "required": [ + "cooldown", + "waypoints" + ], + "properties": { + "cooldown": { + "$ref": "../models/Cooldown.json" + }, + "waypoints": { + "type": "array", + "description": "List of scanned waypoints.", + "items": { + "$ref": "../models/ScannedWaypoint.json" + } + } + } + } + }, + "required": [ + "data" + ] } } + }, + "description": "Successfully scanned for nearby waypoints." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Scan Waypoints", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" } } - } - }, - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", - "properties": { - "data": { - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "fuel": { - "$ref": "../models/ShipFuel.json" - }, - "transaction": { - "$ref": "../models/MarketTransaction.json" + ] + } + }, + "/my/ships/{shipSymbol}/scan/ships": { + "post": { + "description": "Scan for nearby ships, retrieving information for all ships in range.\n\nRequires a ship to have the `Sensor Array` mount installed to use.\n\nThe ship will enter a cooldown after using this function, during which it cannot execute certain actions.", + "operationId": "create-ship-ship-scan", + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "object", + "required": [ + "cooldown", + "ships" + ], + "properties": { + "cooldown": { + "$ref": "../models/Cooldown.json" + }, + "ships": { + "type": "array", + "description": "List of scanned ships.", + "items": { + "$ref": "../models/ScannedShip.json" + } + } } - }, - "required": [ - "agent", - "fuel", - "transaction" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" + } + }, + "required": [ + "data" + ] + } } - } - }, - "description": "Refueled successfully." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Refuel Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + }, + "description": "Successfully scanned for nearby ships." } - } - ] - } - }, - "/my/ships/{shipSymbol}/purchase": { - "post": { - "description": "Purchase cargo from a market.\n\nThe ship must be docked in a waypoint that has `Marketplace` trait, and the market must be selling a good to be able to purchase it.\n\nThe maximum amount of units of a good that can be purchased in each transaction are denoted by the `tradeVolume` value of the good, which can be viewed by using the Get Market action.\n\nPurchased goods are added to the ship's cargo hold.", - "operationId": "purchase-cargo", - "requestBody": { - "content": { - "application/json": { + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Scan Ships", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, "schema": { - "title": "Purchase Cargo Request", - "type": "object", - "properties": { - "symbol": { - "$ref": "../models/TradeSymbol.json" - }, - "units": { - "type": "integer", - "description": "Amounts of units to purchase." - } - }, - "required": [ - "symbol", - "units" - ] + "type": "string" } } - } - }, - "responses": { - "201": { + ] + } + }, + "/my/ships/{shipSymbol}/refuel": { + "post": { + "description": "Refuel your ship by buying fuel from the local market.\n\nRequires the ship to be docked in a waypoint that has the `Marketplace` trait, and the market must be selling fuel in order to refuel.\n\nEach fuel bought from the market replenishes 100 units in your ship's fuel.\n\nShips will always be refuel to their frame's maximum fuel capacity when using this action.", + "operationId": "refuel-ship", + "requestBody": { "content": { "application/json": { "schema": { - "title": "Purchase Cargo 201 Response", - "description": "", + "type": "object", "properties": { - "data": { - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "cargo": { - "$ref": "../models/ShipCargo.json" - }, - "transaction": { - "$ref": "../models/MarketTransaction.json" - } - }, - "required": [ - "cargo", - "transaction", - "agent" - ], - "type": "object" + "units": { + "type": "integer", + "description": "The amount of fuel to fill in the ship's tanks. When not specified, the ship will be refueled to its maximum fuel capacity. If the amount specified is greater than the ship's remaining capacity, the ship will only be refueled to its maximum fuel capacity. The amount specified is not in market units but in ship fuel units.", + "example": "100", + "minimum": 1 + }, + "fromCargo": { + "type": "boolean", + "description": "Wether to use the FUEL thats in your cargo or not. Default: false", + "example": false } - }, - "required": [ - "data" - ], - "type": "object" + } } } - }, - "description": "Purchased goods successfully." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Purchase Cargo", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The ship's symbol." - } - ] - } - }, - "/my/ships/{shipSymbol}/transfer": { - "post": { - "description": "Transfer cargo between ships.\n\nThe receiving ship must be in the same waypoint as the transferring ship, and it must able to hold the additional cargo after the transfer is complete. Both ships also must be in the same state, either both are docked or both are orbiting.\n\nThe response body's cargo shows the cargo of the transferring ship after the transfer is complete.", - "operationId": "transfer-cargo", - "requestBody": { - "content": { - "application/json": { - "schema": { - "title": "Transfer Cargo Request", - "type": "object", - "properties": { - "tradeSymbol": { - "$ref": "../models/TradeSymbol.json" - }, - "units": { - "type": "integer", - "description": "Amount of units to transfer." - }, - "shipSymbol": { - "type": "string", - "description": "The symbol of the ship to transfer to." + } + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "fuel": { + "$ref": "../models/ShipFuel.json" + }, + "transaction": { + "$ref": "../models/MarketTransaction.json" + } + }, + "required": [ + "agent", + "fuel", + "transaction" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" } - }, - "required": [ - "tradeSymbol", - "units", - "shipSymbol" - ] + } + }, + "description": "Refueled successfully." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Refuel Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" } } - } - }, - "responses": { - "200": { + ] + } + }, + "/my/ships/{shipSymbol}/purchase": { + "post": { + "description": "Purchase cargo from a market.\n\nThe ship must be docked in a waypoint that has `Marketplace` trait, and the market must be selling a good to be able to purchase it.\n\nThe maximum amount of units of a good that can be purchased in each transaction are denoted by the `tradeVolume` value of the good, which can be viewed by using the Get Market action.\n\nPurchased goods are added to the ship's cargo hold.", + "operationId": "purchase-cargo", + "requestBody": { "content": { "application/json": { "schema": { - "title": "Transfer Cargo 200 Response", + "title": "Purchase Cargo Request", "type": "object", "properties": { - "data": { - "type": "object", - "required": [ - "cargo" - ], - "properties": { - "cargo": { - "$ref": "../models/ShipCargo.json" - } - } + "symbol": { + "$ref": "../models/TradeSymbol.json" + }, + "units": { + "type": "integer", + "description": "Amounts of units to purchase." } }, "required": [ - "data" + "symbol", + "units" ] } } - }, - "description": "Transfer successful." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Transfer Cargo", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The transferring ship's symbol." - } - ] - } - }, - "/my/ships/{shipSymbol}/negotiate/contract": { - "post": { - "description": "Negotiate a new contract with the HQ.\n\nIn order to negotiate a new contract, an agent must not have ongoing or offered contracts over the allowed maximum amount. Currently the maximum contracts an agent can have at a time is 1.\n\nOnce a contract is negotiated, it is added to the list of contracts offered to the agent, which the agent can then accept. \n\nThe ship must be present at any waypoint with a faction present to negotiate a contract with that faction.", - "operationId": "negotiateContract", - "responses": { - "201": { - "content": { - "application/json": { - "schema": { - "title": "Negotiate Contract 200 Response", - "description": "", - "properties": { - "data": { - "properties": { - "contract": { - "$ref": "../models/Contract.json" - } - }, - "required": [ - "contract" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - }, - "description": "Successfully negotiated a new contract." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Negotiate Contract", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The ship's symbol." - } - ] - } - }, - "/my/ships/{shipSymbol}/mounts": { - "get": { - "description": "Get the mounts installed on a ship.", - "operationId": "get-mounts", - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "title": "Get Mounts 200 Response", - "description": "", - "properties": { - "data": { - "items": { - "$ref": "../models/ShipMount.json" - }, - "type": "array" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - }, - "description": "Got installed mounts." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Get Mounts", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The ship's symbol." - } - ] - } - }, - "/my/ships/{shipSymbol}/mounts/install": { - "post": { - "description": "Install a mount on a ship.\n\nIn order to install a mount, the ship must be docked and located in a waypoint that has a `Shipyard` trait. The ship also must have the mount to install in its cargo hold.\n\nAn installation fee will be deduced by the Shipyard for installing the mount on the ship. ", - "operationId": "install-mount", - "requestBody": { - "content": { - "application/json": { - "schema": { - "title": "Install Mount Request", - "properties": { - "symbol": { - "type": "string" - } - }, - "required": [ - "symbol" - ], - "type": "object" - } } - } - }, - "responses": { - "201": { - "content": { - "application/json": { - "schema": { - "title": "Install Mount 201 Response", - "type": "object", - "properties": { - "data": { - "type": "object", - "required": [ - "agent", - "mounts", - "cargo", - "transaction" - ], - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "mounts": { - "type": "array", - "description": "List of installed mounts after the installation of the new mount.", - "items": { - "$ref": "../models/ShipMount.json" + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "title": "Purchase Cargo 201 Response", + "description": "", + "properties": { + "data": { + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { + "$ref": "../models/MarketTransaction.json" } }, - "cargo": { - "$ref": "../models/ShipCargo.json" - }, - "transaction": { - "$ref": "../models/ShipModificationTransaction.json" - } + "required": [ + "cargo", + "transaction", + "agent" + ], + "type": "object" } - } - }, - "required": [ - "data" - ] + }, + "required": [ + "data" + ], + "type": "object" + } } - } - }, - "description": "Successfully installed the mount." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Install Mount", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The ship's symbol." - } - ] - } - }, - "/my/ships/{shipSymbol}/mounts/remove": { - "post": { - "description": "Remove a mount from a ship.\n\nThe ship must be docked in a waypoint that has the `Shipyard` trait, and must have the desired mount that it wish to remove installed.\n\nA removal fee will be deduced from the agent by the Shipyard.", - "operationId": "remove-mount", - "requestBody": { - "content": { - "application/json": { + }, + "description": "Purchased goods successfully." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Purchase Cargo", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, "schema": { - "title": "Remove Mount Request", - "type": "object", - "properties": { - "symbol": { - "type": "string", - "description": "The symbol of the mount to remove." - } - }, - "required": [ - "symbol" - ] - } + "type": "string" + }, + "description": "The ship's symbol." } - } - }, - "responses": { - "201": { + ] + } + }, + "/my/ships/{shipSymbol}/transfer": { + "post": { + "description": "Transfer cargo between ships.\n\nThe receiving ship must be in the same waypoint as the transferring ship, and it must able to hold the additional cargo after the transfer is complete. Both ships also must be in the same state, either both are docked or both are orbiting.\n\nThe response body's cargo shows the cargo of the transferring ship after the transfer is complete.", + "operationId": "transfer-cargo", + "requestBody": { "content": { "application/json": { "schema": { - "title": "Remove Mount 201 Response", + "title": "Transfer Cargo Request", "type": "object", "properties": { - "data": { - "type": "object", - "required": [ - "agent", - "mounts", - "cargo", - "transaction" - ], - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "mounts": { - "type": "array", - "description": "List of installed mounts after the removal of the selected mount.", - "items": { - "$ref": "../models/ShipMount.json" - } - }, - "cargo": { - "$ref": "../models/ShipCargo.json" - }, - "transaction": { - "$ref": "../models/ShipModificationTransaction.json" - } - } + "tradeSymbol": { + "$ref": "../models/TradeSymbol.json" + }, + "units": { + "type": "integer", + "description": "Amount of units to transfer." + }, + "shipSymbol": { + "type": "string", + "description": "The symbol of the ship to transfer to." } }, "required": [ - "data" + "tradeSymbol", + "units", + "shipSymbol" ] } } - }, - "description": "Successfully removed the mount." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Remove Mount", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The ship's symbol." - } - ] - } - }, - "/my/ships/{shipSymbol}/scrap": { - "get": { - "x-preview-feature": true, - "description": "Get the amount of value that will be returned when scrapping a ship.", - "operationId": "get-scrap-ship", - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", - "properties": { - "data": { - "properties": { - "transaction": { - "$ref": "../models/ScrapTransaction.json" - } - }, - "required": [ - "transaction" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - }, - "description": "Successfully retrieved the amount of value that will be returned when scrapping a ship." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Get Scrap Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" } - } - ] - }, - "post": { - "x-preview-feature": true, - "description": "Scrap a ship, removing it from the game and returning a portion of the ship's value to the agent. The ship must be docked in a waypoint that has the `Shipyard` trait in order to use this function. To preview the amount of value that will be returned, use the Get Ship action.", - "operationId": "scrap-ship", - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", - "properties": { - "data": { - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "transaction": { - "$ref": "../models/ScrapTransaction.json" + }, + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "title": "Transfer Cargo 200 Response", + "type": "object", + "properties": { + "data": { + "type": "object", + "required": [ + "cargo" + ], + "properties": { + "cargo": { + "$ref": "../models/ShipCargo.json" + } } - }, - "required": [ - "agent", - "transaction" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" + } + }, + "required": [ + "data" + ] + } } - } - }, - "description": "Ship scrapped successfully." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Scrap Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + }, + "description": "Transfer successful." } - } - ] - } - }, - "/my/ships/{shipSymbol}/repair": { - "get": { - "x-preview-feature": true, - "description": "Get the cost of repairing a ship.", - "operationId": "get-repair-ship", - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", - "properties": { - "data": { - "properties": { - "transaction": { - "$ref": "../models/RepairTransaction.json" - } - }, - "required": [ - "transaction" - ], - "type": "object" - } - }, - "required": [ - "data" - ], - "type": "object" - } - } - }, - "description": "Successfully retrieved the cost of repairing a ship." - } - }, - "security": [ - { - "AgentToken": [] - } - ], - "summary": "Get Repair Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + }, + "security": [ + { + "AgentToken": [] } - } - ] - }, - "post": { - "x-preview-feature": true, - "description": "Repair a ship, restoring the ship to maximum condition. The ship must be docked at a waypoint that has the `Shipyard` trait in order to use this function. To preview the cost of repairing the ship, use the Get action.", - "operationId": "repair-ship", - "responses": { - "200": { - "content": { - "application/json": { - "schema": { - "description": "", - "properties": { - "data": { - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "ship": { - "$ref": "../models/Ship.json" + ], + "summary": "Transfer Cargo", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The transferring ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/negotiate/contract": { + "post": { + "description": "Negotiate a new contract with the HQ.\n\nIn order to negotiate a new contract, an agent must not have ongoing or offered contracts over the allowed maximum amount. Currently the maximum contracts an agent can have at a time is 1.\n\nOnce a contract is negotiated, it is added to the list of contracts offered to the agent, which the agent can then accept. \n\nThe ship must be present at any waypoint with a faction present to negotiate a contract with that faction.", + "operationId": "negotiateContract", + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "title": "Negotiate Contract 200 Response", + "description": "", + "properties": { + "data": { + "properties": { + "contract": { + "$ref": "../models/Contract.json" + } + }, + "required": [ + "contract" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "Successfully negotiated a new contract." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Negotiate Contract", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/mounts": { + "get": { + "description": "Get the mounts installed on a ship.", + "operationId": "get-mounts", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "title": "Get Mounts 200 Response", + "description": "", + "properties": { + "data": { + "items": { + "$ref": "../models/ShipMount.json" + }, + "type": "array" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "Got installed mounts." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Get Mounts", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/mounts/install": { + "post": { + "description": "Install a mount on a ship.\n\nIn order to install a mount, the ship must be docked and located in a waypoint that has a `Shipyard` trait. The ship also must have the mount to install in its cargo hold.\n\nAn installation fee will be deduced by the Shipyard for installing the mount on the ship. ", + "operationId": "install-mount", + "requestBody": { + "content": { + "application/json": { + "schema": { + "title": "Install Mount Request", + "properties": { + "symbol": { + "type": "string" + } + }, + "required": [ + "symbol" + ], + "type": "object" + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "title": "Install Mount 201 Response", + "type": "object", + "properties": { + "data": { + "type": "object", + "required": [ + "agent", + "mounts", + "cargo", + "transaction" + ], + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "mounts": { + "type": "array", + "description": "List of installed mounts after the installation of the new mount.", + "items": { + "$ref": "../models/ShipMount.json" + } + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { + "$ref": "../models/ShipModificationTransaction.json" + } + } + } + }, + "required": [ + "data" + ] + } + } + }, + "description": "Successfully installed the mount." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Install Mount", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/mounts/remove": { + "post": { + "description": "Remove a mount from a ship.\n\nThe ship must be docked in a waypoint that has the `Shipyard` trait, and must have the desired mount that it wish to remove installed.\n\nA removal fee will be deduced from the agent by the Shipyard.", + "operationId": "remove-mount", + "requestBody": { + "content": { + "application/json": { + "schema": { + "title": "Remove Mount Request", + "type": "object", + "properties": { + "symbol": { + "type": "string", + "description": "The symbol of the mount to remove." + } + }, + "required": [ + "symbol" + ] + } + } + } + }, + "responses": { + "201": { + "content": { + "application/json": { + "schema": { + "title": "Remove Mount 201 Response", + "type": "object", + "properties": { + "data": { + "type": "object", + "required": [ + "agent", + "mounts", + "cargo", + "transaction" + ], + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "mounts": { + "type": "array", + "description": "List of installed mounts after the removal of the selected mount.", + "items": { + "$ref": "../models/ShipMount.json" + } + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { + "$ref": "../models/ShipModificationTransaction.json" + } + } + } + }, + "required": [ + "data" + ] + } + } + }, + "description": "Successfully removed the mount." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Remove Mount", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The ship's symbol." + } + ] + } + }, + "/my/ships/{shipSymbol}/scrap": { + "get": { + "x-preview-feature": true, + "description": "Get the amount of value that will be returned when scrapping a ship.", + "operationId": "get-scrap-ship", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "properties": { + "transaction": { + "$ref": "../models/ScrapTransaction.json" + } + }, + "required": [ + "transaction" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "Successfully retrieved the amount of value that will be returned when scrapping a ship." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Get Scrap Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + }, + "post": { + "x-preview-feature": true, + "description": "Scrap a ship, removing it from the game and returning a portion of the ship's value to the agent. The ship must be docked in a waypoint that has the `Shipyard` trait in order to use this function. To preview the amount of value that will be returned, use the Get Ship action.", + "operationId": "scrap-ship", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "transaction": { + "$ref": "../models/ScrapTransaction.json" + } + }, + "required": [ + "agent", + "transaction" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "Ship scrapped successfully." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Scrap Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + } + }, + "/my/ships/{shipSymbol}/repair": { + "get": { + "x-preview-feature": true, + "description": "Get the cost of repairing a ship.", + "operationId": "get-repair-ship", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "properties": { + "transaction": { + "$ref": "../models/RepairTransaction.json" + } }, - "transaction": { - "$ref": "../models/RepairTransaction.json" + "required": [ + "transaction" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "Successfully retrieved the cost of repairing a ship." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Get Repair Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + }, + "post": { + "x-preview-feature": true, + "description": "Repair a ship, restoring the ship to maximum condition. The ship must be docked at a waypoint that has the `Shipyard` trait in order to use this function. To preview the cost of repairing the ship, use the Get action.", + "operationId": "repair-ship", + "responses": { + "200": { + "content": { + "application/json": { + "schema": { + "description": "", + "properties": { + "data": { + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "ship": { + "$ref": "../models/Ship.json" + }, + "transaction": { + "$ref": "../models/RepairTransaction.json" + } + }, + "required": [ + "agent", + "ship", + "transaction" + ], + "type": "object" + } + }, + "required": [ + "data" + ], + "type": "object" + } + } + }, + "description": "Ship repaired successfully." + } + }, + "security": [ + { + "AgentToken": [] + } + ], + "summary": "Repair Ship", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "description": "The ship symbol.", + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + } + } + ] + } + }, + "/market/supply-chain": { + "get": { + "summary": "Get Supply Chain", + "description": "Describes which import and exports map to each other.", + "parameters": [], + "operationId": "get-supply-chain", + "responses": { + "200": { + "description": "Successfully retrieved the supply chain information", + "content": { + "application/json": { + "schema": { + "type": "object", + "x-examples": { + "Example 1": { + "data": { + "exportToImportMap": { + "LIQUID_HYDROGEN": [ + "MACHINERY" + ], + "LIQUID_NITROGEN": [ + "MACHINERY" + ] + } + } + } + }, + "properties": { + "data": { + "type": "object", + "properties": { + "exportToImportMap": { + "type": "object", + "properties": { + "string": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "required": [ + "exportToImportMap" + ] } }, "required": [ - "agent", - "ship", - "transaction" - ], - "type": "object" + "data" + ] } }, - "required": [ - "data" - ], - "type": "object" + "application/xml": { + "schema": { + "type": "object", + "properties": {} + } + } } } }, - "description": "Ship repaired successfully." - } - }, - "security": [ - { - "AgentToken": [] + "tags": [ + "Data" + ], + "security": [ + { + "AgentToken": [] + } + ] } - ], - "summary": "Repair Ship", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "description": "The ship symbol.", - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" + } + }, + "/my/ships/{shipSymbol}/modules": { + "get": { + "operationId": "get-ship-modules", + "summary": "Get Ship Modules", + "description": "Get the modules installed on a ship.", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The symbol of the ship" } - } - ] - } - }, - "/market/supply-chain": { - "get": { - "summary": "Get Supply Chain", - "description": "Describes which import and exports map to each other.", - "parameters": [], - "operationId": "get-supply-chain", - "responses": { - "200": { - "description": "Successfully retrieved the supply chain information", - "content": { - "application/json": { - "schema": { - "type": "object", - "x-examples": { - "Example 1": { + ], + "responses": { + "200": { + "description": "Successfully retrieved ship modules.", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "data" + ], + "properties": { "data": { - "exportToImportMap": { - "LIQUID_HYDROGEN": [ - "MACHINERY" - ], - "LIQUID_NITROGEN": [ - "MACHINERY" - ] + "type": "array", + "items": { + "$ref": "../models/ShipModule.json" } } } - }, - "properties": { - "data": { - "type": "object", - "properties": { - "exportToImportMap": { - "type": "object", - "properties": { - "string": { - "type": "array", - "items": { - "type": "string" - } - } - } - }, - "required": [ - "exportToImportMap" - ] - } - }, - "required": [ - "data" - ] - } - }, - "application/xml": { - "schema": { - "type": "object", - "properties": {} } } } } - }, + } + } + }, + "/my/ships/{shipSymbol}/modules/install": { + "post": { + "operationId": "install-ship-module", + "summary": "Install Ship Module", + "description": "Install a module on a ship. The module must be in your cargo.", "tags": [ - "Data" + "Fleet" ], - "security": [ + "parameters": [ { - "AgentToken": [] + "in": "path", + "name": "shipSymbol", + "required": true, + "schema": { + "type": "string" + }, + "description": "The symbol of the ship" } - ] - } - } - }, - "/my/ships/{shipSymbol}/modules": { - "get": { - "operationId": "get-ship-modules", - "summary": "Get Ship Modules", - "description": "Get the modules installed on a ship.", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The symbol of the ship" - } - ], - "responses": { - "200": { - "description": "Successfully retrieved ship modules.", + ], + "requestBody": { "content": { "application/json": { "schema": { "type": "object", "required": [ - "data" + "symbol" ], "properties": { - "data": { - "type": "array", - "items": { - "$ref": "../models/ShipModule.json" - } + "symbol": { + "type": "string", + "description": "The symbol of the module to install" } } } } } - } - } - } - }, - "/my/ships/{shipSymbol}/modules/install": { - "post": { - "operationId": "install-ship-module", - "summary": "Install Ship Module", - "description": "Install a module on a ship. The module must be in your cargo.", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The symbol of the ship" - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "required": [ - "symbol" - ], - "properties": { - "symbol": { - "type": "string", - "description": "The symbol of the module to install" - } - } - } - } - } - }, - "responses": { - "201": { - "description": "Successfully installed the module on the ship.", - "content": { - "application/json": { - "schema": { - "type": "object", - "required": [ - "data" - ], - "properties": { - "data": { - "type": "object", - "required": [ - "agent", - "modules", - "cargo", - "transaction" - ], - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "modules": { - "type": "array", - "items": { - "$ref": "../models/ShipModule.json" - } - }, - "cargo": { - "$ref": "../models/ShipCargo.json" - }, - "transaction": { - "type": "object", - "required": [ - "waypointSymbol", - "shipSymbol", - "tradeSymbol", - "totalPrice", - "timestamp" - ], - "properties": { - "waypointSymbol": { - "type": "string" - }, - "shipSymbol": { - "type": "string" - }, - "tradeSymbol": { - "type": "string" - }, - "totalPrice": { - "type": "integer" - }, - "timestamp": { - "type": "string" + }, + "responses": { + "201": { + "description": "Successfully installed the module on the ship.", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "data" + ], + "properties": { + "data": { + "type": "object", + "required": [ + "agent", + "modules", + "cargo", + "transaction" + ], + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "modules": { + "type": "array", + "items": { + "$ref": "../models/ShipModule.json" + } + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { + "type": "object", + "required": [ + "waypointSymbol", + "shipSymbol", + "tradeSymbol", + "totalPrice", + "timestamp" + ], + "properties": { + "waypointSymbol": { + "type": "string" + }, + "shipSymbol": { + "type": "string" + }, + "tradeSymbol": { + "type": "string" + }, + "totalPrice": { + "type": "integer" + }, + "timestamp": { + "type": "string" + } } } } @@ -4136,101 +4136,101 @@ } } } - } - }, - "/my/ships/{shipSymbol}/modules/remove": { - "post": { - "operationId": "remove-ship-module", - "summary": "Remove Ship Module", - "description": "Remove a module from a ship. The module will be placed in cargo.", - "tags": [ - "Fleet" - ], - "parameters": [ - { - "in": "path", - "name": "shipSymbol", - "required": true, - "schema": { - "type": "string" - }, - "description": "The symbol of the ship" - } - ], - "requestBody": { - "content": { - "application/json": { + }, + "/my/ships/{shipSymbol}/modules/remove": { + "post": { + "operationId": "remove-ship-module", + "summary": "Remove Ship Module", + "description": "Remove a module from a ship. The module will be placed in cargo.", + "tags": [ + "Fleet" + ], + "parameters": [ + { + "in": "path", + "name": "shipSymbol", + "required": true, "schema": { - "type": "object", - "required": [ - "symbol" - ], - "properties": { - "symbol": { - "type": "string", - "description": "The symbol of the module to remove" - } - } - } + "type": "string" + }, + "description": "The symbol of the ship" } - } - }, - "responses": { - "201": { - "description": "Successfully removed the module from the ship.", + ], + "requestBody": { "content": { "application/json": { "schema": { "type": "object", "required": [ - "data" + "symbol" ], "properties": { - "data": { - "type": "object", - "required": [ - "agent", - "modules", - "cargo", - "transaction" - ], - "properties": { - "agent": { - "$ref": "../models/Agent.json" - }, - "modules": { - "type": "array", - "items": { - "$ref": "../models/ShipModule.json" - } - }, - "cargo": { - "$ref": "../models/ShipCargo.json" - }, - "transaction": { - "type": "object", - "required": [ - "waypointSymbol", - "shipSymbol", - "tradeSymbol", - "totalPrice", - "timestamp" - ], - "properties": { - "waypointSymbol": { - "type": "string" - }, - "shipSymbol": { - "type": "string" - }, - "tradeSymbol": { - "type": "string" - }, - "totalPrice": { - "type": "integer" - }, - "timestamp": { - "type": "string" + "symbol": { + "type": "string", + "description": "The symbol of the module to remove" + } + } + } + } + } + }, + "responses": { + "201": { + "description": "Successfully removed the module from the ship.", + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "data" + ], + "properties": { + "data": { + "type": "object", + "required": [ + "agent", + "modules", + "cargo", + "transaction" + ], + "properties": { + "agent": { + "$ref": "../models/Agent.json" + }, + "modules": { + "type": "array", + "items": { + "$ref": "../models/ShipModule.json" + } + }, + "cargo": { + "$ref": "../models/ShipCargo.json" + }, + "transaction": { + "type": "object", + "required": [ + "waypointSymbol", + "shipSymbol", + "tradeSymbol", + "totalPrice", + "timestamp" + ], + "properties": { + "waypointSymbol": { + "type": "string" + }, + "shipSymbol": { + "type": "string" + }, + "tradeSymbol": { + "type": "string" + }, + "totalPrice": { + "type": "integer" + }, + "timestamp": { + "type": "string" + } } } } From a173ac6e3afca346a919d6f7ed94e7bbfb32bfc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?feba66=20Felix=20Baumk=C3=B6tter?= Date: Fri, 28 Feb 2025 13:00:50 +0100 Subject: [PATCH 6/6] fixed errors that openapi generator complained about --- reference/SpaceTraders.json | 70 +++++++++++++++++-------------------- 1 file changed, 32 insertions(+), 38 deletions(-) diff --git a/reference/SpaceTraders.json b/reference/SpaceTraders.json index bc85cea..6f2cd96 100644 --- a/reference/SpaceTraders.json +++ b/reference/SpaceTraders.json @@ -3928,20 +3928,6 @@ "application/json": { "schema": { "type": "object", - "x-examples": { - "Example 1": { - "data": { - "exportToImportMap": { - "LIQUID_HYDROGEN": [ - "MACHINERY" - ], - "LIQUID_NITROGEN": [ - "MACHINERY" - ] - } - } - } - }, "properties": { "data": { "type": "object", @@ -3956,35 +3942,43 @@ } } } - }, - "required": [ - "exportToImportMap" - ] + } + }, + "required": [ + "exportToImportMap" + ] + } + }, + "required": [ + "data" + ], + "x-examples": { + "Example 1": { + "data": { + "exportToImportMap": { + "LIQUID_HYDROGEN": [ + "MACHINERY" + ], + "LIQUID_NITROGEN": [ + "MACHINERY" + ] + } } - }, - "required": [ - "data" - ] - } - }, - "application/xml": { - "schema": { - "type": "object", - "properties": {} + } } } } } - }, - "tags": [ - "Data" - ], - "security": [ - { - "AgentToken": [] - } - ] - } + } + }, + "tags": [ + "Data" + ], + "security": [ + { + "AgentToken": [] + } + ] } }, "/my/ships/{shipSymbol}/modules": {