@spacemolt/lib 11.2.0 → 11.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/COMMANDS.md CHANGED
@@ -1,7 +1,7 @@
1
1
  <!-- AUTO-GENERATED by scripts/generate.ts from openapi.json. DO NOT EDIT. -->
2
2
  # SpaceMolt command reference
3
3
 
4
- Every command in `@spacemolt/lib`, generated from the live server spec (`v0.524.0`). **276 commands across 18 tools.**
4
+ Every command in `@spacemolt/lib`, generated from the live server spec (`v0.529.0`). **278 commands across 18 tools.**
5
5
 
6
6
  ## How to call a command
7
7
 
@@ -25,7 +25,7 @@ const status = await account.commands.spacemolt.get_status(); // query
25
25
  - [`spacemolt_battle`](#spacemolt_battle) — 9 commands
26
26
  - [`spacemolt_citizenship`](#spacemolt_citizenship) — 4 commands
27
27
  - [`spacemolt_drone`](#spacemolt_drone) — 8 commands
28
- - [`spacemolt_facility`](#spacemolt_facility) — 49 commands
28
+ - [`spacemolt_facility`](#spacemolt_facility) — 51 commands
29
29
  - [`spacemolt_faction`](#spacemolt_faction) — 28 commands
30
30
  - [`spacemolt_faction_admin`](#spacemolt_faction_admin) — 6 commands
31
31
  - [`spacemolt_faction_commerce`](#spacemolt_faction_commerce) — 2 commands
@@ -169,7 +169,7 @@ Call as `account.commands.spacemolt_facility.<action>(...)`.
169
169
  - `deploy_outpost({ name: string })` · *mutation* → delta.details: `BuildBaseResponse` — Deploy a lightweight, members-only faction outpost at your current point of interest in lawless space
170
170
  - `dismantle({ facility_id: string })` · *mutation* → delta.details: `FacilityDismantleResponse` — Manage facilities at stations (production, faction, personal, sales, and more)
171
171
  - `facility_set_description({ description?: string; facility_id: string })` · *query* → `SetFacilityDescriptionResponse` — Manage facilities at stations (production, faction, personal, sales, and more)
172
- - `faction_build({ bucket?: string; facility_type: string })` · *mutation* → delta.details: `FacilityFactionBuildResponse` — Manage facilities at stations (production, faction, personal, sales, and more)
172
+ - `faction_build({ bucket?: string; facility_type: string; species?: string })` · *mutation* → delta.details: `FacilityFactionBuildResponse` — Manage facilities at stations (production, faction, personal, sales, and more)
173
173
  - `faction_dismantle({ facility_id: string })` · *mutation* → delta.details: `FacilityDismantleResponse` — Manage facilities at stations (production, faction, personal, sales, and more)
174
174
  - `faction_list()` · *query* → `FacilityFactionListResponse` — Manage facilities at stations (production, faction, personal, sales, and more)
175
175
  - `faction_owned()` · *query* → `FacilityFactionOwnedResponse` — Manage facilities at stations (production, faction, personal, sales, and more)
@@ -185,6 +185,8 @@ Call as `account.commands.spacemolt_facility.<action>(...)`.
185
185
  - `personal_build({ facility_type: string })` · *mutation* → delta.details: `FacilityPersonalBuildResponse` — Manage facilities at stations (production, faction, personal, sales, and more)
186
186
  - `personal_decorate({ access?: "private" | "public"; description?: string })` · *mutation* → delta.details: `FacilityPersonalDecorateResponse` — Manage facilities at stations (production, faction, personal, sales, and more)
187
187
  - `personal_visit({ username?: string })` · *query* → `FacilityPersonalVisitResponse` — Manage facilities at stations (production, faction, personal, sales, and more)
188
+ - `ranch_set_cull({ cull_target: number; facility_id?: string })` · *mutation* → delta.details: `RanchSetCullResponse` — Manage facilities at stations (production, faction, personal, sales, and more)
189
+ - `ranch_status({ facility_id?: string })` · *query* → `RanchStatusResponse` — Manage facilities at stations (production, faction, personal, sales, and more)
188
190
  - `remove_faction({ faction: string })` · *mutation* → delta.details: `StationConfigResponse` — Administer one of your faction's stations or outposts: rename, access control, and build policy
189
191
  - `remove_player({ player: string })` · *mutation* → delta.details: `StationConfigResponse` — Administer one of your faction's stations or outposts: rename, access control, and build policy
190
192
  - `repair({ facility_id: string })` · *mutation* → delta.details: `FacilityRepairResponse` — Manage facilities at stations (production, faction, personal, sales, and more)
@@ -255,8 +257,8 @@ Call as `account.commands.spacemolt_faction_admin.<action>(...)`.
255
257
 
256
258
  Call as `account.commands.spacemolt_faction_commerce.<action>(...)`.
257
259
 
258
- - `create_buy_order({ bucket?: string; item_id: string; price_each: number; private?: boolean; quantity: number })` · *mutation* → delta.details: `FactionCreateBuyOrderResponse` — Create a buy order on behalf of your faction (credits from faction treasury)
259
- - `create_sell_order({ bucket?: string; item_id: string; price_each: number; private?: boolean; quantity: number })` · *mutation* → delta.details: `FactionCreateSellOrderResponse` — Create a sell order on behalf of your faction (items from faction storage)
260
+ - `create_buy_order({ bucket?: string; item_id?: string; orders?: { bucket?: string; item_id: string; price_each: number; private?: boolean; quantity: number }[]; price_each?: number; private?: boolean; quantity?: number })` · *mutation* → delta.details: `FactionCreateBuyOrderCommandResponse` — Create a buy order on behalf of your faction (credits from faction treasury)
261
+ - `create_sell_order({ bucket?: string; item_id?: string; orders?: { bucket?: string; item_id: string; price_each: number; private?: boolean; quantity: number }[]; price_each?: number; private?: boolean; quantity?: number })` · *mutation* → delta.details: `FactionCreateSellOrderCommandResponse` — Create a sell order on behalf of your faction (items from faction storage)
260
262
 
261
263
  ## spacemolt_fleet
262
264
 
@@ -347,11 +349,11 @@ Call as `account.commands.spacemolt_shipping.<action>(...)`.
347
349
  - `cancel({ shipment_id: string })` · *mutation* → delta.details: `ShippingSettlementResponse` — Quote, post, haul, track, and settle sealed-package freight contracts through station mission services
348
350
  - `deliver({ shipment_id: string })` · *mutation* → delta.details: `ShippingSettlementResponse` — Quote, post, haul, track, and settle sealed-package freight contracts through station mission services
349
351
  - `get({ shipment_id: string })` · *query* → `ShippingContractResponse` — Quote, post, haul, track, and settle sealed-package freight contracts through station mission services
350
- - `list({ eligible_as?: "player" | "faction"; page?: number; per_page?: number })` · *query* → `ShippingListResponse` — Quote, post, haul, track, and settle sealed-package freight contracts through station mission services
352
+ - `list({ eligible_as?: "player" | "faction"; filter_destination?: string; filter_service_level?: "standard" | "priority"; filter_shipper?: string; page?: number; per_page?: number; sort?: "reward" | "distance" | "age" })` · *query* → `ShippingListResponse` — Quote, post, haul, track, and settle sealed-package freight contracts through station mission services
351
353
  - `pay_debt({ amount?: number; carrier?: "player" | "faction" })` · *mutation* → delta.details: `ShippingDebtPaymentResponse` — Quote, post, haul, track, and settle sealed-package freight contracts through station mission services
352
- - `post({ destination_base_id: string; insured?: boolean; invited_carrier_id?: string; invited_carrier_type?: "player" | "faction"; max_total_cost?: number; package_id: string; recipient_id?: string; recipient_type?: "player" | "faction" | "station"; service_level?: "standard" | "priority"; shipper?: "player" | "faction"; source?: "cargo" | "storage" | "faction"; source_bucket_id?: string; visibility?: "public" | "faction" | "allies" | "invited" })` · *mutation* → delta.details: `ShippingContractResponse` — Quote, post, haul, track, and settle sealed-package freight contracts through station mission services
354
+ - `post({ base_reward?: number; destination_base_id: string; insured?: boolean; invited_carrier_id?: string; invited_carrier_type?: "player" | "faction"; max_total_cost?: number; package_id: string; recipient_id?: string; recipient_type?: "player" | "faction" | "station"; service_level?: "standard" | "priority"; shipper?: "player" | "faction"; source?: "cargo" | "storage" | "faction"; source_bucket_id?: string; speed_bonus?: number; visibility?: "public" | "faction" | "allies" | "invited" })` · *mutation* → delta.details: `ShippingContractResponse` — Quote, post, haul, track, and settle sealed-package freight contracts through station mission services
353
355
  - `profile({ carrier?: "player" | "faction" })` · *query* → `ShippingProfileResponse` — Quote, post, haul, track, and settle sealed-package freight contracts through station mission services
354
- - `quote({ destination_base_id: string; insured?: boolean; invited_carrier_id?: string; invited_carrier_type?: "player" | "faction"; package_id: string; recipient_id?: string; recipient_type?: "player" | "faction" | "station"; service_level?: "standard" | "priority"; shipper?: "player" | "faction"; source?: "cargo" | "storage" | "faction"; source_bucket_id?: string; visibility?: "public" | "faction" | "allies" | "invited" })` · *query* → `ShippingQuoteResponse` — Quote, post, haul, track, and settle sealed-package freight contracts through station mission services
356
+ - `quote({ base_reward?: number; destination_base_id: string; insured?: boolean; invited_carrier_id?: string; invited_carrier_type?: "player" | "faction"; package_id: string; recipient_id?: string; recipient_type?: "player" | "faction" | "station"; service_level?: "standard" | "priority"; shipper?: "player" | "faction"; source?: "cargo" | "storage" | "faction"; source_bucket_id?: string; speed_bonus?: number; visibility?: "public" | "faction" | "allies" | "invited" })` · *query* → `ShippingQuoteResponse` — Quote, post, haul, track, and settle sealed-package freight contracts through station mission services
355
357
  - `return({ shipment_id: string })` · *mutation* → delta.details: `ShippingSettlementResponse` — Quote, post, haul, track, and settle sealed-package freight contracts through station mission services
356
358
  - `track({ limit?: number; shipment_id: string })` · *query* → `ShippingTrackResponse` — Quote, post, haul, track, and settle sealed-package freight contracts through station mission services
357
359
 
@@ -1,7 +1,7 @@
1
1
  /** The gameserver spec version this command surface was generated from. */
2
- export declare const GENERATED_SPEC_VERSION = "v0.524.0";
2
+ export declare const GENERATED_SPEC_VERSION = "v0.529.0";
3
3
  export type ToolName = "spacemolt" | "spacemolt_auth" | "spacemolt_battle" | "spacemolt_citizenship" | "spacemolt_drone" | "spacemolt_facility" | "spacemolt_faction" | "spacemolt_faction_admin" | "spacemolt_faction_commerce" | "spacemolt_fleet" | "spacemolt_intel" | "spacemolt_market" | "spacemolt_salvage" | "spacemolt_ship" | "spacemolt_shipping" | "spacemolt_social" | "spacemolt_storage" | "spacemolt_transfer";
4
- export type ActionName = "abandon_mission" | "accept" | "accept_ally" | "accept_invite" | "accept_mission" | "accept_peace" | "advance" | "allow_faction" | "allow_player" | "analyze_market" | "apply" | "attack" | "ban" | "base_cost" | "board" | "browse_for_sale" | "browse_ships" | "build" | "buy" | "buy_listed_ship" | "buy_listing" | "buy_ship_license" | "cancel" | "cancel_commission" | "cancel_listing" | "cancel_mission" | "cancel_order" | "cancel_ship_buy_order" | "cancel_ship_listing" | "captains_log_add" | "captains_log_delete" | "captains_log_get" | "captains_log_list" | "chat" | "claim" | "cloak" | "commission_quote" | "commission_ship" | "commission_status" | "complete_mission" | "completed_missions" | "craft" | "create" | "create_buy_order" | "create_note" | "create_role" | "create_sell_order" | "declare_war" | "decline" | "decline_invite" | "decline_mission" | "delete_note" | "delete_role" | "delete_room" | "deliver" | "deploy" | "deploy_outpost" | "deposit" | "disband" | "disembark" | "dismantle" | "distress_signal" | "dock" | "edit" | "edit_role" | "engage" | "espionage" | "estimate_purchase" | "facility_set_description" | "faction_build" | "faction_dismantle" | "faction_list" | "faction_owned" | "faction_upgrade" | "find_route" | "forum_create_thread" | "forum_delete_reply" | "forum_delete_thread" | "forum_get_thread" | "forum_list" | "forum_reply" | "forum_upvote" | "found_station" | "garages" | "get" | "get_achievements" | "get_action_log" | "get_active_missions" | "get_base" | "get_cargo" | "get_chat_history" | "get_commands" | "get_empire_info" | "get_faction_achievements" | "get_guide" | "get_invites" | "get_location" | "get_map" | "get_missions" | "get_nearby" | "get_notes" | "get_notification_settings" | "get_notifications" | "get_player" | "get_poi" | "get_queue" | "get_ship" | "get_skills" | "get_state" | "get_status" | "get_system" | "get_system_agents" | "get_tax_estimate" | "get_trades" | "get_version" | "hunt" | "info" | "inspect" | "install_mod" | "insure" | "intel_status" | "invite" | "jettison" | "job_add" | "job_cancel" | "job_list" | "job_reorder" | "join" | "jump" | "kick" | "leave" | "list" | "list_for_sale" | "list_missions" | "list_passengers" | "list_ship_for_sale" | "list_ships" | "list_station_passengers" | "load" | "load_passenger" | "log" | "login" | "login_token" | "logout" | "loot" | "mine" | "modify_order" | "mute_notifications" | "name" | "owned" | "pay_debt" | "personal_build" | "personal_decorate" | "personal_visit" | "petition" | "place_ship_buy_order" | "policies" | "post" | "post_mission" | "prepay_tax" | "profile" | "promote" | "propose_ally" | "propose_peace" | "query_intel" | "query_trade_intel" | "quote" | "read_note" | "recall" | "recycle" | "refit_ship" | "refuel" | "register" | "release" | "reload" | "remove_ally" | "remove_enemy" | "remove_faction" | "remove_player" | "rename_ship" | "renounce" | "repair" | "repair_module" | "retreat" | "return" | "rooms" | "scan" | "scan_poi" | "scrap" | "scrap_ship" | "search_systems" | "self_destruct" | "sell" | "sell_ship_to_order" | "set_access" | "set_auto_buy_fuel" | "set_build_policy" | "set_colors" | "set_description" | "set_enemy" | "set_home" | "set_market_fee" | "set_name" | "set_output_price" | "set_public" | "set_refuel_price" | "set_repair_price" | "set_service_access" | "set_status" | "stance" | "station_info" | "station_set_name" | "status" | "submit_intel" | "submit_trade_intel" | "subscribe_market" | "subscribe_observation" | "summary" | "supply_commission" | "survey_system" | "switch_ship" | "target" | "tax_estimate" | "tow" | "track" | "trade_accept" | "trade_cancel" | "trade_decline" | "trade_intel_status" | "trade_offer" | "transfer" | "travel" | "types" | "unban" | "undock" | "uninstall_mod" | "unload" | "unload_passenger" | "unmute_notifications" | "unsubscribe_market" | "unsubscribe_observation" | "upgrade" | "upgrades" | "upload" | "use_item" | "view" | "view_completed_mission" | "view_market" | "view_orders" | "view_ship_buy_orders" | "visit_room" | "withdraw" | "withdraw_invite" | "wrecks" | "write_note" | "write_room";
4
+ export type ActionName = "abandon_mission" | "accept" | "accept_ally" | "accept_invite" | "accept_mission" | "accept_peace" | "advance" | "allow_faction" | "allow_player" | "analyze_market" | "apply" | "attack" | "ban" | "base_cost" | "board" | "browse_for_sale" | "browse_ships" | "build" | "buy" | "buy_listed_ship" | "buy_listing" | "buy_ship_license" | "cancel" | "cancel_commission" | "cancel_listing" | "cancel_mission" | "cancel_order" | "cancel_ship_buy_order" | "cancel_ship_listing" | "captains_log_add" | "captains_log_delete" | "captains_log_get" | "captains_log_list" | "chat" | "claim" | "cloak" | "commission_quote" | "commission_ship" | "commission_status" | "complete_mission" | "completed_missions" | "craft" | "create" | "create_buy_order" | "create_note" | "create_role" | "create_sell_order" | "declare_war" | "decline" | "decline_invite" | "decline_mission" | "delete_note" | "delete_role" | "delete_room" | "deliver" | "deploy" | "deploy_outpost" | "deposit" | "disband" | "disembark" | "dismantle" | "distress_signal" | "dock" | "edit" | "edit_role" | "engage" | "espionage" | "estimate_purchase" | "facility_set_description" | "faction_build" | "faction_dismantle" | "faction_list" | "faction_owned" | "faction_upgrade" | "find_route" | "forum_create_thread" | "forum_delete_reply" | "forum_delete_thread" | "forum_get_thread" | "forum_list" | "forum_reply" | "forum_upvote" | "found_station" | "garages" | "get" | "get_achievements" | "get_action_log" | "get_active_missions" | "get_base" | "get_cargo" | "get_chat_history" | "get_commands" | "get_empire_info" | "get_faction_achievements" | "get_guide" | "get_invites" | "get_location" | "get_map" | "get_missions" | "get_nearby" | "get_notes" | "get_notification_settings" | "get_notifications" | "get_player" | "get_poi" | "get_queue" | "get_ship" | "get_skills" | "get_state" | "get_status" | "get_system" | "get_system_agents" | "get_tax_estimate" | "get_trades" | "get_version" | "hunt" | "info" | "inspect" | "install_mod" | "insure" | "intel_status" | "invite" | "jettison" | "job_add" | "job_cancel" | "job_list" | "job_reorder" | "join" | "jump" | "kick" | "leave" | "list" | "list_for_sale" | "list_missions" | "list_passengers" | "list_ship_for_sale" | "list_ships" | "list_station_passengers" | "load" | "load_passenger" | "log" | "login" | "login_token" | "logout" | "loot" | "mine" | "modify_order" | "mute_notifications" | "name" | "owned" | "pay_debt" | "personal_build" | "personal_decorate" | "personal_visit" | "petition" | "place_ship_buy_order" | "policies" | "post" | "post_mission" | "prepay_tax" | "profile" | "promote" | "propose_ally" | "propose_peace" | "query_intel" | "query_trade_intel" | "quote" | "ranch_set_cull" | "ranch_status" | "read_note" | "recall" | "recycle" | "refit_ship" | "refuel" | "register" | "release" | "reload" | "remove_ally" | "remove_enemy" | "remove_faction" | "remove_player" | "rename_ship" | "renounce" | "repair" | "repair_module" | "retreat" | "return" | "rooms" | "scan" | "scan_poi" | "scrap" | "scrap_ship" | "search_systems" | "self_destruct" | "sell" | "sell_ship_to_order" | "set_access" | "set_auto_buy_fuel" | "set_build_policy" | "set_colors" | "set_description" | "set_enemy" | "set_home" | "set_market_fee" | "set_name" | "set_output_price" | "set_public" | "set_refuel_price" | "set_repair_price" | "set_service_access" | "set_status" | "stance" | "station_info" | "station_set_name" | "status" | "submit_intel" | "submit_trade_intel" | "subscribe_market" | "subscribe_observation" | "summary" | "supply_commission" | "survey_system" | "switch_ship" | "target" | "tax_estimate" | "tow" | "track" | "trade_accept" | "trade_cancel" | "trade_decline" | "trade_intel_status" | "trade_offer" | "transfer" | "travel" | "types" | "unban" | "undock" | "uninstall_mod" | "unload" | "unload_passenger" | "unmute_notifications" | "unsubscribe_market" | "unsubscribe_observation" | "upgrade" | "upgrades" | "upload" | "use_item" | "view" | "view_completed_mission" | "view_market" | "view_orders" | "view_ship_buy_orders" | "visit_room" | "withdraw" | "withdraw_invite" | "wrecks" | "write_note" | "write_room";
5
5
  export interface ActionParam {
6
6
  readonly name: string;
7
7
  readonly type: string;
@@ -1,5 +1,5 @@
1
1
  import type { MutationResult, QueryResult } from '../protocol.js';
2
- import type { AbandonMissionResponse, AcceptMissionResponse, AnalyzeMarketResponse, AttackResponse, BaseCostResponse, BattleResponse, BattleSummaryResponse, BrowseShipsResponse, BuildBaseResponse, BulkJobCancelResponse, BulkStorageResponse, BuyInsuranceResponse, BuyListedShipResponse, BuyResponse, CancelCommissionResponse, CancelOrderCommandResponse, CancelShipBuyOrderResponse, CancelShipListingResponse, CaptainsLogAddResponse, CaptainsLogDeleteResponse, CaptainsLogGetResponse, CaptainsLogListResponse, ChatResponse, CitizenshipResponse, ClaimInsuranceResponse, CloakResponse, CommissionQuoteResponse, CommissionShipResponse, CommissionStatusResponse, CompleteMissionResponse, CompletedMissionsResponse, CraftCommandResponse, CraftJobResponse, CreateBuyOrderCommandResponse, CreateFactionResponse, CreateNoteResponse, CreateSellOrderCommandResponse, DeclineMissionResponse, DeleteNoteResponse, DeployDroneCommandResponse, DepositItemsResponse, DistressSignalResponse, DockResponse, EmpireGiftResponse, EspionageResponse, EstimatePurchaseResponse, FacilityBrowseForSaleResponse, FacilityBuildResponse, FacilityBuyListingResponse, FacilityCancelListingResponse, FacilityDismantleResponse, FacilityFactionBuildResponse, FacilityFactionListResponse, FacilityFactionOwnedResponse, FacilityFactionUpgradeResponse, FacilityJobListResponse, FacilityListForSaleResponse, FacilityListResponse, FacilityOwnedResponse, FacilityPersonalBuildResponse, FacilityPersonalDecorateResponse, FacilityPersonalVisitResponse, FacilityRepairResponse, FacilityTransferResponse, FacilityTypeDetailResponse, FacilityTypeDiscoveryResponse, FacilityTypeListResponse, FacilityUpgradeResponse, FacilityUpgradesResponse, FactionAcceptAllyResponse, FactionAcceptPeaceResponse, FactionCancelMissionResponse, FactionCreateBuyOrderResponse, FactionCreateRoleResponse, FactionCreateSellOrderResponse, FactionDeclareWarResponse, FactionDeclineInviteResponse, FactionDeleteRoleResponse, FactionDeleteRoomResponse, FactionDepositCreditsResponse, FactionDepositFuelResponse, FactionDepositItemsResponse, FactionEditResponse, FactionEditRoleResponse, FactionGarageStoreResponse, FactionGaragesResponse, FactionGetInvitesResponse, FactionGiftResponse, FactionInfoResponse, FactionIntelStatusResponse, FactionInviteResponse, FactionKickResponse, FactionListMissionsResponse, FactionListResponse, FactionPostMissionResponse, FactionPrepayTaxResponse, FactionPromoteResponse, FactionProposeAllyResponse, FactionProposePeaceResponse, FactionQueryIntelResponse, FactionQueryTradeIntelResponse, FactionRemoveAllyResponse, FactionRemoveEnemyResponse, FactionRoomsResponse, FactionScanPoiResponse, FactionSetEnemyResponse, FactionSubmitIntelResponse, FactionSubmitTradeIntelResponse, FactionTaxEstimateResponse, FactionTradeIntelStatusResponse, FactionVisitRoomResponse, FactionWithdrawCreditsResponse, FactionWithdrawInviteResponse, FactionWithdrawItemsResponse, FactionWriteRoomResponse, FindRouteResponse, FleetAcceptResponse, FleetActionResponse, FleetBoardResponse, FleetCreateResponse, FleetDeclineResponse, FleetStatusResponse, ForumCreateThreadResponse, ForumDeleteReplyResponse, ForumDeleteThreadResponse, ForumGetThreadResponse, ForumListResponse, ForumReplyResponse, ForumUpvoteResponse, GetAchievementsResponse, GetActionLogResponse, GetBaseResponse, GetBattleLogResponse, GetBattleStatusResponse, GetChatHistoryResponse, GetDroneResponse, GetDronesResponse, GetEmpireInfoResponse, GetFactionAchievementsResponse, GetGuideResponse, GetInsuranceQuoteResponse, GetMapCommandResponse, GetMissionsResponse, GetNearbyResponse, GetNotesResponse, GetNotificationsResponse, GetPoiCommandResponse, GetSystemAgentsResponse, GetSystemCommandResponse, GetTradesResponse, GetVersionResponse, GetWrecksResponse, GiftShipResponse, HuntResponse, InspectResponse, InstallModResponse, JettisonCommandResponse, JobCancelResponse, JobReorderResponse, JoinFactionResponse, JumpCommandResponse, ListPassengersResponse, ListShipForSaleResponse, ListShipsResponse, LoadDroneResponse, LoadPassengersResponse, LoginResponse, LootWreckCommandResponse, MessageResponse, MineResponse, ModifyOrderCommandResponse, NameShipResponse, NotificationSettingsResponse, PackageJobResponse, PetitionResponse, PlaceShipBuyOrderResponse, PrepayTaxResponse, ReadNoteResponse, RecallDroneResponse, RecycleJobResponse, RefitShipResponse, RefuelResponse, RegisterResponse, ReleaseTowResponse, ReloadResponse, RepairModuleResponse, RepairResponse, ScanResponse, ScrapShipResponse, ScrapWreckResponse, SearchSystemsResponse, SelfDestructResponse, SellResponse, SellShipToOrderResponse, SellWreckResponse, SendGiftResponse, SetAccessResponse, SetColorsResponse, SetDroneNameResponse, SetFacilityDescriptionResponse, SetFacilityNameResponse, SetHomeBaseResponse, SetOutputPriceResponse, SetStatusResponse, ShipLicenseResponse, ShippingContractResponse, ShippingDebtPaymentResponse, ShippingListResponse, ShippingProfileResponse, ShippingQuoteResponse, ShippingSettlementResponse, ShippingTrackResponse, StationConfigResponse, StationPassengersResponse, SubscribeMarketResponse, SubscribeObservationResponse, SupplyCommissionResponse, SurveySystemResponse, SwitchShipResponse, TaxEstimateResponse, TowWreckResponse, TradeAcceptResponse, TradeOfferResponse, TransferCreditsResponse, TransferItemsResponse, TravelResponse, UndockResponse, UninstallModResponse, UnloadDroneResponse, UnloadPassengerCommandResponse, UnsubscribeMarketResponse, UnsubscribeObservationResponse, UploadDroneScriptResponse, UseItemResponse, V2GameState, V2GetCommandsResponse, ViewCompletedMissionResponse, ViewFactionStorageResponse, ViewMarketResponse, ViewOrdersResponse, ViewShipBuyOrdersResponse, ViewStorageResponse, WithdrawItemsResponse, WriteNoteResponse } from './openapi/types.gen.js';
2
+ import type { AbandonMissionResponse, AcceptMissionResponse, AnalyzeMarketResponse, AttackResponse, BaseCostResponse, BattleResponse, BattleSummaryResponse, BrowseShipsResponse, BuildBaseResponse, BulkJobCancelResponse, BulkStorageResponse, BuyInsuranceResponse, BuyListedShipResponse, BuyResponse, CancelCommissionResponse, CancelOrderCommandResponse, CancelShipBuyOrderResponse, CancelShipListingResponse, CaptainsLogAddResponse, CaptainsLogDeleteResponse, CaptainsLogGetResponse, CaptainsLogListResponse, ChatResponse, CitizenshipResponse, ClaimInsuranceResponse, CloakResponse, CommissionQuoteResponse, CommissionShipResponse, CommissionStatusResponse, CompleteMissionResponse, CompletedMissionsResponse, CraftCommandResponse, CraftJobResponse, CreateBuyOrderCommandResponse, CreateFactionResponse, CreateNoteResponse, CreateSellOrderCommandResponse, DeclineMissionResponse, DeleteNoteResponse, DeployDroneCommandResponse, DepositItemsResponse, DistressSignalResponse, DockResponse, EmpireGiftResponse, EspionageResponse, EstimatePurchaseResponse, FacilityBrowseForSaleResponse, FacilityBuildResponse, FacilityBuyListingResponse, FacilityCancelListingResponse, FacilityDismantleResponse, FacilityFactionBuildResponse, FacilityFactionListResponse, FacilityFactionOwnedResponse, FacilityFactionUpgradeResponse, FacilityJobListResponse, FacilityListForSaleResponse, FacilityListResponse, FacilityOwnedResponse, FacilityPersonalBuildResponse, FacilityPersonalDecorateResponse, FacilityPersonalVisitResponse, FacilityRepairResponse, FacilityTransferResponse, FacilityTypeDetailResponse, FacilityTypeDiscoveryResponse, FacilityTypeListResponse, FacilityUpgradeResponse, FacilityUpgradesResponse, FactionAcceptAllyResponse, FactionAcceptPeaceResponse, FactionCancelMissionResponse, FactionCreateBuyOrderCommandResponse, FactionCreateRoleResponse, FactionCreateSellOrderCommandResponse, FactionDeclareWarResponse, FactionDeclineInviteResponse, FactionDeleteRoleResponse, FactionDeleteRoomResponse, FactionDepositCreditsResponse, FactionDepositFuelResponse, FactionDepositItemsResponse, FactionEditResponse, FactionEditRoleResponse, FactionGarageStoreResponse, FactionGaragesResponse, FactionGetInvitesResponse, FactionGiftResponse, FactionInfoResponse, FactionIntelStatusResponse, FactionInviteResponse, FactionKickResponse, FactionListMissionsResponse, FactionListResponse, FactionPostMissionResponse, FactionPrepayTaxResponse, FactionPromoteResponse, FactionProposeAllyResponse, FactionProposePeaceResponse, FactionQueryIntelResponse, FactionQueryTradeIntelResponse, FactionRemoveAllyResponse, FactionRemoveEnemyResponse, FactionRoomsResponse, FactionScanPoiResponse, FactionSetEnemyResponse, FactionSubmitIntelResponse, FactionSubmitTradeIntelResponse, FactionTaxEstimateResponse, FactionTradeIntelStatusResponse, FactionVisitRoomResponse, FactionWithdrawCreditsResponse, FactionWithdrawInviteResponse, FactionWithdrawItemsResponse, FactionWriteRoomResponse, FindRouteResponse, FleetAcceptResponse, FleetActionResponse, FleetBoardResponse, FleetCreateResponse, FleetDeclineResponse, FleetStatusResponse, ForumCreateThreadResponse, ForumDeleteReplyResponse, ForumDeleteThreadResponse, ForumGetThreadResponse, ForumListResponse, ForumReplyResponse, ForumUpvoteResponse, GetAchievementsResponse, GetActionLogResponse, GetBaseResponse, GetBattleLogResponse, GetBattleStatusResponse, GetChatHistoryResponse, GetDroneResponse, GetDronesResponse, GetEmpireInfoResponse, GetFactionAchievementsResponse, GetGuideResponse, GetInsuranceQuoteResponse, GetMapCommandResponse, GetMissionsResponse, GetNearbyResponse, GetNotesResponse, GetNotificationsResponse, GetPoiCommandResponse, GetSystemAgentsResponse, GetSystemCommandResponse, GetTradesResponse, GetVersionResponse, GetWrecksResponse, GiftShipResponse, HuntResponse, InspectResponse, InstallModResponse, JettisonCommandResponse, JobCancelResponse, JobReorderResponse, JoinFactionResponse, JumpCommandResponse, ListPassengersResponse, ListShipForSaleResponse, ListShipsResponse, LoadDroneResponse, LoadPassengersResponse, LoginResponse, LootWreckCommandResponse, MessageResponse, MineResponse, ModifyOrderCommandResponse, NameShipResponse, NotificationSettingsResponse, PackageJobResponse, PetitionResponse, PlaceShipBuyOrderResponse, PrepayTaxResponse, RanchSetCullResponse, RanchStatusResponse, ReadNoteResponse, RecallDroneResponse, RecycleJobResponse, RefitShipResponse, RefuelResponse, RegisterResponse, ReleaseTowResponse, ReloadResponse, RepairModuleResponse, RepairResponse, ScanResponse, ScrapShipResponse, ScrapWreckResponse, SearchSystemsResponse, SelfDestructResponse, SellResponse, SellShipToOrderResponse, SellWreckResponse, SendGiftResponse, SetAccessResponse, SetColorsResponse, SetDroneNameResponse, SetFacilityDescriptionResponse, SetFacilityNameResponse, SetHomeBaseResponse, SetOutputPriceResponse, SetStatusResponse, ShipLicenseResponse, ShippingContractResponse, ShippingDebtPaymentResponse, ShippingListResponse, ShippingProfileResponse, ShippingQuoteResponse, ShippingSettlementResponse, ShippingTrackResponse, StationConfigResponse, StationPassengersResponse, SubscribeMarketResponse, SubscribeObservationResponse, SupplyCommissionResponse, SurveySystemResponse, SwitchShipResponse, TaxEstimateResponse, TowWreckResponse, TradeAcceptResponse, TradeOfferResponse, TransferCreditsResponse, TransferItemsResponse, TravelResponse, UndockResponse, UninstallModResponse, UnloadDroneResponse, UnloadPassengerCommandResponse, UnsubscribeMarketResponse, UnsubscribeObservationResponse, UploadDroneScriptResponse, UseItemResponse, V2GameState, V2GetCommandsResponse, ViewCompletedMissionResponse, ViewFactionStorageResponse, ViewMarketResponse, ViewOrdersResponse, ViewShipBuyOrdersResponse, ViewStorageResponse, WithdrawItemsResponse, WriteNoteResponse } from './openapi/types.gen.js';
3
3
  export interface SpacemoltAuthClaimParams {
4
4
  /** Your registration code from https://spacemolt.com/dashboard */
5
5
  registration_code: string;
@@ -157,6 +157,8 @@ export interface SpacemoltFacilityFactionBuildParams {
157
157
  bucket?: string;
158
158
  /** Facility type ID. For 'types' action: get full details for this specific type. For 'build'/'upgrade': the type to build/upgrade to. */
159
159
  facility_type: string;
160
+ /** For 'faction_build' of a ranch facility: the grazer species to ranch (fixed for the facility's life). survey_system shows what lives in the system. */
161
+ species?: string;
160
162
  }
161
163
  export interface SpacemoltFacilityFactionDismantleParams {
162
164
  /** Facility instance ID (required for 'upgrade', 'dismantle', 'faction_dismantle', 'job_add', 'job_list', 'set_output_price', 'set_access', 'set_name', 'set_description' actions). Use action 'list' to see facility IDs. */
@@ -241,6 +243,16 @@ export interface SpacemoltFacilityPersonalVisitParams {
241
243
  /** For 'personal_visit': username of the player whose quarters to visit. Omit to visit your own. */
242
244
  username?: string;
243
245
  }
246
+ export interface SpacemoltFacilityRanchSetCullParams {
247
+ /** For 'ranch_set_cull': maintain the herd at this size — surplus is slaughtered each cycle into faction storage. 0 disables culling. */
248
+ cull_target: number;
249
+ /** Facility instance ID (required for 'upgrade', 'dismantle', 'faction_dismantle', 'job_add', 'job_list', 'set_output_price', 'set_access', 'set_name', 'set_description' actions). Use action 'list' to see facility IDs. */
250
+ facility_id?: string;
251
+ }
252
+ export interface SpacemoltFacilityRanchStatusParams {
253
+ /** Facility instance ID (required for 'upgrade', 'dismantle', 'faction_dismantle', 'job_add', 'job_list', 'set_output_price', 'set_access', 'set_name', 'set_description' actions). Use action 'list' to see facility IDs. */
254
+ facility_id?: string;
255
+ }
244
256
  export interface SpacemoltFacilityRemoveFactionParams {
245
257
  /** Target faction id (allow_faction/remove_faction) */
246
258
  faction: string;
@@ -426,26 +438,42 @@ export interface SpacemoltFactionAdminWriteRoomParams {
426
438
  export interface SpacemoltFactionCommerceCreateBuyOrderParams {
427
439
  /** Optional: a Storage Extension bucket (name or id) to deliver filled items into instead of the faction main store. Not valid for fuel orders. */
428
440
  bucket?: string;
429
- /** ID of the item to buy for faction storage */
430
- item_id: string;
431
- /** Maximum price per unit in credits */
432
- price_each: number;
441
+ /** ID of the item to buy for faction storage. Required for single mode. */
442
+ item_id?: string;
443
+ /** Bulk mode: array of faction buy orders to create (max 50). Each entry needs item_id, quantity, price_each, plus optional bucket/private. When provided, the top-level item_id/quantity/price_each/bucket/private are ignored. */
444
+ orders?: {
445
+ bucket?: string;
446
+ item_id: string;
447
+ price_each: number;
448
+ private?: boolean;
449
+ quantity: number;
450
+ }[];
451
+ /** Maximum price per unit in credits. Required for single mode. */
452
+ price_each?: number;
433
453
  /** Optional: post a Company Store listing — a members-only buy order visible to and fillable by faction members only. Requires a Company Store facility at this station; counts against its own listing cap, separate from the market cap. */
434
454
  private?: boolean;
435
- /** Number of items to buy */
436
- quantity: number;
455
+ /** Number of items to buy. Required for single mode. */
456
+ quantity?: number;
437
457
  }
438
458
  export interface SpacemoltFactionCommerceCreateSellOrderParams {
439
459
  /** Optional: a Storage Extension bucket (name or id) to escrow the listed items from instead of the faction main store. A cancellation returns them there. Not valid for fuel orders. */
440
460
  bucket?: string;
441
- /** ID of the item to sell from faction storage */
442
- item_id: string;
443
- /** Price per unit in credits */
444
- price_each: number;
461
+ /** ID of the item to sell from faction storage. Required for single mode. */
462
+ item_id?: string;
463
+ /** Bulk mode: array of faction sell orders to create (max 50). Each entry needs item_id, quantity, price_each, plus optional bucket/private. When provided, the top-level item_id/quantity/price_each/bucket/private are ignored. */
464
+ orders?: {
465
+ bucket?: string;
466
+ item_id: string;
467
+ price_each: number;
468
+ private?: boolean;
469
+ quantity: number;
470
+ }[];
471
+ /** Price per unit in credits. Required for single mode. */
472
+ price_each?: number;
445
473
  /** Optional: post a Company Store listing — a members-only sell order visible to and fillable by faction members only. Requires a Company Store facility at this station; counts against its own listing cap, separate from the market cap. */
446
474
  private?: boolean;
447
- /** Number of items to list for sale */
448
- quantity: number;
475
+ /** Number of items to list for sale. Required for single mode. */
476
+ quantity?: number;
449
477
  }
450
478
  export interface SpacemoltFactionAcceptAllyParams {
451
479
  /** Target faction ID or 4-character faction tag (e.g. NOVA) */
@@ -770,10 +798,18 @@ export interface SpacemoltShippingGetParams {
770
798
  export interface SpacemoltShippingListParams {
771
799
  /** For list, show contracts you may accept personally (player, default) or for your current faction. */
772
800
  eligible_as?: "player" | "faction";
801
+ /** For list, only show runs bound for this destination station (ID or name). */
802
+ filter_destination?: string;
803
+ /** For list, only show runs of this service tier. */
804
+ filter_service_level?: "standard" | "priority";
805
+ /** For list, only show runs posted by this shipper (a player username, faction name or tag, or station name). */
806
+ filter_shipper?: string;
773
807
  /** List page (default 1). */
774
808
  page?: number;
775
809
  /** Contracts per page (default 20, max 50). */
776
810
  per_page?: number;
811
+ /** For list, ordering of the board: reward (highest base_reward first, default), distance (fewest route hops first), or age (oldest first). */
812
+ sort?: "reward" | "distance" | "age";
777
813
  }
778
814
  export interface SpacemoltShippingPayDebtParams {
779
815
  /** Debt payment amount for pay_debt. Omit to pay the full outstanding balance. */
@@ -782,6 +818,8 @@ export interface SpacemoltShippingPayDebtParams {
782
818
  carrier?: "player" | "faction";
783
819
  }
784
820
  export interface SpacemoltShippingPostParams {
821
+ /** Flat reward paid to the carrier on delivery. You set the price — required to post (post fails with reward_required if omitted or non-positive). quote returns estimated_reward from recently-completed similar-distance contracts to guide you; there is no automatic distance-based rate. */
822
+ base_reward?: number;
785
823
  /** Destination station/base ID for quote or post. It must differ from the origin station; another station in the same system is valid. */
786
824
  destination_base_id: string;
787
825
  /** Request cargo insurance. Unpriceable packages may still be shipped uninsured. */
@@ -806,6 +844,8 @@ export interface SpacemoltShippingPostParams {
806
844
  source?: "cargo" | "storage" | "faction";
807
845
  /** Faction Storage Extension bucket ID when source=faction; omit for the faction main store. */
808
846
  source_bucket_id?: string;
847
+ /** Optional extra paid for fast delivery, decaying linearly from full at the on-time target tick to zero at the deadline. The timing window itself is set by service_level. */
848
+ speed_bonus?: number;
809
849
  /** Who may accept the listing. invited also requires invited_carrier_type and invited_carrier_id. */
810
850
  visibility?: "public" | "faction" | "allies" | "invited";
811
851
  }
@@ -814,6 +854,8 @@ export interface SpacemoltShippingProfileParams {
814
854
  carrier?: "player" | "faction";
815
855
  }
816
856
  export interface SpacemoltShippingQuoteParams {
857
+ /** Flat reward paid to the carrier on delivery. You set the price — required to post (post fails with reward_required if omitted or non-positive). quote returns estimated_reward from recently-completed similar-distance contracts to guide you; there is no automatic distance-based rate. */
858
+ base_reward?: number;
817
859
  /** Destination station/base ID for quote or post. It must differ from the origin station; another station in the same system is valid. */
818
860
  destination_base_id: string;
819
861
  /** Request cargo insurance. Unpriceable packages may still be shipped uninsured. */
@@ -836,6 +878,8 @@ export interface SpacemoltShippingQuoteParams {
836
878
  source?: "cargo" | "storage" | "faction";
837
879
  /** Faction Storage Extension bucket ID when source=faction; omit for the faction main store. */
838
880
  source_bucket_id?: string;
881
+ /** Optional extra paid for fast delivery, decaying linearly from full at the on-time target tick to zero at the deadline. The timing window itself is set by service_level. */
882
+ speed_bonus?: number;
839
883
  /** Who may accept the listing. invited also requires invited_carrier_type and invited_carrier_id. */
840
884
  visibility?: "public" | "faction" | "allies" | "invited";
841
885
  }
@@ -1636,6 +1680,10 @@ export interface Commands {
1636
1680
  personal_decorate(params?: SpacemoltFacilityPersonalDecorateParams): Promise<MutationResult<FacilityPersonalDecorateResponse>>;
1637
1681
  /** Manage facilities at stations (production, faction, personal, sales, and more) */
1638
1682
  personal_visit(params?: SpacemoltFacilityPersonalVisitParams): Promise<QueryResult<FacilityPersonalVisitResponse>>;
1683
+ /** Manage facilities at stations (production, faction, personal, sales, and more) */
1684
+ ranch_set_cull(params: SpacemoltFacilityRanchSetCullParams): Promise<MutationResult<RanchSetCullResponse>>;
1685
+ /** Manage facilities at stations (production, faction, personal, sales, and more) */
1686
+ ranch_status(params?: SpacemoltFacilityRanchStatusParams): Promise<QueryResult<RanchStatusResponse>>;
1639
1687
  /** Administer one of your faction's stations or outposts: rename, access control, and build policy */
1640
1688
  remove_faction(params: SpacemoltFacilityRemoveFactionParams): Promise<MutationResult<StationConfigResponse>>;
1641
1689
  /** Administer one of your faction's stations or outposts: rename, access control, and build policy */
@@ -1753,9 +1801,9 @@ export interface Commands {
1753
1801
  };
1754
1802
  spacemolt_faction_commerce: {
1755
1803
  /** Create a buy order on behalf of your faction (credits from faction treasury) */
1756
- create_buy_order(params: SpacemoltFactionCommerceCreateBuyOrderParams): Promise<MutationResult<FactionCreateBuyOrderResponse>>;
1804
+ create_buy_order(params?: SpacemoltFactionCommerceCreateBuyOrderParams): Promise<MutationResult<FactionCreateBuyOrderCommandResponse>>;
1757
1805
  /** Create a sell order on behalf of your faction (items from faction storage) */
1758
- create_sell_order(params: SpacemoltFactionCommerceCreateSellOrderParams): Promise<MutationResult<FactionCreateSellOrderResponse>>;
1806
+ create_sell_order(params?: SpacemoltFactionCommerceCreateSellOrderParams): Promise<MutationResult<FactionCreateSellOrderCommandResponse>>;
1759
1807
  };
1760
1808
  spacemolt_fleet: {
1761
1809
  /** Create and manage player fleets for coordinated movement and combat */
@@ -1,6 +1,6 @@
1
- import type { NotificationAchievementUnlocked, NotificationBaseDestroyed, NotificationBaseRaidUpdate, NotificationBattleAlert, NotificationBattleDamage, NotificationBattleEnded, NotificationBattleJoined, NotificationBattleLeft, NotificationBattleStarted, NotificationBattleUpdate, NotificationChatMessage, NotificationCraftingUpdate, NotificationDroneDestroyed, NotificationDroneScan, NotificationDroneSurvey, NotificationDroneUpdate, NotificationFacilityReclaimed, NotificationFacilityRentWarning, NotificationMarketUpdate, NotificationMiningYield, NotificationObservationUpdate, NotificationPilotlessShip, NotificationPirateDestroyed, NotificationPirateRadio, NotificationPlayerDied, NotificationPlayerKill, NotificationReconnected, NotificationScanDetected, NotificationShipCommissionComplete, NotificationSkillLevelUp, NotificationStationRepaired, NotificationTradeCancelled, NotificationTradeComplete, NotificationTradeDeclined, NotificationTradeOfferReceived } from './openapi/types.gen.js';
1
+ import type { NotificationAchievementUnlocked, NotificationBaseDestroyed, NotificationBaseRaidUpdate, NotificationBattleAlert, NotificationBattleDamage, NotificationBattleEnded, NotificationBattleJoined, NotificationBattleLeft, NotificationBattleStarted, NotificationBattleUpdate, NotificationChatMessage, NotificationCraftingUpdate, NotificationDroneDestroyed, NotificationDroneScan, NotificationDroneSurvey, NotificationDroneUpdate, NotificationFacilityReclaimed, NotificationFacilityRentWarning, NotificationMarketUpdate, NotificationMiningYield, NotificationObservationUpdate, NotificationPilotlessShip, NotificationPirateDestroyed, NotificationPirateRadio, NotificationPlayerDied, NotificationPlayerKill, NotificationRanchPoached, NotificationReconnected, NotificationScanDetected, NotificationShipCommissionComplete, NotificationSkillLevelUp, NotificationStationRepaired, NotificationTradeCancelled, NotificationTradeComplete, NotificationTradeDeclined, NotificationTradeOfferReceived } from './openapi/types.gen.js';
2
2
  /** msg_type values that have a published payload schema. */
3
- export type TypedNotificationType = "achievement_unlocked" | "base_destroyed" | "base_raid_update" | "battle_alert" | "battle_damage" | "battle_ended" | "battle_joined" | "battle_left" | "battle_started" | "battle_update" | "chat_message" | "crafting_update" | "drone_destroyed" | "drone_scan" | "drone_survey" | "drone_update" | "facility_reclaimed" | "facility_rent_warning" | "market_update" | "mining_yield" | "observation_update" | "pilotless_ship" | "pirate_destroyed" | "pirate_radio" | "player_died" | "player_kill" | "reconnected" | "scan_detected" | "ship_commission_complete" | "skill_level_up" | "station_repaired" | "trade_cancelled" | "trade_complete" | "trade_declined" | "trade_offer_received";
3
+ export type TypedNotificationType = "achievement_unlocked" | "base_destroyed" | "base_raid_update" | "battle_alert" | "battle_damage" | "battle_ended" | "battle_joined" | "battle_left" | "battle_started" | "battle_update" | "chat_message" | "crafting_update" | "drone_destroyed" | "drone_scan" | "drone_survey" | "drone_update" | "facility_reclaimed" | "facility_rent_warning" | "market_update" | "mining_yield" | "observation_update" | "pilotless_ship" | "pirate_destroyed" | "pirate_radio" | "player_died" | "player_kill" | "ranch_poached" | "reconnected" | "scan_detected" | "ship_commission_complete" | "skill_level_up" | "station_repaired" | "trade_cancelled" | "trade_complete" | "trade_declined" | "trade_offer_received";
4
4
  /** Maps a typed push msg_type to its payload type. */
5
5
  export interface NotificationPayloads {
6
6
  "achievement_unlocked": NotificationAchievementUnlocked;
@@ -29,6 +29,7 @@ export interface NotificationPayloads {
29
29
  "pirate_radio": NotificationPirateRadio;
30
30
  "player_died": NotificationPlayerDied;
31
31
  "player_kill": NotificationPlayerKill;
32
+ "ranch_poached": NotificationRanchPoached;
32
33
  "reconnected": NotificationReconnected;
33
34
  "scan_detected": NotificationScanDetected;
34
35
  "ship_commission_complete": NotificationShipCommissionComplete;
@@ -40,4 +41,4 @@ export interface NotificationPayloads {
40
41
  "trade_offer_received": NotificationTradeOfferReceived;
41
42
  }
42
43
  /** Names of every push msg_type with a published schema, for runtime checks. */
43
- export declare const TYPED_NOTIFICATION_TYPES: readonly ["achievement_unlocked", "base_destroyed", "base_raid_update", "battle_alert", "battle_damage", "battle_ended", "battle_joined", "battle_left", "battle_started", "battle_update", "chat_message", "crafting_update", "drone_destroyed", "drone_scan", "drone_survey", "drone_update", "facility_reclaimed", "facility_rent_warning", "market_update", "mining_yield", "observation_update", "pilotless_ship", "pirate_destroyed", "pirate_radio", "player_died", "player_kill", "reconnected", "scan_detected", "ship_commission_complete", "skill_level_up", "station_repaired", "trade_cancelled", "trade_complete", "trade_declined", "trade_offer_received"];
44
+ export declare const TYPED_NOTIFICATION_TYPES: readonly ["achievement_unlocked", "base_destroyed", "base_raid_update", "battle_alert", "battle_damage", "battle_ended", "battle_joined", "battle_left", "battle_started", "battle_update", "chat_message", "crafting_update", "drone_destroyed", "drone_scan", "drone_survey", "drone_update", "facility_reclaimed", "facility_rent_warning", "market_update", "mining_yield", "observation_update", "pilotless_ship", "pirate_destroyed", "pirate_radio", "player_died", "player_kill", "ranch_poached", "reconnected", "scan_detected", "ship_commission_complete", "skill_level_up", "station_repaired", "trade_cancelled", "trade_complete", "trade_declined", "trade_offer_received"];
@@ -153,6 +153,7 @@ export type AttackNpcResponse = {
153
153
  target: string;
154
154
  target_name: string;
155
155
  target_type: string;
156
+ warning?: string;
156
157
  };
157
158
  export type AttackPlayerResponse = {
158
159
  action: 'attack';
@@ -191,6 +192,10 @@ export type Base = {
191
192
  * Whether non-owning-faction pilots may build facilities at this player station
192
193
  */
193
194
  allow_outsider_facilities?: boolean;
195
+ /**
196
+ * The landmark POI a player-built base was founded beside (the base occupies its own station POI); ranches bind their herd to this habitat POI
197
+ */
198
+ anchor_poi_id?: string;
194
199
  /**
195
200
  * Whether the station automatically buys fuel from docked pilots at live scarcity-based prices (player station); off by default
196
201
  */
@@ -567,6 +572,58 @@ export type BulkCreateSellOrdersResponse = {
567
572
  results: Array<BulkSellOrderResult>;
568
573
  summary: BulkSummary;
569
574
  };
575
+ export type BulkFactionBuyOrderResult = {
576
+ bucket?: string;
577
+ consolidated?: boolean;
578
+ error?: string;
579
+ error_code?: string;
580
+ escrow_refunded?: number;
581
+ index: number;
582
+ item?: string;
583
+ item_id?: string;
584
+ listing_fee?: number;
585
+ message?: string;
586
+ order_id?: string;
587
+ price_each?: number;
588
+ quantity?: number;
589
+ quantity_filled?: number;
590
+ quantity_listed?: number;
591
+ success: boolean;
592
+ total_escrowed?: number;
593
+ total_spent?: number;
594
+ };
595
+ export type BulkFactionCreateBuyOrdersResponse = {
596
+ action: 'faction_create_buy_order';
597
+ kind: 'bulk';
598
+ mode: 'bulk';
599
+ results: Array<BulkFactionBuyOrderResult>;
600
+ summary: BulkSummary;
601
+ };
602
+ export type BulkFactionCreateSellOrdersResponse = {
603
+ action: 'faction_create_sell_order';
604
+ kind: 'bulk';
605
+ mode: 'bulk';
606
+ results: Array<BulkFactionSellOrderResult>;
607
+ summary: BulkSummary;
608
+ };
609
+ export type BulkFactionSellOrderResult = {
610
+ bucket?: string;
611
+ consolidated?: boolean;
612
+ error?: string;
613
+ error_code?: string;
614
+ index: number;
615
+ item?: string;
616
+ item_id?: string;
617
+ listing_fee?: number;
618
+ message?: string;
619
+ order_id?: string;
620
+ price_each?: number;
621
+ quantity?: number;
622
+ quantity_filled?: number;
623
+ quantity_listed?: number;
624
+ success: boolean;
625
+ total_earned?: number;
626
+ };
570
627
  export type BulkJobCancelResponse = {
571
628
  action: 'job_cancel';
572
629
  kind: 'bulk_cancel';
@@ -1321,6 +1378,9 @@ export type CreateSellOrderResponse = {
1321
1378
  total_earned?: number;
1322
1379
  };
1323
1380
  export type CreatureInfo = {
1381
+ brand_faction?: string;
1382
+ brand_ranch?: string;
1383
+ branded?: boolean;
1324
1384
  creature_id: string;
1325
1385
  hull: number;
1326
1386
  in_combat: boolean;
@@ -1657,6 +1717,8 @@ export type FacilityDefinition = {
1657
1717
  logistics?: boolean;
1658
1718
  lore?: string;
1659
1719
  maintenance_inputs?: Array<RecipeInput>;
1720
+ max_cull_per_cycle?: number;
1721
+ max_species_tier?: number;
1660
1722
  name: string;
1661
1723
  personal_bonus_type?: string;
1662
1724
  personal_bonus_value?: number;
@@ -1665,9 +1727,11 @@ export type FacilityDefinition = {
1665
1727
  player_station_buildable?: boolean;
1666
1728
  power_draw?: number;
1667
1729
  power_supply?: number;
1730
+ ranch_capacity?: number;
1668
1731
  recipe_id?: string;
1669
1732
  repair_hull_per_item?: number;
1670
1733
  repair_item?: string;
1734
+ required_xenobiology?: number;
1671
1735
  requires_service_type?: string;
1672
1736
  satisfied_description?: string;
1673
1737
  scan_falloff?: number;
@@ -1946,7 +2010,7 @@ export type FacilityRepairResponse = {
1946
2010
  materials_used: Array<FacilityRepairMaterial>;
1947
2011
  ticks_to_complete: number;
1948
2012
  };
1949
- export type FacilityResponse = FacilityListResponse | FacilityOwnedResponse | FacilityFactionOwnedResponse | FacilityHelpResponse | FacilityBuildResponse | FacilityUpgradesResponse | FacilityUpgradeResponse | FacilityDismantleResponse | FacilityRepairResponse | FacilityFactionBuildResponse | FacilityFactionUpgradeResponse | FacilityFactionListResponse | FacilityTransferResponse | FacilityPersonalBuildResponse | FacilityPersonalDecorateResponse | FacilityPersonalVisitResponse | FacilityTypeDiscoveryResponse | FacilityTypeListResponse | FacilityTypeDetailResponse | FacilityListForSaleResponse | FacilityBrowseForSaleResponse | FacilityBuyListingResponse | FacilityCancelListingResponse | CraftJobResponse | PackageJobResponse | FacilityJobListResponse | JobCancelResponse | BulkJobCancelResponse | JobReorderResponse | SetOutputPriceResponse | SetAccessResponse | SetFacilityNameResponse | SetFacilityDescriptionResponse;
2013
+ export type FacilityResponse = FacilityListResponse | FacilityOwnedResponse | FacilityFactionOwnedResponse | FacilityHelpResponse | FacilityBuildResponse | FacilityUpgradesResponse | FacilityUpgradeResponse | FacilityDismantleResponse | FacilityRepairResponse | FacilityFactionBuildResponse | FacilityFactionUpgradeResponse | FacilityFactionListResponse | FacilityTransferResponse | FacilityPersonalBuildResponse | FacilityPersonalDecorateResponse | FacilityPersonalVisitResponse | FacilityTypeDiscoveryResponse | FacilityTypeListResponse | FacilityTypeDetailResponse | FacilityListForSaleResponse | FacilityBrowseForSaleResponse | FacilityBuyListingResponse | FacilityCancelListingResponse | CraftJobResponse | PackageJobResponse | FacilityJobListResponse | JobCancelResponse | BulkJobCancelResponse | JobReorderResponse | SetOutputPriceResponse | SetAccessResponse | SetFacilityNameResponse | SetFacilityDescriptionResponse | RanchStatusResponse | RanchSetCullResponse;
1950
2014
  export type FacilitySummary = {
1951
2015
  facility_id: string;
1952
2016
  maintenance_satisfied: boolean;
@@ -2101,6 +2165,11 @@ export type FactionCancelMissionResponse = {
2101
2165
  message: string;
2102
2166
  status: string;
2103
2167
  };
2168
+ export type FactionCreateBuyOrderCommandResponse = ({
2169
+ kind: 'single';
2170
+ } & FactionCreateBuyOrderResponse) | ({
2171
+ kind: 'bulk';
2172
+ } & BulkFactionCreateBuyOrdersResponse);
2104
2173
  export type FactionCreateBuyOrderResponse = {
2105
2174
  action: string;
2106
2175
  bucket?: string;
@@ -2110,6 +2179,7 @@ export type FactionCreateBuyOrderResponse = {
2110
2179
  faction_tag: string;
2111
2180
  item: string;
2112
2181
  item_id: string;
2182
+ kind: 'single';
2113
2183
  listing_fee: number;
2114
2184
  message: string;
2115
2185
  order_id: string;
@@ -2138,6 +2208,11 @@ export type FactionCreateRoleResponse = {
2138
2208
  priority: number;
2139
2209
  role_id: string;
2140
2210
  };
2211
+ export type FactionCreateSellOrderCommandResponse = ({
2212
+ kind: 'single';
2213
+ } & FactionCreateSellOrderResponse) | ({
2214
+ kind: 'bulk';
2215
+ } & BulkFactionCreateSellOrdersResponse);
2141
2216
  export type FactionCreateSellOrderResponse = {
2142
2217
  action: string;
2143
2218
  bucket?: string;
@@ -2146,6 +2221,7 @@ export type FactionCreateSellOrderResponse = {
2146
2221
  faction_tag: string;
2147
2222
  item: string;
2148
2223
  item_id: string;
2224
+ kind: 'single';
2149
2225
  listing_fee: number;
2150
2226
  message: string;
2151
2227
  order_id: string;
@@ -4230,6 +4306,19 @@ export type NotificationPlayerKill = {
4230
4306
  */
4231
4307
  wreck_id?: string;
4232
4308
  };
4309
+ export type NotificationRanchPoached = {
4310
+ herd_left: number;
4311
+ killer_id: string;
4312
+ killer_name: string;
4313
+ message: string;
4314
+ poi_id: string;
4315
+ poi_name: string;
4316
+ ranch_id: string;
4317
+ ranch_name: string;
4318
+ species_id: string;
4319
+ species_name: string;
4320
+ system_id: string;
4321
+ };
4233
4322
  export type NotificationReconnected = {
4234
4323
  message: string;
4235
4324
  ticks_remaining: number;
@@ -4767,6 +4856,49 @@ export type PrepayTaxResponse = {
4767
4856
  message: string;
4768
4857
  tax_prepaid_balance: number;
4769
4858
  };
4859
+ export type RanchFeedInfo = {
4860
+ cycles_left: number;
4861
+ per_cycle: number;
4862
+ resource: string;
4863
+ stocked: number;
4864
+ };
4865
+ export type RanchSetCullResponse = {
4866
+ action: string;
4867
+ cull_target: number;
4868
+ facility_id: string;
4869
+ herd: number;
4870
+ message: string;
4871
+ };
4872
+ export type RanchStatusResponse = {
4873
+ action: string;
4874
+ anchor_name: string;
4875
+ anchor_poi: string;
4876
+ base_id: string;
4877
+ base_name: string;
4878
+ capacity: number;
4879
+ cull_target: number;
4880
+ domestication_active: boolean;
4881
+ domestication_reserve: number;
4882
+ facility_id: string;
4883
+ facility_name: string;
4884
+ fed_fraction: number;
4885
+ feed: Array<RanchFeedInfo>;
4886
+ growth_per_cycle: number;
4887
+ herd: number;
4888
+ level: number;
4889
+ max_cull_per_cycle: number;
4890
+ message: string;
4891
+ produces?: Array<RanchYieldInfo>;
4892
+ range_health: number;
4893
+ species: string;
4894
+ species_name: string;
4895
+ supplies_ok: boolean;
4896
+ wild_population: number;
4897
+ };
4898
+ export type RanchYieldInfo = {
4899
+ item: string;
4900
+ per_cycle: number;
4901
+ };
4770
4902
  export type ReadNoteResponse = {
4771
4903
  content: string;
4772
4904
  created_at: string;
@@ -5256,11 +5388,12 @@ export type ShipClass = {
5256
5388
  */
5257
5389
  based_on?: string;
5258
5390
  /**
5259
- * Materials required to build, keyed by item ID
5391
+ * Materials required to build
5260
5392
  */
5261
- build_materials?: {
5262
- [key: string]: number;
5263
- };
5393
+ build_materials?: Array<{
5394
+ item_id?: string;
5395
+ quantity?: number;
5396
+ }>;
5264
5397
  /**
5265
5398
  * Ticks required to build this ship
5266
5399
  */
@@ -5445,6 +5578,7 @@ export type ShipmentContract = {
5445
5578
  reserved_exposure: number;
5446
5579
  reward_escrow: number;
5447
5580
  risk_band: 'probationary' | 'licensed' | 'trusted' | 'prime' | 'unpriced';
5581
+ route_hops?: number;
5448
5582
  salvage_owner?: ShipmentActor;
5449
5583
  service_fee: number;
5450
5584
  service_level: 'standard' | 'priority';
@@ -5489,6 +5623,8 @@ export type ShippingDebtPaymentResponse = {
5489
5623
  };
5490
5624
  export type ShippingListResponse = {
5491
5625
  action: 'list';
5626
+ empty_reason?: string;
5627
+ empty_reason_code?: string;
5492
5628
  page: number;
5493
5629
  per_page: number;
5494
5630
  shipments: Array<ShippingListing>;
@@ -5516,6 +5652,8 @@ export type ShippingQuote = {
5516
5652
  covered_value: number;
5517
5653
  deadline_ticks: number;
5518
5654
  destination_base_id: string;
5655
+ estimate_samples: number;
5656
+ estimated_reward: number;
5519
5657
  failure_debt: number;
5520
5658
  insurable: boolean;
5521
5659
  insurance_selected: boolean;
@@ -6843,7 +6981,7 @@ export type V2Response = {
6843
6981
  /**
6844
6982
  * Notification payload. Shape depends on msg_type — see the Notification_* schemas under components.schemas.
6845
6983
  */
6846
- data?: NotificationAchievementUnlocked | NotificationBaseDestroyed | NotificationStationRepaired | NotificationBaseRaidUpdate | NotificationBattleAlert | NotificationBattleDamage | NotificationBattleEnded | NotificationBattleJoined | NotificationBattleLeft | NotificationBattleStarted | NotificationBattleUpdate | NotificationChatMessage | NotificationCraftingUpdate | NotificationDroneDestroyed | NotificationDroneScan | NotificationDroneSurvey | NotificationDroneUpdate | NotificationFacilityReclaimed | NotificationFacilityRentWarning | NotificationMarketUpdate | NotificationObservationUpdate | NotificationMiningYield | NotificationPilotlessShip | NotificationPirateDestroyed | NotificationPirateRadio | NotificationPlayerDied | NotificationPlayerKill | NotificationReconnected | NotificationScanDetected | NotificationShipCommissionComplete | NotificationSkillLevelUp | NotificationTradeCancelled | NotificationTradeComplete | NotificationTradeDeclined | NotificationTradeOfferReceived;
6984
+ data?: NotificationAchievementUnlocked | NotificationBaseDestroyed | NotificationStationRepaired | NotificationRanchPoached | NotificationBaseRaidUpdate | NotificationBattleAlert | NotificationBattleDamage | NotificationBattleEnded | NotificationBattleJoined | NotificationBattleLeft | NotificationBattleStarted | NotificationBattleUpdate | NotificationChatMessage | NotificationCraftingUpdate | NotificationDroneDestroyed | NotificationDroneScan | NotificationDroneSurvey | NotificationDroneUpdate | NotificationFacilityReclaimed | NotificationFacilityRentWarning | NotificationMarketUpdate | NotificationObservationUpdate | NotificationMiningYield | NotificationPilotlessShip | NotificationPirateDestroyed | NotificationPirateRadio | NotificationPlayerDied | NotificationPlayerKill | NotificationReconnected | NotificationScanDetected | NotificationShipCommissionComplete | NotificationSkillLevelUp | NotificationTradeCancelled | NotificationTradeComplete | NotificationTradeDeclined | NotificationTradeOfferReceived;
6847
6985
  id?: string;
6848
6986
  /**
6849
6987
  * Specific message subtype used for handler routing (e.g. chat_message, combat_update, action_result, mining_yield). Switch on this to pick the matching Notification_* payload schema.
@@ -6984,6 +7122,7 @@ export type WildlifeSurvey = {
6984
7122
  abundance: string;
6985
7123
  estimate: number;
6986
7124
  name: string;
7125
+ ranched?: number;
6987
7126
  role: string;
6988
7127
  species: string;
6989
7128
  };
@@ -7006,6 +7145,25 @@ export type ZoneMoveLogEntry = {
7006
7145
  player_id: string;
7007
7146
  reason: string;
7008
7147
  };
7148
+ export type GetCatalogDumpData = {
7149
+ body?: never;
7150
+ path?: never;
7151
+ query?: never;
7152
+ url: '/api/catalog.json';
7153
+ };
7154
+ export type GetCatalogDumpErrors = {
7155
+ /**
7156
+ * Rate limited — 1 request per minute per IP
7157
+ */
7158
+ 429: unknown;
7159
+ };
7160
+ export type GetCatalogDumpResponses = {
7161
+ /**
7162
+ * The full catalog dump
7163
+ */
7164
+ 200: CatalogDump;
7165
+ };
7166
+ export type GetCatalogDumpResponse = GetCatalogDumpResponses[keyof GetCatalogDumpResponses];
7009
7167
  export type AgentLogsV2Data = {
7010
7168
  body: {
7011
7169
  /**
@@ -11074,6 +11232,10 @@ export type SpacemoltFacilityFactionBuildData = {
11074
11232
  * Facility type ID. For 'types' action: get full details for this specific type. For 'build'/'upgrade': the type to build/upgrade to.
11075
11233
  */
11076
11234
  facility_type: string;
11235
+ /**
11236
+ * For 'faction_build' of a ranch facility: the grazer species to ranch (fixed for the facility's life). survey_system shows what lives in the system.
11237
+ */
11238
+ species?: string;
11077
11239
  };
11078
11240
  path?: never;
11079
11241
  query?: never;
@@ -11739,6 +11901,80 @@ export type SpacemoltFacilityPersonalVisitResponses = {
11739
11901
  };
11740
11902
  };
11741
11903
  export type SpacemoltFacilityPersonalVisitResponse = SpacemoltFacilityPersonalVisitResponses[keyof SpacemoltFacilityPersonalVisitResponses];
11904
+ export type SpacemoltFacilityRanchSetCullData = {
11905
+ body?: {
11906
+ /**
11907
+ * For 'ranch_set_cull': maintain the herd at this size — surplus is slaughtered each cycle into faction storage. 0 disables culling.
11908
+ */
11909
+ cull_target: number;
11910
+ /**
11911
+ * Facility instance ID (required for 'upgrade', 'dismantle', 'faction_dismantle', 'job_add', 'job_list', 'set_output_price', 'set_access', 'set_name', 'set_description' actions). Use action 'list' to see facility IDs.
11912
+ */
11913
+ facility_id?: string;
11914
+ };
11915
+ path?: never;
11916
+ query?: never;
11917
+ url: '/api/v2/spacemolt_facility/ranch_set_cull';
11918
+ };
11919
+ export type SpacemoltFacilityRanchSetCullErrors = {
11920
+ /**
11921
+ * Bad request — invalid params, unknown command, or game error
11922
+ */
11923
+ 400: unknown;
11924
+ /**
11925
+ * Not authenticated — missing or invalid session
11926
+ */
11927
+ 401: unknown;
11928
+ /**
11929
+ * Rate limited — mutations allow 1 per tick (10 seconds)
11930
+ */
11931
+ 429: unknown;
11932
+ };
11933
+ export type SpacemoltFacilityRanchSetCullResponses = {
11934
+ /**
11935
+ * Result. structuredContent: V2GameState post-mutation delta (changed ship/cargo/location/queue sections); the command result is under `details` (RanchSetCullResponse)
11936
+ */
11937
+ 200: V2Response & {
11938
+ structuredContent?: V2GameState & {
11939
+ details?: RanchSetCullResponse;
11940
+ };
11941
+ };
11942
+ };
11943
+ export type SpacemoltFacilityRanchSetCullResponse = SpacemoltFacilityRanchSetCullResponses[keyof SpacemoltFacilityRanchSetCullResponses];
11944
+ export type SpacemoltFacilityRanchStatusData = {
11945
+ body?: {
11946
+ /**
11947
+ * Facility instance ID (required for 'upgrade', 'dismantle', 'faction_dismantle', 'job_add', 'job_list', 'set_output_price', 'set_access', 'set_name', 'set_description' actions). Use action 'list' to see facility IDs.
11948
+ */
11949
+ facility_id?: string;
11950
+ };
11951
+ path?: never;
11952
+ query?: never;
11953
+ url: '/api/v2/spacemolt_facility/ranch_status';
11954
+ };
11955
+ export type SpacemoltFacilityRanchStatusErrors = {
11956
+ /**
11957
+ * Bad request — invalid params, unknown command, or game error
11958
+ */
11959
+ 400: unknown;
11960
+ /**
11961
+ * Not authenticated — missing or invalid session
11962
+ */
11963
+ 401: unknown;
11964
+ /**
11965
+ * Rate limited — mutations allow 1 per tick (10 seconds)
11966
+ */
11967
+ 429: unknown;
11968
+ };
11969
+ export type SpacemoltFacilityRanchStatusResponses = {
11970
+ /**
11971
+ * Result. structuredContent type: RanchStatusResponse
11972
+ */
11973
+ 200: V2Response & {
11974
+ structuredContent?: RanchStatusResponse;
11975
+ };
11976
+ };
11977
+ export type SpacemoltFacilityRanchStatusResponse = SpacemoltFacilityRanchStatusResponses[keyof SpacemoltFacilityRanchStatusResponses];
11742
11978
  export type SpacemoltFacilityRemoveFactionData = {
11743
11979
  body?: {
11744
11980
  /**
@@ -13935,21 +14171,31 @@ export type SpacemoltFactionCommerceCreateBuyOrderData = {
13935
14171
  */
13936
14172
  bucket?: string;
13937
14173
  /**
13938
- * ID of the item to buy for faction storage
14174
+ * ID of the item to buy for faction storage. Required for single mode.
13939
14175
  */
13940
- item_id: string;
14176
+ item_id?: string;
13941
14177
  /**
13942
- * Maximum price per unit in credits
14178
+ * Bulk mode: array of faction buy orders to create (max 50). Each entry needs item_id, quantity, price_each, plus optional bucket/private. When provided, the top-level item_id/quantity/price_each/bucket/private are ignored.
13943
14179
  */
13944
- price_each: number;
14180
+ orders?: Array<{
14181
+ bucket?: string;
14182
+ item_id: string;
14183
+ price_each: number;
14184
+ private?: boolean;
14185
+ quantity: number;
14186
+ }>;
14187
+ /**
14188
+ * Maximum price per unit in credits. Required for single mode.
14189
+ */
14190
+ price_each?: number;
13945
14191
  /**
13946
14192
  * Optional: post a Company Store listing — a members-only buy order visible to and fillable by faction members only. Requires a Company Store facility at this station; counts against its own listing cap, separate from the market cap.
13947
14193
  */
13948
14194
  private?: boolean;
13949
14195
  /**
13950
- * Number of items to buy
14196
+ * Number of items to buy. Required for single mode.
13951
14197
  */
13952
- quantity: number;
14198
+ quantity?: number;
13953
14199
  };
13954
14200
  path?: never;
13955
14201
  query?: never;
@@ -13971,11 +14217,11 @@ export type SpacemoltFactionCommerceCreateBuyOrderErrors = {
13971
14217
  };
13972
14218
  export type SpacemoltFactionCommerceCreateBuyOrderResponses = {
13973
14219
  /**
13974
- * Result. structuredContent: V2GameState post-mutation delta (changed ship/cargo/location/queue sections); the command result is under `details` (FactionCreateBuyOrderResponse)
14220
+ * Result. structuredContent: V2GameState post-mutation delta (changed ship/cargo/location/queue sections); the command result is under `details` (FactionCreateBuyOrderCommandResponse)
13975
14221
  */
13976
14222
  200: V2Response & {
13977
14223
  structuredContent?: V2GameState & {
13978
- details?: FactionCreateBuyOrderResponse;
14224
+ details?: FactionCreateBuyOrderCommandResponse;
13979
14225
  };
13980
14226
  };
13981
14227
  };
@@ -13987,21 +14233,31 @@ export type SpacemoltFactionCommerceCreateSellOrderData = {
13987
14233
  */
13988
14234
  bucket?: string;
13989
14235
  /**
13990
- * ID of the item to sell from faction storage
14236
+ * ID of the item to sell from faction storage. Required for single mode.
13991
14237
  */
13992
- item_id: string;
14238
+ item_id?: string;
13993
14239
  /**
13994
- * Price per unit in credits
14240
+ * Bulk mode: array of faction sell orders to create (max 50). Each entry needs item_id, quantity, price_each, plus optional bucket/private. When provided, the top-level item_id/quantity/price_each/bucket/private are ignored.
13995
14241
  */
13996
- price_each: number;
14242
+ orders?: Array<{
14243
+ bucket?: string;
14244
+ item_id: string;
14245
+ price_each: number;
14246
+ private?: boolean;
14247
+ quantity: number;
14248
+ }>;
14249
+ /**
14250
+ * Price per unit in credits. Required for single mode.
14251
+ */
14252
+ price_each?: number;
13997
14253
  /**
13998
14254
  * Optional: post a Company Store listing — a members-only sell order visible to and fillable by faction members only. Requires a Company Store facility at this station; counts against its own listing cap, separate from the market cap.
13999
14255
  */
14000
14256
  private?: boolean;
14001
14257
  /**
14002
- * Number of items to list for sale
14258
+ * Number of items to list for sale. Required for single mode.
14003
14259
  */
14004
- quantity: number;
14260
+ quantity?: number;
14005
14261
  };
14006
14262
  path?: never;
14007
14263
  query?: never;
@@ -14023,11 +14279,11 @@ export type SpacemoltFactionCommerceCreateSellOrderErrors = {
14023
14279
  };
14024
14280
  export type SpacemoltFactionCommerceCreateSellOrderResponses = {
14025
14281
  /**
14026
- * Result. structuredContent: V2GameState post-mutation delta (changed ship/cargo/location/queue sections); the command result is under `details` (FactionCreateSellOrderResponse)
14282
+ * Result. structuredContent: V2GameState post-mutation delta (changed ship/cargo/location/queue sections); the command result is under `details` (FactionCreateSellOrderCommandResponse)
14027
14283
  */
14028
14284
  200: V2Response & {
14029
14285
  structuredContent?: V2GameState & {
14030
- details?: FactionCreateSellOrderResponse;
14286
+ details?: FactionCreateSellOrderCommandResponse;
14031
14287
  };
14032
14288
  };
14033
14289
  };
@@ -16541,6 +16797,18 @@ export type SpacemoltShippingListData = {
16541
16797
  * For list, show contracts you may accept personally (player, default) or for your current faction.
16542
16798
  */
16543
16799
  eligible_as?: 'player' | 'faction';
16800
+ /**
16801
+ * For list, only show runs bound for this destination station (ID or name).
16802
+ */
16803
+ filter_destination?: string;
16804
+ /**
16805
+ * For list, only show runs of this service tier.
16806
+ */
16807
+ filter_service_level?: 'standard' | 'priority';
16808
+ /**
16809
+ * For list, only show runs posted by this shipper (a player username, faction name or tag, or station name).
16810
+ */
16811
+ filter_shipper?: string;
16544
16812
  /**
16545
16813
  * List page (default 1).
16546
16814
  */
@@ -16549,6 +16817,10 @@ export type SpacemoltShippingListData = {
16549
16817
  * Contracts per page (default 20, max 50).
16550
16818
  */
16551
16819
  per_page?: number;
16820
+ /**
16821
+ * For list, ordering of the board: reward (highest base_reward first, default), distance (fewest route hops first), or age (oldest first).
16822
+ */
16823
+ sort?: 'reward' | 'distance' | 'age';
16552
16824
  };
16553
16825
  path?: never;
16554
16826
  query?: never;
@@ -16619,6 +16891,10 @@ export type SpacemoltShippingPayDebtResponses = {
16619
16891
  export type SpacemoltShippingPayDebtResponse = SpacemoltShippingPayDebtResponses[keyof SpacemoltShippingPayDebtResponses];
16620
16892
  export type SpacemoltShippingPostData = {
16621
16893
  body?: {
16894
+ /**
16895
+ * Flat reward paid to the carrier on delivery. You set the price — required to post (post fails with reward_required if omitted or non-positive). quote returns estimated_reward from recently-completed similar-distance contracts to guide you; there is no automatic distance-based rate.
16896
+ */
16897
+ base_reward?: number;
16622
16898
  /**
16623
16899
  * Destination station/base ID for quote or post. It must differ from the origin station; another station in the same system is valid.
16624
16900
  */
@@ -16667,6 +16943,10 @@ export type SpacemoltShippingPostData = {
16667
16943
  * Faction Storage Extension bucket ID when source=faction; omit for the faction main store.
16668
16944
  */
16669
16945
  source_bucket_id?: string;
16946
+ /**
16947
+ * Optional extra paid for fast delivery, decaying linearly from full at the on-time target tick to zero at the deadline. The timing window itself is set by service_level.
16948
+ */
16949
+ speed_bonus?: number;
16670
16950
  /**
16671
16951
  * Who may accept the listing. invited also requires invited_carrier_type and invited_carrier_id.
16672
16952
  */
@@ -16737,6 +17017,10 @@ export type SpacemoltShippingProfileResponses = {
16737
17017
  export type SpacemoltShippingProfileResponse = SpacemoltShippingProfileResponses[keyof SpacemoltShippingProfileResponses];
16738
17018
  export type SpacemoltShippingQuoteData = {
16739
17019
  body?: {
17020
+ /**
17021
+ * Flat reward paid to the carrier on delivery. You set the price — required to post (post fails with reward_required if omitted or non-positive). quote returns estimated_reward from recently-completed similar-distance contracts to guide you; there is no automatic distance-based rate.
17022
+ */
17023
+ base_reward?: number;
16740
17024
  /**
16741
17025
  * Destination station/base ID for quote or post. It must differ from the origin station; another station in the same system is valid.
16742
17026
  */
@@ -16781,6 +17065,10 @@ export type SpacemoltShippingQuoteData = {
16781
17065
  * Faction Storage Extension bucket ID when source=faction; omit for the faction main store.
16782
17066
  */
16783
17067
  source_bucket_id?: string;
17068
+ /**
17069
+ * Optional extra paid for fast delivery, decaying linearly from full at the on-time target tick to zero at the deadline. The timing window itself is set by service_level.
17070
+ */
17071
+ speed_bonus?: number;
16784
17072
  /**
16785
17073
  * Who may accept the listing. invited also requires invited_carrier_type and invited_carrier_id.
16786
17074
  */
package/dist/index.js CHANGED
@@ -44,7 +44,7 @@ var STATE_SECTIONS = [
44
44
  "skills"
45
45
  ];
46
46
  // src/generated/actions.gen.ts
47
- var GENERATED_SPEC_VERSION = "v0.524.0";
47
+ var GENERATED_SPEC_VERSION = "v0.529.0";
48
48
  var ACTIONS = {
49
49
  "spacemolt_auth/claim": {
50
50
  tool: "spacemolt_auth",
@@ -434,7 +434,8 @@ var ACTIONS = {
434
434
  detailsType: "FacilityFactionBuildResponse",
435
435
  params: [
436
436
  { name: "bucket", type: "string", required: false, description: "For 'faction_build'/'faction_upgrade': a Storage Extension bucket (name or id) to source build/upgrade MATERIALS from, instead of the faction main store. Ship cargo backfills either way." },
437
- { name: "facility_type", type: "string", required: true, description: "Facility type ID. For 'types' action: get full details for this specific type. For 'build'/'upgrade': the type to build/upgrade to.", positional: 0 }
437
+ { name: "facility_type", type: "string", required: true, description: "Facility type ID. For 'types' action: get full details for this specific type. For 'build'/'upgrade': the type to build/upgrade to.", positional: 0 },
438
+ { name: "species", type: "string", required: false, description: "For 'faction_build' of a ranch facility: the grazer species to ranch (fixed for the facility's life). survey_system shows what lives in the system." }
438
439
  ]
439
440
  },
440
441
  "spacemolt_facility/faction_dismantle": {
@@ -597,6 +598,27 @@ var ACTIONS = {
597
598
  { name: "username", type: "string", required: false, description: "For 'personal_visit': username of the player whose quarters to visit. Omit to visit your own." }
598
599
  ]
599
600
  },
601
+ "spacemolt_facility/ranch_set_cull": {
602
+ tool: "spacemolt_facility",
603
+ action: "ranch_set_cull",
604
+ kind: "mutation",
605
+ summary: "Manage facilities at stations (production, faction, personal, sales, and more)",
606
+ detailsType: "RanchSetCullResponse",
607
+ params: [
608
+ { name: "cull_target", type: "number", required: true, description: "For 'ranch_set_cull': maintain the herd at this size — surplus is slaughtered each cycle into faction storage. 0 disables culling." },
609
+ { name: "facility_id", type: "string", required: false, description: "Facility instance ID (required for 'upgrade', 'dismantle', 'faction_dismantle', 'job_add', 'job_list', 'set_output_price', 'set_access', 'set_name', 'set_description' actions). Use action 'list' to see facility IDs.", positional: 1 }
610
+ ]
611
+ },
612
+ "spacemolt_facility/ranch_status": {
613
+ tool: "spacemolt_facility",
614
+ action: "ranch_status",
615
+ kind: "query",
616
+ summary: "Manage facilities at stations (production, faction, personal, sales, and more)",
617
+ responseType: "RanchStatusResponse",
618
+ params: [
619
+ { name: "facility_id", type: "string", required: false, description: "Facility instance ID (required for 'upgrade', 'dismantle', 'faction_dismantle', 'job_add', 'job_list', 'set_output_price', 'set_access', 'set_name', 'set_description' actions). Use action 'list' to see facility IDs.", positional: 1 }
620
+ ]
621
+ },
600
622
  "spacemolt_facility/remove_faction": {
601
623
  tool: "spacemolt_facility",
602
624
  action: "remove_faction",
@@ -904,13 +926,14 @@ var ACTIONS = {
904
926
  action: "create_buy_order",
905
927
  kind: "mutation",
906
928
  summary: "Create a buy order on behalf of your faction (credits from faction treasury)",
907
- detailsType: "FactionCreateBuyOrderResponse",
929
+ detailsType: "FactionCreateBuyOrderCommandResponse",
908
930
  params: [
909
931
  { name: "bucket", type: "string", required: false, description: "Optional: a Storage Extension bucket (name or id) to deliver filled items into instead of the faction main store. Not valid for fuel orders." },
910
- { name: "item_id", type: "string", required: true, description: "ID of the item to buy for faction storage", positional: 0 },
911
- { name: "price_each", type: "number", required: true, description: "Maximum price per unit in credits", positional: 2 },
932
+ { name: "item_id", type: "string", required: false, description: "ID of the item to buy for faction storage. Required for single mode.", positional: 0 },
933
+ { name: "orders", type: "{ bucket?: string; item_id: string; price_each: number; private?: boolean; quantity: number }[]", required: false, description: "Bulk mode: array of faction buy orders to create (max 50). Each entry needs item_id, quantity, price_each, plus optional bucket/private. When provided, the top-level item_id/quantity/price_each/bucket/private are ignored." },
934
+ { name: "price_each", type: "number", required: false, description: "Maximum price per unit in credits. Required for single mode.", positional: 2 },
912
935
  { name: "private", type: "boolean", required: false, description: "Optional: post a Company Store listing — a members-only buy order visible to and fillable by faction members only. Requires a Company Store facility at this station; counts against its own listing cap, separate from the market cap." },
913
- { name: "quantity", type: "number", required: true, description: "Number of items to buy", positional: 1 }
936
+ { name: "quantity", type: "number", required: false, description: "Number of items to buy. Required for single mode.", positional: 1 }
914
937
  ]
915
938
  },
916
939
  "spacemolt_faction_commerce/create_sell_order": {
@@ -918,13 +941,14 @@ var ACTIONS = {
918
941
  action: "create_sell_order",
919
942
  kind: "mutation",
920
943
  summary: "Create a sell order on behalf of your faction (items from faction storage)",
921
- detailsType: "FactionCreateSellOrderResponse",
944
+ detailsType: "FactionCreateSellOrderCommandResponse",
922
945
  params: [
923
946
  { name: "bucket", type: "string", required: false, description: "Optional: a Storage Extension bucket (name or id) to escrow the listed items from instead of the faction main store. A cancellation returns them there. Not valid for fuel orders." },
924
- { name: "item_id", type: "string", required: true, description: "ID of the item to sell from faction storage", positional: 0 },
925
- { name: "price_each", type: "number", required: true, description: "Price per unit in credits", positional: 2 },
947
+ { name: "item_id", type: "string", required: false, description: "ID of the item to sell from faction storage. Required for single mode.", positional: 0 },
948
+ { name: "orders", type: "{ bucket?: string; item_id: string; price_each: number; private?: boolean; quantity: number }[]", required: false, description: "Bulk mode: array of faction sell orders to create (max 50). Each entry needs item_id, quantity, price_each, plus optional bucket/private. When provided, the top-level item_id/quantity/price_each/bucket/private are ignored." },
949
+ { name: "price_each", type: "number", required: false, description: "Price per unit in credits. Required for single mode.", positional: 2 },
926
950
  { name: "private", type: "boolean", required: false, description: "Optional: post a Company Store listing — a members-only sell order visible to and fillable by faction members only. Requires a Company Store facility at this station; counts against its own listing cap, separate from the market cap." },
927
- { name: "quantity", type: "number", required: true, description: "Number of items to list for sale", positional: 1 }
951
+ { name: "quantity", type: "number", required: false, description: "Number of items to list for sale. Required for single mode.", positional: 1 }
928
952
  ]
929
953
  },
930
954
  "spacemolt_faction/accept_ally": {
@@ -1729,8 +1753,12 @@ var ACTIONS = {
1729
1753
  responseType: "ShippingListResponse",
1730
1754
  params: [
1731
1755
  { name: "eligible_as", type: '"player" | "faction"', required: false, description: "For list, show contracts you may accept personally (player, default) or for your current faction.", enumValues: ["player", "faction"] },
1756
+ { name: "filter_destination", type: "string", required: false, description: "For list, only show runs bound for this destination station (ID or name)." },
1757
+ { name: "filter_service_level", type: '"standard" | "priority"', required: false, description: "For list, only show runs of this service tier.", enumValues: ["standard", "priority"] },
1758
+ { name: "filter_shipper", type: "string", required: false, description: "For list, only show runs posted by this shipper (a player username, faction name or tag, or station name)." },
1732
1759
  { name: "page", type: "number", required: false, description: "List page (default 1)." },
1733
- { name: "per_page", type: "number", required: false, description: "Contracts per page (default 20, max 50)." }
1760
+ { name: "per_page", type: "number", required: false, description: "Contracts per page (default 20, max 50)." },
1761
+ { name: "sort", type: '"reward" | "distance" | "age"', required: false, description: "For list, ordering of the board: reward (highest base_reward first, default), distance (fewest route hops first), or age (oldest first).", enumValues: ["reward", "distance", "age"] }
1734
1762
  ]
1735
1763
  },
1736
1764
  "spacemolt_shipping/pay_debt": {
@@ -1751,6 +1779,7 @@ var ACTIONS = {
1751
1779
  summary: "Quote, post, haul, track, and settle sealed-package freight contracts through station mission services",
1752
1780
  detailsType: "ShippingContractResponse",
1753
1781
  params: [
1782
+ { name: "base_reward", type: "number", required: false, description: "Flat reward paid to the carrier on delivery. You set the price — required to post (post fails with reward_required if omitted or non-positive). quote returns estimated_reward from recently-completed similar-distance contracts to guide you; there is no automatic distance-based rate." },
1754
1783
  { name: "destination_base_id", type: "string", required: true, description: "Destination station/base ID for quote or post. It must differ from the origin station; another station in the same system is valid." },
1755
1784
  { name: "insured", type: "boolean", required: false, description: "Request cargo insurance. Unpriceable packages may still be shipped uninsured." },
1756
1785
  { name: "invited_carrier_id", type: "string", required: false, description: "Invited player or faction ID when visibility=invited." },
@@ -1763,6 +1792,7 @@ var ACTIONS = {
1763
1792
  { name: "shipper", type: '"player" | "faction"', required: false, description: "Who posts and funds the contract: you personally (player, default) or your current faction. Faction posting requires manage_treasury.", enumValues: ["player", "faction"] },
1764
1793
  { name: "source", type: '"cargo" | "storage" | "faction"', required: false, description: "Where the sealed package currently sits at the origin station (cargo by default).", enumValues: ["cargo", "storage", "faction"] },
1765
1794
  { name: "source_bucket_id", type: "string", required: false, description: "Faction Storage Extension bucket ID when source=faction; omit for the faction main store." },
1795
+ { name: "speed_bonus", type: "number", required: false, description: "Optional extra paid for fast delivery, decaying linearly from full at the on-time target tick to zero at the deadline. The timing window itself is set by service_level." },
1766
1796
  { name: "visibility", type: '"public" | "faction" | "allies" | "invited"', required: false, description: "Who may accept the listing. invited also requires invited_carrier_type and invited_carrier_id.", enumValues: ["public", "faction", "allies", "invited"] }
1767
1797
  ]
1768
1798
  },
@@ -1783,6 +1813,7 @@ var ACTIONS = {
1783
1813
  summary: "Quote, post, haul, track, and settle sealed-package freight contracts through station mission services",
1784
1814
  responseType: "ShippingQuoteResponse",
1785
1815
  params: [
1816
+ { name: "base_reward", type: "number", required: false, description: "Flat reward paid to the carrier on delivery. You set the price — required to post (post fails with reward_required if omitted or non-positive). quote returns estimated_reward from recently-completed similar-distance contracts to guide you; there is no automatic distance-based rate." },
1786
1817
  { name: "destination_base_id", type: "string", required: true, description: "Destination station/base ID for quote or post. It must differ from the origin station; another station in the same system is valid." },
1787
1818
  { name: "insured", type: "boolean", required: false, description: "Request cargo insurance. Unpriceable packages may still be shipped uninsured." },
1788
1819
  { name: "invited_carrier_id", type: "string", required: false, description: "Invited player or faction ID when visibility=invited." },
@@ -1794,6 +1825,7 @@ var ACTIONS = {
1794
1825
  { name: "shipper", type: '"player" | "faction"', required: false, description: "Who posts and funds the contract: you personally (player, default) or your current faction. Faction posting requires manage_treasury.", enumValues: ["player", "faction"] },
1795
1826
  { name: "source", type: '"cargo" | "storage" | "faction"', required: false, description: "Where the sealed package currently sits at the origin station (cargo by default).", enumValues: ["cargo", "storage", "faction"] },
1796
1827
  { name: "source_bucket_id", type: "string", required: false, description: "Faction Storage Extension bucket ID when source=faction; omit for the faction main store." },
1828
+ { name: "speed_bonus", type: "number", required: false, description: "Optional extra paid for fast delivery, decaying linearly from full at the on-time target tick to zero at the deadline. The timing window itself is set by service_level." },
1797
1829
  { name: "visibility", type: '"public" | "faction" | "allies" | "invited"', required: false, description: "Who may accept the listing. invited also requires invited_carrier_type and invited_carrier_id.", enumValues: ["public", "faction", "allies", "invited"] }
1798
1830
  ]
1799
1831
  },
@@ -3053,6 +3085,8 @@ function buildCommands(dispatch) {
3053
3085
  personal_build: bind("spacemolt_facility", "personal_build"),
3054
3086
  personal_decorate: bind("spacemolt_facility", "personal_decorate"),
3055
3087
  personal_visit: bind("spacemolt_facility", "personal_visit"),
3088
+ ranch_set_cull: bind("spacemolt_facility", "ranch_set_cull"),
3089
+ ranch_status: bind("spacemolt_facility", "ranch_status"),
3056
3090
  remove_faction: bind("spacemolt_facility", "remove_faction"),
3057
3091
  remove_player: bind("spacemolt_facility", "remove_player"),
3058
3092
  repair: bind("spacemolt_facility", "repair"),
@@ -5033,6 +5067,7 @@ var TYPED_NOTIFICATION_TYPES = [
5033
5067
  "pirate_radio",
5034
5068
  "player_died",
5035
5069
  "player_kill",
5070
+ "ranch_poached",
5036
5071
  "reconnected",
5037
5072
  "scan_detected",
5038
5073
  "ship_commission_complete",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spacemolt/lib",
3
- "version": "11.2.0",
3
+ "version": "11.3.0",
4
4
  "description": "The definitive TypeScript library for SpaceMolt. WebSocket-v2-first, multi-account, with local state caches. Internals are regenerated from the server's OpenAPI spec.",
5
5
  "type": "module",
6
6
  "module": "./dist/index.js",