Stellar PHP SDK API Documentation

PathsPageResponse extends PageResponse

Paginated collection of payment paths from Horizon API

This response represents a single page of payment paths returned by Horizon's path finding endpoints. Each page contains a collection of possible routes for converting one asset to another through the Stellar network, along with pagination links to navigate through the complete result set.

Path finding enables path payments where the sender delivers one asset while the recipient receives a different asset. Horizon calculates optimal conversion routes considering available offers, liquidity pools, and intermediate assets. The response follows Horizon's standard pagination pattern with cursor-based navigation.

Returned by Horizon endpoints:

  • GET /paths/strict-receive - Find paths for receiving a specific destination amount
  • GET /paths/strict-send - Find paths for sending a specific source amount
Tags
see
PageResponse

For pagination functionality

see
PathsResponse

For the collection of paths in this page

see
PathResponse

For individual path details

see
https://developers.stellar.org

Stellar developer docs

Table of Contents

Properties

$httpClient  : Client|null
$rateLimitLimit  : int|null
$rateLimitRemaining  : int|null
$rateLimitReset  : int|null

Methods

fromJson()  : PathsPageResponse
Creates a PathsPageResponse from JSON data
getHttpClient()  : Client|null
Gets the HTTP client used for pagination requests
getLinks()  : PagingLinksResponse
Gets the pagination links for navigating between pages
getNextPage()  : PathsPageResponse|null
Fetches the next page of payment paths
getPaths()  : PathsResponse
Gets the collection of payment paths in this page
getPreviousPage()  : PathsPageResponse|null
Fetches the previous page of payment paths
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.
hasNextPage()  : bool
Checks if a next page exists
hasPrevPage()  : bool
Checks if a previous page exists
setHeaders()  : void
Extracts and sets rate limiting information from HTTP response headers
setHttpClient()  : void
Sets the HTTP client for making follow-up requests
executeRequest()  : Response|null
getNextPageUrl()  : string|null
getPrevPageUrl()  : string|null
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 a PathsPageResponse from JSON data

public static fromJson(array<string|int, mixed> $json) : PathsPageResponse
Parameters
$json : array<string|int, mixed>

Associative array of parsed JSON response

Return values
PathsPageResponse

The populated page response

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
see
https://developers.stellar.org

Stellar developer docs Rate limiting documentation

Return values
int|null

getRateLimitRemaining()

Returns X-RateLimit-Remaining header from the response.

public getRateLimitRemaining() : int|null

The number of remaining requests for the current window.

Tags
see
https://developers.stellar.org

Stellar developer docs Rate limiting documentation

Return values
int|null

getRateLimitReset()

Returns X-RateLimit-Reset header from the response. Seconds until a new window starts.

public getRateLimitReset() : int|null
Tags
see
https://developers.stellar.org

Stellar developer docs Rate limiting documentation

Return values
int|null

hasNextPage()

Checks if a next page exists

public hasNextPage() : bool
Return values
bool

True if there is a next page available

hasPrevPage()

Checks if a previous page exists

public hasPrevPage() : bool
Return values
bool

True if there is a previous page available

setHeaders()

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

getNextPageUrl()

protected getNextPageUrl() : string|null
Return values
string|null

getPrevPageUrl()

protected getPrevPageUrl() : string|null
Return values
string|null

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


        
On this page

Search results