Faremeter API / types/src / x402Adapters
x402Adapters
Type Aliases
NetworkTranslator()
NetworkTranslator = (Defined in: packages/types/src/x402-adapters.ts:43 Callback for translating network identifiers between formats. For v1→v2 adapters: translates legacy network names to CAIP-2 identifiers. For v2→v1 adapters: translates CAIP-2 identifiers to legacy network names. Returns the translated network identifier, or the input unchanged if no translation is available.network) =>string
Parameters
network
string
Returns
string
Functions
adaptPayloadV1ToV2()
adaptPayloadV1ToV2(Defined in: packages/types/src/x402-adapters.ts:129 Converts a v1 payment payload to v2 format.payload,requirements,translateNetwork):object
Parameters
payload
The v1 payment payloadasset?
string = "string?"
network
string = "string"
payload
object = "object"
scheme
string = "string"
x402Version
number = "number.integer"
requirements
The v1 requirements used for resource extractionasset
string = "string"
description
string = "string"
extra?
object = "object?"
maxAmountRequired
string = "string.numeric"
maxTimeoutSeconds
number = "number.integer"
mimeType?
string = "string"
network
string = "string"
outputSchema?
object = "object?"
payTo
string = "string"
resource
string = "string.url"
scheme
string = "string"
translateNetwork
NetworkTranslator
Function to translate legacy network IDs to CAIP-2
Returns
object
The v2 payment payload
accepted
accepted:object=x402PaymentRequirements
accepted.amount
amount:string="string.numeric"
accepted.asset
asset:string="string"
accepted.extra?
optionalextra:object="object"
accepted.maxTimeoutSeconds
maxTimeoutSeconds:number="number.integer"
accepted.network
network:string="string"
accepted.payTo
payTo:string="string"
accepted.scheme
scheme:string="string"
extensions?
optionalextensions:object="object"
payload
payload:object="object"
resource?
optionalresource:object=x402ResourceInfo
resource.description?
optionaldescription:string="string"
resource.mimeType?
optionalmimeType:string="string"
resource.url
url:string="string"
x402Version
x402Version:2="2"
adaptPaymentRequiredResponseV1ToV2()
adaptPaymentRequiredResponseV1ToV2(Defined in: packages/types/src/x402-adapters.ts:150 Converts a v1 payment required response to v2 format.v1Response,resourceURL,translateNetwork):object
Parameters
v1Response
The v1 payment required responseaccepts
object[] = ...
error?
string = "string"
x402Version
number = "number.integer"
resourceURL
string
The URL of the protected resource
translateNetwork
NetworkTranslator
Function to translate legacy network IDs to CAIP-2
Returns
object
The v2 payment required response
accepts
accepts: object[]
error?
optionalerror:string="string"
extensions?
optionalextensions:object="object"
resource
resource:object=x402ResourceInfo
resource.description?
optionaldescription:string="string"
resource.mimeType?
optionalmimeType:string="string"
resource.url
url:string="string"
x402Version
x402Version:2="2"
adaptPaymentRequiredResponseV2ToV1()
adaptPaymentRequiredResponseV2ToV1(Defined in: packages/types/src/x402-adapters.ts:188 Converts a v2 payment required response to v1 format.v2Response,translateNetwork?):object
Parameters
v2Response
The v2 payment required responseaccepts
object[] = ...
error?
string = "string"
extensions?
object = "object"
resource
{description?: string; mimeType?: string; url: string; } = x402ResourceInfo
resource.description?
string = "string"
resource.mimeType?
string = "string"
resource.url
string = "string"
x402Version
2 = "2"
translateNetwork?
NetworkTranslator
Optional function to translate CAIP-2 to legacy IDs
Returns
object
The v1 payment required response
accepts
accepts: object[]
error
error:string="string"
x402Version
x402Version:number="number.integer"
adaptRequirementsV1ToV2()
adaptRequirementsV1ToV2(Defined in: packages/types/src/x402-adapters.ts:52 Converts v1 payment requirements to v2 format.req,translateNetwork):object
Parameters
req
The v1 payment requirementsasset
string = "string"
description
string = "string"
extra?
object = "object?"
maxAmountRequired
string = "string.numeric"
maxTimeoutSeconds
number = "number.integer"
mimeType?
string = "string"
network
string = "string"
outputSchema?
object = "object?"
payTo
string = "string"
resource
string = "string.url"
scheme
string = "string"
translateNetwork
NetworkTranslator
Function to translate legacy network IDs to CAIP-2
Returns
object
The v2 payment requirements
amount
amount:string="string.numeric"
asset
asset:string="string"
extra?
optionalextra:object="object"
maxTimeoutSeconds
maxTimeoutSeconds:number="number.integer"
network
network:string="string"
payTo
payTo:string="string"
scheme
scheme:string="string"
adaptRequirementsV2ToV1()
adaptRequirementsV2ToV1(Defined in: packages/types/src/x402-adapters.ts:78 Converts v2 payment requirements to v1 format.req,resource,translateNetwork?):object&object
Parameters
req
The v2 payment requirementsamount
string = "string.numeric"
asset
string = "string"
extra?
object = "object"
maxTimeoutSeconds
number = "number.integer"
network
string = "string"
payTo
string = "string"
scheme
string = "string"
resource
Resource information to populate v1 fieldsdescription?
string = "string"
mimeType?
string = "string"
url
string = "string"
translateNetwork?
NetworkTranslator
Optional function to translate CAIP-2 to legacy IDs
Returns
object & object
The v1 payment requirements with mimeType guaranteed
adaptSettleResponseLegacyToV2()
adaptSettleResponseLegacyToV2(Defined in: packages/types/src/x402-adapters.ts:322 Adapt legacy v1 settle response (with txHash/networkId/error) to v2 format. Use this when receiving data from older clients that use legacy field names.res):object
Parameters
res
error?
null | string = “string | null”
networkId
null | string = “string | null”
payer?
string = "string"
success
boolean = "boolean"
txHash
null | string = “string | null”
Returns
object
errorReason?
optionalerrorReason:string="string"
extensions?
optionalextensions:object="object"
network
network:string="string"
payer?
optionalpayer:string="string"
success
success:boolean="boolean"
transaction
transaction:string="string"
adaptSettleResponseLenientToV2()
adaptSettleResponseLenientToV2(Defined in: packages/types/src/x402-adapters.ts:352 Adapt a lenient v1 settle response (accepting either legacy or spec-compliant field names) to v2 format. This is the most flexible adapter for parsing incoming settle responses from unknown sources.res):object
Parameters
res
error?
null | string = “string | null”
errorReason?
null | string = “string | null”
network?
null | string = “string | null”
networkId?
null | string = “string | null”
payer?
string = "string"
success
boolean = "boolean"
transaction?
null | string = “string | null”
txHash?
null | string = “string | null”
Returns
object
errorReason?
optionalerrorReason:string="string"
extensions?
optionalextensions:object="object"
network
network:string="string"
payer?
optionalpayer:string="string"
success
success:boolean="boolean"
transaction
transaction:string="string"
adaptSettleResponseV1ToV2()
adaptSettleResponseV1ToV2(Defined in: packages/types/src/x402-adapters.ts:290 Adapt v1 settle response to v2 format. Accepts lenient input that may have optional/nullable fields from older handlers.res):object
Parameters
res
error?
null | string = “string | null”
errorReason?
null | string = “string | null”
network?
null | string = “string | null”
networkId?
null | string = “string | null”
payer?
string = "string"
success
boolean = "boolean"
transaction?
null | string = “string | null”
txHash?
null | string = “string | null”
Returns
object
errorReason?
optionalerrorReason:string="string"
extensions?
optionalextensions:object="object"
network
network:string="string"
payer?
optionalpayer:string="string"
success
success:boolean="boolean"
transaction
transaction:string="string"
adaptSettleResponseV2ToV1()
adaptSettleResponseV2ToV1(Defined in: packages/types/src/x402-adapters.ts:246 Adapt v2 settle response to spec-compliant v1 format. Since v1 spec uses the same field names as v2 (transaction, network, errorReason), this is primarily a network translation pass.res,translateNetwork?):object
Parameters
res
errorReason?
string = "string"
extensions?
object = "object"
network
string = "string"
payer?
string = "string"
success
boolean = "boolean"
transaction
string = "string"
translateNetwork?
NetworkTranslator
Returns
object
errorReason?
optionalerrorReason:string="string"
network
network:string="string"
payer
payer:string="string"
success
success:boolean="boolean"
transaction
transaction:string="string"
adaptSettleResponseV2ToV1Legacy()
adaptSettleResponseV2ToV1Legacy(Defined in: packages/types/src/x402-adapters.ts:268 Adapt v2 settle response to legacy v1 format with old field names. Use this only for backward compatibility with clients expecting txHash/networkId/error field names.res,translateNetwork?):object
Parameters
res
errorReason?
string = "string"
extensions?
object = "object"
network
string = "string"
payer?
string = "string"
success
boolean = "boolean"
transaction
string = "string"
translateNetwork?
NetworkTranslator
Returns
object
error?
optionalerror:null|string="string | null"
networkId
networkId:null|string="string | null"
payer?
optionalpayer:string="string"
success
success:boolean="boolean"
txHash
txHash:null|string="string | null"
Deprecated
Prefer adaptSettleResponseV2ToV1 for spec-compliant outputadaptSupportedKindV1ToV2()
adaptSupportedKindV1ToV2(Defined in: packages/types/src/x402-adapters.ts:388 Converts a v1 supported kind to v2 format.kind,translateNetwork):object
Parameters
kind
The v1 supported kindextra?
object = "object?"
network
string = "string"
scheme
string = "string"
x402Version
number = "number.integer"
translateNetwork
NetworkTranslator
Function to translate legacy network IDs to CAIP-2
Returns
object
The v2 supported kind
extra?
optionalextra:object="object"
network
network:string="string"
scheme
scheme:string="string"
x402Version
x402Version:2="2"
adaptSupportedKindV2ToV1()
adaptSupportedKindV2ToV1(Defined in: packages/types/src/x402-adapters.ts:366 Converts a v2 supported kind to v1 format.kind,translateNetwork?):object
Parameters
kind
The v2 supported kindextra?
object = "object"
network
string = "string"
scheme
string = "string"
x402Version
2 = "2"
translateNetwork?
NetworkTranslator
Optional function to translate CAIP-2 to legacy IDs
Returns
object
The v1 supported kind
extra?
optionalextra:object="object"
network
network:string="string"
scheme
scheme:string="string"
x402Version
x402Version:1|2="1 | 2"
adaptVerifyResponseV1ToV2()
adaptVerifyResponseV1ToV2(Defined in: packages/types/src/x402-adapters.ts:226 Converts a v1 verify response to v2 format.res):object
Parameters
res
The v1 verify response (lenient)invalidReason?
null | string = “string | null”
isValid
boolean = "boolean"
payer?
string = "string"
Returns
object
The v2 verify response
invalidReason?
optionalinvalidReason:string="string"
isValid
isValid:boolean="boolean"
payer?
optionalpayer:string="string"
adaptVerifyResponseV2ToV1()
adaptVerifyResponseV2ToV1(Defined in: packages/types/src/x402-adapters.ts:207 Converts a v2 verify response to v1 format.res):object
Parameters
res
The v2 verify responseinvalidReason?
string = "string"
isValid
boolean = "boolean"
payer?
string = "string"
Returns
object
The v1 verify response
invalidReason?
optionalinvalidReason:string="string"
isValid
isValid:boolean="boolean"
payer
payer:string="string"
extractResourceInfoV1()
extractResourceInfoV1(Defined in: packages/types/src/x402-adapters.ts:106 Extracts resource information from v1 payment requirements.req):object
Parameters
req
The v1 payment requirements containing resource fieldsasset
string = "string"
description
string = "string"
extra?
object = "object?"
maxAmountRequired
string = "string.numeric"
maxTimeoutSeconds
number = "number.integer"
mimeType?
string = "string"
network
string = "string"
outputSchema?
object = "object?"
payTo
string = "string"
resource
string = "string.url"
scheme
string = "string"
Returns
object
The extracted resource information
description?
optionaldescription:string="string"
mimeType?
optionalmimeType:string="string"
url
url:string="string"