Skip to main content

API Reference

Titan uses SignalR for all client-server communication. There are no HTTP REST endpoints.

Connection

Connect to the SignalR Hubs at the base URL (e.g., https://localhost:12345).

Authentication: Pass the JWT token in the query string: ?access_token=<token>.

Hubs

AccountHub

Endpoint: /accountHub

MethodArgumentsReturnsDescription
LoginAsyncstring tokenAuthResponseLogin/Register with provider token
GetProfileAsync-UserProfileGet current user profile

InventoryHub

Endpoint: /inventoryHub

MethodArgumentsReturnsDescription
GetInventoryAsync-List<Item>Get all items for current character
GetItemAsyncGuid itemIdItemGet specific item details

TradeHub

Endpoint: /tradeHub

MethodArgumentsReturnsDescription
InitiateTradeAsyncGuid targetUserIdTradeSessionStart a new trade
JoinTradeAsyncGuid tradeIdTradeSessionJoin an existing trade
AddItemAsyncGuid itemIdvoidAdd item to active trade
RemoveItemAsyncGuid itemIdvoidRemove item
AcceptTradeAsync-TradeStatusLock in offer
CancelTradeAsync-voidCancel trade

SeasonHub

Endpoint: /seasonHub

MethodArgumentsReturnsDescription
GetCurrentSeasonAsync-SeasonGet active season info
GetSeasonsAsync-List<Season>List all seasons

ItemTypeHub

Endpoint: /itemTypeHub

MethodArgumentsReturnsDescription
GetAllItemTypesAsync-List<ItemType>Get registry of all items

Real-Time Events

Clients should subscribe to these events on the respective Hubs.

Trade Events (TradeHub)

EventDataDescription
TradeStartedTradeSessionYou have been invited to a trade
TradeUpdatedTradeSessionItems added/removed or status changed
TradeCompletedTradeSessionTrade successful
TradeCancelledGuid tradeIdTrade was cancelled

Season Events (SeasonHub)

EventDataDescription
SeasonStartedSeasonA new season has begun
SeasonEndedSeasonCurrent season has ended