Skip to main content
Faremeter API
Faremeter API / fetch/src / internal

internal

Type Aliases

DetectedVersion

DetectedVersion = 1 | 2
Defined in: packages/fetch/src/internal.ts:29

ProcessPaymentRequiredResponseOpts

ProcessPaymentRequiredResponseOpts = object
Defined in: packages/fetch/src/internal.ts:56 Options for processing a 402 Payment Required response.

Properties

handlers
handlers: PaymentHandler[]
Defined in: packages/fetch/src/internal.ts:58 Payment handlers that produce execers for payment requirements.
payerChooser()?
optional payerChooser: (execer) => Promise<PaymentExecer>
Defined in: packages/fetch/src/internal.ts:60 Optional function to select among multiple possible payers. Defaults to chooseFirstAvailable.
Parameters
execer
PaymentExecer[]
Returns
Promise<PaymentExecer>

ProcessPaymentRequiredResponseResult

ProcessPaymentRequiredResponseResult = object
Defined in: packages/fetch/src/internal.ts:66 Result of processing a 402 Payment Required response.

Properties

detectedVersion
detectedVersion: DetectedVersion
Defined in: packages/fetch/src/internal.ts:76 The detected protocol version (1 or 2).
payer
payer: PaymentExecer
Defined in: packages/fetch/src/internal.ts:68 The selected payment execer.
payerResult
payerResult: object
Defined in: packages/fetch/src/internal.ts:70 The result from executing the payment.
payload
payload: object
paymentHeader
paymentHeader: string
Defined in: packages/fetch/src/internal.ts:74 Base64-encoded payment header ready to attach to the retry request.
paymentPayload
paymentPayload: x402PaymentPayload | x402PaymentPayloadV1
Defined in: packages/fetch/src/internal.ts:72 The payment payload in the detected protocol version format.

Variables

V2_PAYMENT_HEADER

const V2_PAYMENT_HEADER: "PAYMENT-SIGNATURE" = "PAYMENT-SIGNATURE"
Defined in: packages/types/dist/src/x402v2.d.ts:4 HTTP header name for v2 client payment signatures.

V2_PAYMENT_REQUIRED_HEADER

const V2_PAYMENT_REQUIRED_HEADER: "PAYMENT-REQUIRED" = "PAYMENT-REQUIRED"
Defined in: packages/types/dist/src/x402v2.d.ts:8 HTTP header name for v2 402 payment required responses.

X_PAYMENT_HEADER

const X_PAYMENT_HEADER: "X-PAYMENT" = "X-PAYMENT"
Defined in: packages/types/dist/src/x402.d.ts:4 HTTP header name for v1 client payment payloads.

Functions

chooseFirstAvailable()

chooseFirstAvailable(possiblePayers): PaymentExecer
Defined in: packages/fetch/src/internal.ts:37 Default payer chooser that selects the first available payment execer.

Parameters

possiblePayers
PaymentExecer[] Array of payment execers that can handle the requirements

Returns

PaymentExecer The first execer in the array

processPaymentRequiredResponse()

processPaymentRequiredResponse(ctx, response, options): Promise<ProcessPaymentRequiredResponseResult>
Defined in: packages/fetch/src/internal.ts:87 Process a 402 Payment Required response, auto-detecting v1 or v2 protocol.

Parameters

ctx
RequestContext Request context
response
Response The 402 Response object (must not have been consumed)
options
ProcessPaymentRequiredResponseOpts Processing options including payment handlers

Returns

Promise<ProcessPaymentRequiredResponseResult> Payment information including header and detected version