Class SettlementRecord
- All Implemented Interfaces:
Serializable,SdkPojo,ToCopyableBuilder<SettlementRecord.Builder,SettlementRecord>
A single settlement transaction record for AI bot monetization. Contains details about the payment including timestamp, amount, status, and the parties involved.
- See Also:
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptionfinal Stringamount()The payment amount in the specified currency.static SettlementRecord.Builderbuilder()final StringThe content path that was accessed.final Currencycurrency()The currency of the payment amount.final StringThe currency of the payment amount.final booleanfinal booleanequalsBySdkFields(Object obj) Indicates whether some other object is "equal to" this one by SDK fields.final <T> Optional<T> getValueForField(String fieldName, Class<T> clazz) final inthashCode()final Stringintent()The declared intent of the AI bot request.final Stringnetwork()The blockchain network on which the settlement occurred.final StringThe organization associated with the AI bot.final StringThe blockchain wallet address of the paying AI agent.final StringThe WAF request ID associated with this settlement.final InstantThe timestamp of the original web request.static Class<? extends SettlementRecord.Builder> final StringThe category of the AI bot source.final StringThe name of the AI bot that made the payment.final SettlementStatusstatus()The status of the settlement.final StringThe status of the settlement.final InstantThe timestamp when the settlement was recorded.Take this object and create a builder that contains all of the current property values of this object.final StringtoString()Returns a string representation of this object.final StringThe blockchain transaction identifier.final Booleanverified()Whether the AI bot's identity was verified.final StringYour receiving wallet address.final StringThe ARN of the web ACL that processed the request.Methods inherited from interface software.amazon.awssdk.utils.builder.ToCopyableBuilder
copy
-
Method Details
-
timestamp
The timestamp when the settlement was recorded.
- Returns:
- The timestamp when the settlement was recorded.
-
payerAddress
The blockchain wallet address of the paying AI agent.
- Returns:
- The blockchain wallet address of the paying AI agent.
-
walletAddress
Your receiving wallet address.
- Returns:
- Your receiving wallet address.
-
status
The status of the settlement. Possible values:
-
SETTLED- The payment was successfully settled on the blockchain and the transfer from the payer's wallet to the publisher's wallet is confirmed. TheTransactionIdfield contains the on-chain transaction hash. Content is served to the client. -
PENDING- The blockchain transaction has been submitted but not yet confirmed on-chain. This is a transient state that automatically resolves to eitherSETTLEDorFAILED. No action is required. While pending, content is not served and the API returns a 402 response. Clients can retry the request. -
FAILED- The payment settlement was attempted but failed. Possible causes include insufficient funds, an expired payment authorization, or a reverted blockchain transaction. ThefailureReasonfield contains a machine-readable error code. Content is not served. -
SERVICE_ERROR- Settlement could not be completed due to an internal service issue or an issue with the payment network. Content is not served. The client's payment authorization remains valid and the request can be retried. -
SKIPPED_ORIGIN_ERROR- The origin returned a non-2xx response, so settlement was intentionally skipped. The client is not charged. -
DUPLICATE- A prior request with the same payment payload has already been settled. This status typically appears when a previous attempt timed out but the payment was ultimately processed. The client is not charged again.
If the service returns an enum value that is not available in the current SDK version,
statuswill returnSettlementStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromstatusAsString().- Returns:
- The status of the settlement. Possible values:
-
SETTLED- The payment was successfully settled on the blockchain and the transfer from the payer's wallet to the publisher's wallet is confirmed. TheTransactionIdfield contains the on-chain transaction hash. Content is served to the client. -
PENDING- The blockchain transaction has been submitted but not yet confirmed on-chain. This is a transient state that automatically resolves to eitherSETTLEDorFAILED. No action is required. While pending, content is not served and the API returns a 402 response. Clients can retry the request. -
FAILED- The payment settlement was attempted but failed. Possible causes include insufficient funds, an expired payment authorization, or a reverted blockchain transaction. ThefailureReasonfield contains a machine-readable error code. Content is not served. -
SERVICE_ERROR- Settlement could not be completed due to an internal service issue or an issue with the payment network. Content is not served. The client's payment authorization remains valid and the request can be retried. -
SKIPPED_ORIGIN_ERROR- The origin returned a non-2xx response, so settlement was intentionally skipped. The client is not charged. -
DUPLICATE- A prior request with the same payment payload has already been settled. This status typically appears when a previous attempt timed out but the payment was ultimately processed. The client is not charged again.
-
- See Also:
-
-
statusAsString
The status of the settlement. Possible values:
-
SETTLED- The payment was successfully settled on the blockchain and the transfer from the payer's wallet to the publisher's wallet is confirmed. TheTransactionIdfield contains the on-chain transaction hash. Content is served to the client. -
PENDING- The blockchain transaction has been submitted but not yet confirmed on-chain. This is a transient state that automatically resolves to eitherSETTLEDorFAILED. No action is required. While pending, content is not served and the API returns a 402 response. Clients can retry the request. -
FAILED- The payment settlement was attempted but failed. Possible causes include insufficient funds, an expired payment authorization, or a reverted blockchain transaction. ThefailureReasonfield contains a machine-readable error code. Content is not served. -
SERVICE_ERROR- Settlement could not be completed due to an internal service issue or an issue with the payment network. Content is not served. The client's payment authorization remains valid and the request can be retried. -
SKIPPED_ORIGIN_ERROR- The origin returned a non-2xx response, so settlement was intentionally skipped. The client is not charged. -
DUPLICATE- A prior request with the same payment payload has already been settled. This status typically appears when a previous attempt timed out but the payment was ultimately processed. The client is not charged again.
If the service returns an enum value that is not available in the current SDK version,
statuswill returnSettlementStatus.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromstatusAsString().- Returns:
- The status of the settlement. Possible values:
-
SETTLED- The payment was successfully settled on the blockchain and the transfer from the payer's wallet to the publisher's wallet is confirmed. TheTransactionIdfield contains the on-chain transaction hash. Content is served to the client. -
PENDING- The blockchain transaction has been submitted but not yet confirmed on-chain. This is a transient state that automatically resolves to eitherSETTLEDorFAILED. No action is required. While pending, content is not served and the API returns a 402 response. Clients can retry the request. -
FAILED- The payment settlement was attempted but failed. Possible causes include insufficient funds, an expired payment authorization, or a reverted blockchain transaction. ThefailureReasonfield contains a machine-readable error code. Content is not served. -
SERVICE_ERROR- Settlement could not be completed due to an internal service issue or an issue with the payment network. Content is not served. The client's payment authorization remains valid and the request can be retried. -
SKIPPED_ORIGIN_ERROR- The origin returned a non-2xx response, so settlement was intentionally skipped. The client is not charged. -
DUPLICATE- A prior request with the same payment payload has already been settled. This status typically appears when a previous attempt timed out but the payment was ultimately processed. The client is not charged again.
-
- See Also:
-
-
amount
The payment amount in the specified currency.
- Returns:
- The payment amount in the specified currency.
-
currency
The currency of the payment amount.
If the service returns an enum value that is not available in the current SDK version,
currencywill returnCurrency.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromcurrencyAsString().- Returns:
- The currency of the payment amount.
- See Also:
-
currencyAsString
The currency of the payment amount.
If the service returns an enum value that is not available in the current SDK version,
currencywill returnCurrency.UNKNOWN_TO_SDK_VERSION. The raw value returned by the service is available fromcurrencyAsString().- Returns:
- The currency of the payment amount.
- See Also:
-
network
The blockchain network on which the settlement occurred.
- Returns:
- The blockchain network on which the settlement occurred.
-
transactionId
The blockchain transaction identifier. You can use this to verify the transaction on a blockchain explorer.
- Returns:
- The blockchain transaction identifier. You can use this to verify the transaction on a blockchain explorer.
-
requestId
The WAF request ID associated with this settlement.
- Returns:
- The WAF request ID associated with this settlement.
-
sourceName
The name of the AI bot that made the payment.
- Returns:
- The name of the AI bot that made the payment.
-
organization
The organization associated with the AI bot.
- Returns:
- The organization associated with the AI bot.
-
sourceCategory
The category of the AI bot source.
- Returns:
- The category of the AI bot source.
-
intent
The declared intent of the AI bot request.
- Returns:
- The declared intent of the AI bot request.
-
verified
Whether the AI bot's identity was verified.
- Returns:
- Whether the AI bot's identity was verified.
-
contentPath
The content path that was accessed.
- Returns:
- The content path that was accessed.
-
webAclArn
The ARN of the web ACL that processed the request.
- Returns:
- The ARN of the web ACL that processed the request.
-
requestTimestamp
The timestamp of the original web request.
- Returns:
- The timestamp of the original web request.
-
toBuilder
Description copied from interface:ToCopyableBuilderTake this object and create a builder that contains all of the current property values of this object.- Specified by:
toBuilderin interfaceToCopyableBuilder<SettlementRecord.Builder,SettlementRecord> - Returns:
- a builder for type T
-
builder
-
serializableBuilderClass
-
hashCode
-
equals
-
equalsBySdkFields
Description copied from interface:SdkPojoIndicates whether some other object is "equal to" this one by SDK fields. An SDK field is a modeled, non-inherited field in anSdkPojoclass, and is generated based on a service model.If an
SdkPojoclass does not have any inherited fields,equalsBySdkFieldsandequalsare essentially the same.- Specified by:
equalsBySdkFieldsin interfaceSdkPojo- Parameters:
obj- the object to be compared with- Returns:
- true if the other object equals to this object by sdk fields, false otherwise.
-
toString
-
getValueForField
-
sdkFields
-
sdkFieldNameToField
- Specified by:
sdkFieldNameToFieldin interfaceSdkPojo- Returns:
- The mapping between the field name and its corresponding field.
-