feat(#15): Regen api

This commit is contained in:
Sirttas
2026-07-09 17:30:27 +02:00
parent 5a974bac8f
commit 0f97a49e26
2 changed files with 461 additions and 17 deletions
+154 -4
View File
@@ -147,7 +147,7 @@ paths:
type: array
items:
$ref: "#/components/schemas/ReprocessingResultResponse"
/reprocessing/raw:
/reprocessing/paste:
post:
tags:
- reprocessing
@@ -205,7 +205,7 @@ paths:
'*/*':
schema:
$ref: "#/components/schemas/RefreshResponse"
/market/types/parse:
/market/types/paste:
post:
tags:
- market
@@ -233,6 +233,44 @@ paths:
"400":
description: Returned when a line carries a quantity that is not a positive
whole number
/market/prices/paste:
post:
tags:
- market
summary: "Parse a pasted EVE inventory block (item name + quantity, tab/newline\
\ separated) and return the current valuation of each stack at the given market\
\ location (Jita by default)"
operationId: pastePrices
parameters:
- name: locationId
in: query
description: Station or structure id of the market to price against; defaults
to Jita when omitted
required: false
schema:
type: integer
format: int64
requestBody:
content:
text/plain:
schema:
type: string
description: "Raw inventory block copied from the EVE client, e.g. \"\
Tritanium\\t1000\""
required: true
responses:
"200":
description: "One stack appraisal per resolved market type, valued at current\
\ buy and sell prices"
content:
'*/*':
schema:
type: array
items:
$ref: "#/components/schemas/MarketTypeStackAppraisalResponse"
"400":
description: Returned when the request body is not text/plain or locationId
is not a market location id
/market/history/refresh:
post:
tags:
@@ -641,8 +679,9 @@ paths:
get:
tags:
- market
summary: "Return the current Jita order book (highest buy, lowest sell, order\
\ count) for each requested market type"
summary: "Return the current order book (highest buy, lowest sell, order count)\
\ for each requested market type, priced at the given market location (Jita\
\ by default)"
operationId: currentPrices
parameters:
- name: types
@@ -654,6 +693,14 @@ paths:
items:
type: integer
format: int64
- name: locationId
in: query
description: Station or structure id of the market to price against; defaults
to Jita when omitted
required: false
schema:
type: integer
format: int64
responses:
"200":
description: "The order book for each requested type, one entry per type"
@@ -668,6 +715,7 @@ paths:
Returned when:
- the types parameter is missing
- a types value is not a numeric id
- locationId is not a market location id
/market/orders:
get:
tags:
@@ -726,6 +774,69 @@ paths:
- the types parameter is missing
- a types value is not a numeric id
- the days parameter is not greater than 0
/locations/{id}:
get:
tags:
- universe
summary: Resolve a market location id to its name and containing solar system
and region
operationId: resolveLocation
parameters:
- name: id
in: path
description: "Market location id (station id) to resolve, e.g. 60003760"
required: true
schema:
type: integer
format: int64
responses:
"200":
description: The resolved market location
content:
'*/*':
schema:
$ref: "#/components/schemas/MarketLocationResponse"
"400":
description: Returned when the id is not a market location id
"404":
description: Returned when no market location has the given id
/locations/search:
get:
tags:
- universe
summary: "Search NPC market locations (stations) whose name contains the given\
\ text, case-insensitively"
operationId: searchLocations
parameters:
- name: name
in: query
description: "Text to match against the location name, e.g. name=jita"
required: true
schema:
type: string
- name: limit
in: query
description: "Maximum number of results to return, defaults to 50"
required: false
schema:
type: integer
format: int32
default: 50
responses:
"200":
description: "The market locations matching the search, ordered by name\
\ and capped at the requested limit"
content:
'*/*':
schema:
type: array
items:
$ref: "#/components/schemas/MarketLocationResponse"
"400":
description: |-
Returned when:
- the name parameter is missing
- the limit value is not a number
/ledgers:
get:
tags:
@@ -1590,6 +1701,45 @@ components:
- regionId
- volumeRemain
- volumeTotal
MarketLocationResponse:
type: object
description: A market location (NPC station) with its containing solar system
and region.
properties:
id:
type: integer
format: int64
description: EVE market location id (station id).
example: 60003760
name:
type: string
description: Location name.
example: Jita IV - Moon 4 - Caldari Navy Assembly Plant
systemId:
type: integer
format: int64
description: Id of the solar system the location is in.
example: 30000142
systemName:
type: string
description: Name of the solar system the location is in.
example: Jita
regionId:
type: integer
format: int64
description: Id of the region the location is in.
example: 10000002
regionName:
type: string
description: Name of the region the location is in.
example: The Forge
required:
- id
- name
- regionId
- regionName
- systemId
- systemName
LedgerResponse:
description: "A ledger, either a standalone main ledger or a combined ledger\
\ aggregating others."