ClawbackOperationResponse
extends OperationResponse
in package
Represents a clawback operation response from Horizon API
This operation claws back a specified amount of an asset from a holding account, burning the asset and reducing the total supply. Only the asset issuer can perform clawbacks, and only if the AUTH_CLAWBACK_ENABLED flag is set on the asset. This is used to retrieve assets from accounts for regulatory compliance or asset management purposes.
Tags
Table of Contents
Properties
- $transactionSuccessful : bool
- $httpClient : Client|null
- $rateLimitLimit : int|null
- $rateLimitRemaining : int|null
- $rateLimitReset : int|null
Methods
- fromJson() : ClawbackOperationResponse
- getAmount() : string
- Gets the amount of the asset being clawed back
- getAsset() : Asset
- Gets the asset being clawed back
- getCreatedAt() : string
- Gets the timestamp when this operation was created
- getFrom() : string
- Gets the account from which the asset is being clawed back
- getFromMuxed() : string|null
- Gets the multiplexed source account if applicable
- getFromMuxedId() : string|null
- Gets the multiplexed source account ID if applicable
- getHttpClient() : Client|null
- Gets the HTTP client used for pagination requests
- getHumanReadableOperationType() : string
- Gets the human-readable operation type name
- getLinks() : OperationLinksResponse
- Gets the hypermedia links to related resources
- getOperationId() : string
- Gets the unique identifier for this operation
- getOperationType() : int
- Gets the operation type as an integer code
- getPagingToken() : string
- Gets the paging token for this operation in list results
- 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.
- getSourceAccount() : string
- Gets the source account for this operation
- getSourceAccountMuxed() : string|null
- Gets the multiplexed source account if applicable
- getSourceAccountMuxedId() : string|null
- Gets the multiplexed source account ID if applicable
- getTransaction() : TransactionResponse|null
- Gets the full transaction details if requested via join parameter
- getTransactionHash() : string
- Gets the hash of the transaction containing this operation
- isTransactionSuccessful() : bool
- Checks if the parent transaction was successful
- 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
$transactionSuccessful
public
bool
$transactionSuccessful
$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()
public
static fromJson(array<string|int, mixed> $jsonData) : ClawbackOperationResponse
Parameters
- $jsonData : array<string|int, mixed>
Return values
ClawbackOperationResponsegetAmount()
Gets the amount of the asset being clawed back
public
getAmount() : string
Return values
string —The amount as a string to preserve precision
getAsset()
Gets the asset being clawed back
public
getAsset() : Asset
Return values
Asset —The asset details (type, code, issuer)
getCreatedAt()
Gets the timestamp when this operation was created
public
getCreatedAt() : string
Return values
string —The creation time in ISO 8601 format
getFrom()
Gets the account from which the asset is being clawed back
public
getFrom() : string
Return values
string —The source account ID
getFromMuxed()
Gets the multiplexed source account if applicable
public
getFromMuxed() : string|null
Return values
string|null —The muxed source account address or null
getFromMuxedId()
Gets the multiplexed source account ID if applicable
public
getFromMuxedId() : string|null
Return values
string|null —The muxed source account ID or null
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
getHumanReadableOperationType()
Gets the human-readable operation type name
public
getHumanReadableOperationType() : string
Examples: "payment", "create_account", "manage_sell_offer"
Return values
string —The operation type as a string
getLinks()
Gets the hypermedia links to related resources
public
getLinks() : OperationLinksResponse
Return values
OperationLinksResponse —Links to effects, transaction, etc.
getOperationId()
Gets the unique identifier for this operation
public
getOperationId() : string
Return values
string —The operation ID
getOperationType()
Gets the operation type as an integer code
public
getOperationType() : int
Return values
int —The operation type code matching OperationType constants
getPagingToken()
Gets the paging token for this operation in list results
public
getPagingToken() : string
Return values
string —The paging token used for cursor-based pagination
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|nullgetSourceAccount()
Gets the source account for this operation
public
getSourceAccount() : string
Return values
string —The source account ID
getSourceAccountMuxed()
Gets the multiplexed source account if applicable
public
getSourceAccountMuxed() : string|null
Return values
string|null —The muxed source account address, or null if not muxed
getSourceAccountMuxedId()
Gets the multiplexed source account ID if applicable
public
getSourceAccountMuxedId() : string|null
Return values
string|null —The muxed account ID, or null if not muxed
getTransaction()
Gets the full transaction details if requested via join parameter
public
getTransaction() : TransactionResponse|null
Return values
TransactionResponse|null —The transaction, or null if not joined
getTransactionHash()
Gets the hash of the transaction containing this operation
public
getTransactionHash() : string
Return values
string —The transaction hash
isTransactionSuccessful()
Checks if the parent transaction was successful
public
isTransactionSuccessful() : bool
Return values
bool —True if the transaction succeeded
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
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