OrderBookResponse
extends Response
in package
Represents the order book for a trading pair on Stellar DEX
This response contains the current state of the order book (bids and asks) for a specific asset pair on the Stellar distributed exchange. The order book displays all outstanding offers to buy (bids) and sell (asks) the counter asset in terms of the base asset, organized by price levels with aggregated amounts.
Key fields:
- Base asset (the asset being priced)
- Counter asset (the asset used for pricing)
- Bids (offers to buy counter asset with base asset)
- Asks (offers to sell counter asset for base asset)
The bids and asks are sorted by price with best prices first. Each entry shows the price and the total amount available at that price level. This snapshot enables market analysis, order placement, and price discovery for trading pairs.
Returned by Horizon endpoint:
- GET /order_book - Order book for a specific trading pair
Tags
Table of Contents
Properties
- $httpClient : Client|null
- $rateLimitLimit : int|null
- $rateLimitRemaining : int|null
- $rateLimitReset : int|null
Methods
- fromJson() : OrderBookResponse
- Creates an OrderBookResponse from JSON data
- getAsks() : OrderBookRowsResponse
- Gets the sell offers (asks) in the order book
- getBase() : Asset
- Gets the base asset in this trading pair
- getBids() : OrderBookRowsResponse
- Gets the buy offers (bids) in the order book
- getCounter() : Asset
- Gets the counter asset in this trading pair
- getHttpClient() : Client|null
- Gets the HTTP client used for pagination requests
- getRateLimitLimit() : int|null
- Returns X-RateLimit-Limit header from the response.
- getRateLimitRemaining() : int|null
- Returns X-RateLimit-Remaining header from the response.
- getRateLimitReset() : int|null
- Returns X-RateLimit-Reset header from the response. Seconds until a new window starts.
- setHeaders() : void
- Extracts and sets rate limiting information from HTTP response headers
- setHttpClient() : void
- Sets the HTTP client for making follow-up requests
- loadFromJson() : void
- Loads response data from a JSON array
Properties
$httpClient
protected
Client|null
$httpClient
= null
$rateLimitLimit
protected
int|null
$rateLimitLimit
= null
$rateLimitRemaining
protected
int|null
$rateLimitRemaining
= null
$rateLimitReset
protected
int|null
$rateLimitReset
= null
Methods
fromJson()
Creates an OrderBookResponse from JSON data
public
static fromJson(array<string|int, mixed> $json) : OrderBookResponse
Parameters
- $json : array<string|int, mixed>
-
Associative array of parsed JSON response
Return values
OrderBookResponse —The populated order book response
getAsks()
Gets the sell offers (asks) in the order book
public
getAsks() : OrderBookRowsResponse
Return values
OrderBookRowsResponse —Collection of sell orders sorted by ascending price
getBase()
Gets the base asset in this trading pair
public
getBase() : Asset
Return values
Asset —The base asset being priced
getBids()
Gets the buy offers (bids) in the order book
public
getBids() : OrderBookRowsResponse
Return values
OrderBookRowsResponse —Collection of buy orders sorted by descending price
getCounter()
Gets the counter asset in this trading pair
public
getCounter() : Asset
Return values
Asset —The counter asset used for pricing
getHttpClient()
Gets the HTTP client used for pagination requests
public
getHttpClient() : Client|null
Return values
Client|null —The HTTP client instance, or null if not set
getRateLimitLimit()
Returns X-RateLimit-Limit header from the response.
public
getRateLimitLimit() : int|null
This number represents the he maximum number of requests that the current client can make in one hour.
Tags
Return values
int|nullgetRateLimitRemaining()
Returns X-RateLimit-Remaining header from the response.
public
getRateLimitRemaining() : int|null
The number of remaining requests for the current window.
Tags
Return values
int|nullgetRateLimitReset()
Returns X-RateLimit-Reset header from the response. Seconds until a new window starts.
public
getRateLimitReset() : int|null
Tags
Return values
int|nullsetHeaders()
Extracts and sets rate limiting information from HTTP response headers
public
setHeaders(array<string|int, mixed> $headers) : void
This method processes the X-Ratelimit-* headers from the HTTP response and stores them for client access.
Parameters
- $headers : array<string|int, mixed>
-
Associative array of HTTP headers from the response
setHttpClient()
Sets the HTTP client for making follow-up requests
public
setHttpClient([Client|null $httpClient = null ]) : void
Paginated responses contain links to next/previous pages. This HTTP client is used when following those links to fetch additional pages.
Parameters
- $httpClient : Client|null = null
-
The Guzzle HTTP client to use for pagination
loadFromJson()
Loads response data from a JSON array
protected
loadFromJson(array<string|int, mixed> $json) : void
This method is used internally to populate response objects from parsed JSON. Subclasses override this to extract their specific data fields.
Parameters
- $json : array<string|int, mixed>
-
Associative array of parsed JSON data