Created
March 22, 2024 14:41
-
-
Save RafaelAPB/b49284c9428311df9c65f16ba291dd29 to your computer and use it in GitHub Desktop.
blo spec version 7611657dc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
openapi: 3.0.3 | |
info: | |
title: SATP Gateway Client (Business Logic Orchestrator) | |
version: v0.0.1 | |
description: |- | |
SATP is a protocol operating between two gateways that conducts the transfer of a digital asset from one gateway to another. The protocol establishes a secure channel between the endpoints and implements a 2-phase commit to ensure the properties of transfer atomicity, consistency, isolation and durability. | |
This API defines the gateway client facing API (business logic orchestrator, or BLO), which is named API-Type 1 in the SATP-Core specification. | |
**Additional Resources**: | |
- [Proposed SATP Charter](https://datatracker.ietf.org/doc/charter-ietf-satp/) | |
- [SATP Core draft](https://datatracker.ietf.org/doc/draft-ietf-satp-core) | |
- [SATP Crash Recovery draft](https://datatracker.ietf.org/doc/draft-belchior-satp-gateway-recovery/) | |
- [SATP Architecture draft](https://datatracker.ietf.org/doc/draft-ietf-satp-architecture/) | |
- [SATP Use-Cases draft](https://datatracker.ietf.org/doc/draft-ramakrishna-sat-use-cases/) | |
- [SATP Data sharing draft](https://datatracker.ietf.org/doc/draft-ramakrishna-satp-data-sharing) | |
- [SATP View Addresses draft](https://datatracker.ietf.org/doc/draft-ramakrishna-satp-views-addresses) | |
contact: | |
name: Hyperledger Cacti | |
x-logo: | |
altText: Cacti logo | |
backgroundColor: '#fafafa' | |
url: https://github.com/hyperledger/cacti/blob/main/images/HL_Cacti_Logo_Color.png | |
externalDocs: | |
description: For more information about the SATP Gateway Client, refer to the official documentation. | |
url: https://github.com/hyperledger/cacti/tree/main/packages/cactus-plugin-satp-hermes/README.md | |
servers: | |
- url: http://{host}:{port}/api/v1/@hyperledger/cactus-plugin-satp-hermes | |
description: Development server | |
variables: | |
host: | |
default: localhost | |
port: | |
default: '3011' | |
tags: | |
- name: transaction | |
description: API endpoints for interacting with blockchains via gateways | |
- name: admin | |
description: API endpoints for fetching information on SATP sessions | |
paths: | |
/api/v1/@hyperledger/cactus-plugin-satp-hermes/transact: | |
post: | |
tags: | |
- transaction | |
summary: Submit a transaction intent | |
description: Allows users to queue intents for transactions based on specified parameters. | |
operationId: Transact | |
x-hyperledger-cacti: | |
http: | |
verbLowerCase: post | |
path: /api/v1/@hyperledger/cactus-plugin-satp-hermes/transact | |
requestBody: | |
content: | |
application/json: | |
schema: | |
type: object | |
properties: | |
contextID: | |
type: string | |
format: uuid | |
description: A unique identifier for the transaction context. | |
fromDLTNetworkID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
fromAmount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
fromToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
toDLTNetworkID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
toAmount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
toToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
required: | |
- contextID | |
- fromDLTNetworkID | |
- fromAmount | |
- fromToken | |
- toDLTNetworkID | |
- toAmount | |
- toToken | |
required: true | |
responses: | |
'200': | |
description: Transaction successfully queued | |
content: | |
application/json: | |
schema: | |
type: object | |
properties: | |
sessionID: | |
x-category: satp-core | |
type: string | |
description: Unique identifier (UUID) for the session. | |
example: 000003e8-e0b8-21ee-ba00-325096b39f47 | |
statusResponse: | |
type: object | |
x-category: response | |
required: | |
- status | |
- substatus | |
- stage | |
- step | |
- startTime | |
properties: | |
status: | |
type: string | |
enum: | |
- NOT_FOUND | |
- INVALID | |
- PENDING | |
- DONE | |
- FAILED | |
description: Current status of the SATP session. | |
substatus: | |
type: string | |
enum: | |
- WAIT_SOURCE_CONFIRMATIONS | |
- WAIT_DESTINATION_TRANSACTION | |
- BRIDGE_NOT_AVAILABLE | |
- CHAIN_NOT_AVAILABLE | |
- REFUND_IN_PROGRESS | |
- UNKNOWN_ERROR | |
- COMPLETED | |
- PARTIAL | |
- REFUNDED | |
- NOT_PROCESSABLE_REFUND_NEEDED | |
description: More detailed status of the SATP session. | |
stage: | |
type: string | |
enum: | |
- STAGE0 | |
- STAGE1 | |
- STAGE2 | |
- STAGE3 | |
description: Current stage of the SATP session. | |
step: | |
type: string | |
enum: | |
- transfer-initialization-claims | |
- conveyance-of-network-capabilities-and-parameters | |
- transfer-proposal-message | |
- transfer-proposal-receipt-message | |
- transfer-proposal-reject-and-conditional-reject-message | |
- transfer-commence-message | |
- commence-response-message | |
- lock-assertion-message | |
- lock-assertion-receipt-message | |
- commit-preparation-message | |
- commit-ready-message | |
- commit-final-assertion-message | |
- commit-final-acknowledgement-receipt-message | |
- transfer-complete-message | |
- rollback-transfer-initialization-claims | |
- rollback-conveyance-of-network-capabilities-and-parameters | |
- rollback-transfer-proposal-message | |
- rollback-transfer-proposal-receipt-message | |
- rollback-transfer-proposal-reject-and-conditional-reject-message | |
- rollback-transfer-commence-message | |
- rollback-commence-response-message | |
- rollback-lock-assertion-message | |
- rollback-lock-assertion-receipt-message | |
- rollback-commit-preparation-message | |
- rollback-commit-ready-message | |
- rollback-commit-final-assertion-message | |
- rollback-commit-final-acknowledgement-receipt-message | |
- rollback-transfer-complete-message | |
description: Current step within the stage of the SATP session. | |
startTime: | |
type: string | |
format: date-time | |
description: The start time of the SATP session. | |
required: | |
- sessionID | |
- statusResponse | |
default: | |
description: An error occurred | |
content: | |
application/json: | |
schema: | |
x-category: response | |
type: object | |
x-go-type: ApiError | |
x-go-name: ApiError | |
description: An Error | |
required: | |
- message | |
- type | |
- code | |
- status | |
- timestamp | |
properties: | |
type: | |
type: string | |
description: HTTP error type | |
example: bad-request | |
code: | |
type: integer | |
description: Numeric error code | |
example: 16384 | |
status: | |
type: integer | |
description: HTTP status of the error | |
example: 500 | |
message: | |
type: string | |
description: Long error description | |
example: Oops there's been an internal error handling | |
timestamp: | |
type: string | |
description: Timestamp of the error | |
example: '2021-07-21T17:32:28Z' | |
/api/v1/@hyperledger/cactus-plugin-satp-hermes/cancel: | |
post: | |
tags: | |
- transaction | |
summary: Cancel a transaction session | |
description: Attempts to cancel a previously submitted transaction intent using its session ID. | |
operationId: Cancel | |
x-hyperledger-cacti: | |
http: | |
verbLowerCase: post | |
path: /api/v1/@hyperledger/cactus-plugin-satp-hermes/cancel | |
requestBody: | |
content: | |
application/json: | |
schema: | |
type: object | |
properties: | |
sessionID: | |
x-category: satp-core | |
type: string | |
description: Unique identifier (UUID) for the session. | |
example: 000003e8-e0b8-21ee-ba00-325096b39f47 | |
required: | |
- sessionID | |
required: true | |
responses: | |
'200': | |
description: Transaction cancellation attempted | |
content: | |
application/json: | |
schema: | |
type: object | |
properties: | |
statusResponse: | |
type: object | |
x-category: response | |
required: | |
- status | |
- substatus | |
- stage | |
- step | |
- startTime | |
properties: | |
status: | |
type: string | |
enum: | |
- NOT_FOUND | |
- INVALID | |
- PENDING | |
- DONE | |
- FAILED | |
description: Current status of the SATP session. | |
substatus: | |
type: string | |
enum: | |
- WAIT_SOURCE_CONFIRMATIONS | |
- WAIT_DESTINATION_TRANSACTION | |
- BRIDGE_NOT_AVAILABLE | |
- CHAIN_NOT_AVAILABLE | |
- REFUND_IN_PROGRESS | |
- UNKNOWN_ERROR | |
- COMPLETED | |
- PARTIAL | |
- REFUNDED | |
- NOT_PROCESSABLE_REFUND_NEEDED | |
description: More detailed status of the SATP session. | |
stage: | |
type: string | |
enum: | |
- STAGE0 | |
- STAGE1 | |
- STAGE2 | |
- STAGE3 | |
description: Current stage of the SATP session. | |
step: | |
type: string | |
enum: | |
- transfer-initialization-claims | |
- conveyance-of-network-capabilities-and-parameters | |
- transfer-proposal-message | |
- transfer-proposal-receipt-message | |
- transfer-proposal-reject-and-conditional-reject-message | |
- transfer-commence-message | |
- commence-response-message | |
- lock-assertion-message | |
- lock-assertion-receipt-message | |
- commit-preparation-message | |
- commit-ready-message | |
- commit-final-assertion-message | |
- commit-final-acknowledgement-receipt-message | |
- transfer-complete-message | |
- rollback-transfer-initialization-claims | |
- rollback-conveyance-of-network-capabilities-and-parameters | |
- rollback-transfer-proposal-message | |
- rollback-transfer-proposal-receipt-message | |
- rollback-transfer-proposal-reject-and-conditional-reject-message | |
- rollback-transfer-commence-message | |
- rollback-commence-response-message | |
- rollback-lock-assertion-message | |
- rollback-lock-assertion-receipt-message | |
- rollback-commit-preparation-message | |
- rollback-commit-ready-message | |
- rollback-commit-final-assertion-message | |
- rollback-commit-final-acknowledgement-receipt-message | |
- rollback-transfer-complete-message | |
description: Current step within the stage of the SATP session. | |
startTime: | |
type: string | |
format: date-time | |
description: The start time of the SATP session. | |
cancelSuccessful: | |
type: boolean | |
description: Indicates whether the cancel operation was successful. | |
required: | |
- statusResponse | |
- cancelSuccessful | |
default: | |
description: An error occurred or transaction cannot be cancelled | |
content: | |
application/json: | |
schema: | |
x-category: response | |
type: object | |
x-go-type: ApiError | |
x-go-name: ApiError | |
description: An Error | |
required: | |
- message | |
- type | |
- code | |
- status | |
- timestamp | |
properties: | |
type: | |
type: string | |
description: HTTP error type | |
example: bad-request | |
code: | |
type: integer | |
description: Numeric error code | |
example: 16384 | |
status: | |
type: integer | |
description: HTTP status of the error | |
example: 500 | |
message: | |
type: string | |
description: Long error description | |
example: Oops there's been an internal error handling | |
timestamp: | |
type: string | |
description: Timestamp of the error | |
example: '2021-07-21T17:32:28Z' | |
/api/v1/@hyperledger/cactus-plugin-satp-hermes/continue: | |
post: | |
tags: | |
- transaction | |
summary: Continue a transaction session | |
description: Attempts to continue a previously paused transaction session using its session ID and context ID. | |
operationId: Continue | |
x-hyperledger-cacti: | |
http: | |
verbLowerCase: post | |
path: /api/v1/@hyperledger/cactus-plugin-satp-hermes/continue | |
requestBody: | |
content: | |
application/json: | |
schema: | |
type: object | |
properties: | |
sessionId: | |
type: string | |
description: The session ID of the transaction to be continued. | |
contextId: | |
type: string | |
description: The context ID related to the transaction session. | |
required: | |
- sessionId | |
- contextId | |
required: true | |
responses: | |
'200': | |
description: Transaction session continuation attempted | |
content: | |
application/json: | |
schema: | |
type: object | |
x-category: response | |
required: | |
- status | |
- substatus | |
- stage | |
- step | |
- startTime | |
properties: | |
status: | |
type: string | |
enum: | |
- NOT_FOUND | |
- INVALID | |
- PENDING | |
- DONE | |
- FAILED | |
description: Current status of the SATP session. | |
substatus: | |
type: string | |
enum: | |
- WAIT_SOURCE_CONFIRMATIONS | |
- WAIT_DESTINATION_TRANSACTION | |
- BRIDGE_NOT_AVAILABLE | |
- CHAIN_NOT_AVAILABLE | |
- REFUND_IN_PROGRESS | |
- UNKNOWN_ERROR | |
- COMPLETED | |
- PARTIAL | |
- REFUNDED | |
- NOT_PROCESSABLE_REFUND_NEEDED | |
description: More detailed status of the SATP session. | |
stage: | |
type: string | |
enum: | |
- STAGE0 | |
- STAGE1 | |
- STAGE2 | |
- STAGE3 | |
description: Current stage of the SATP session. | |
step: | |
type: string | |
enum: | |
- transfer-initialization-claims | |
- conveyance-of-network-capabilities-and-parameters | |
- transfer-proposal-message | |
- transfer-proposal-receipt-message | |
- transfer-proposal-reject-and-conditional-reject-message | |
- transfer-commence-message | |
- commence-response-message | |
- lock-assertion-message | |
- lock-assertion-receipt-message | |
- commit-preparation-message | |
- commit-ready-message | |
- commit-final-assertion-message | |
- commit-final-acknowledgement-receipt-message | |
- transfer-complete-message | |
- rollback-transfer-initialization-claims | |
- rollback-conveyance-of-network-capabilities-and-parameters | |
- rollback-transfer-proposal-message | |
- rollback-transfer-proposal-receipt-message | |
- rollback-transfer-proposal-reject-and-conditional-reject-message | |
- rollback-transfer-commence-message | |
- rollback-commence-response-message | |
- rollback-lock-assertion-message | |
- rollback-lock-assertion-receipt-message | |
- rollback-commit-preparation-message | |
- rollback-commit-ready-message | |
- rollback-commit-final-assertion-message | |
- rollback-commit-final-acknowledgement-receipt-message | |
- rollback-transfer-complete-message | |
description: Current step within the stage of the SATP session. | |
startTime: | |
type: string | |
format: date-time | |
description: The start time of the SATP session. | |
default: | |
description: An error occurred or transaction session cannot be continued | |
content: | |
application/json: | |
schema: | |
x-category: response | |
type: object | |
x-go-type: ApiError | |
x-go-name: ApiError | |
description: An Error | |
required: | |
- message | |
- type | |
- code | |
- status | |
- timestamp | |
properties: | |
type: | |
type: string | |
description: HTTP error type | |
example: bad-request | |
code: | |
type: integer | |
description: Numeric error code | |
example: 16384 | |
status: | |
type: integer | |
description: HTTP status of the error | |
example: 500 | |
message: | |
type: string | |
description: Long error description | |
example: Oops there's been an internal error handling | |
timestamp: | |
type: string | |
description: Timestamp of the error | |
example: '2021-07-21T17:32:28Z' | |
/api/v1/@hyperledger/cactus-plugin-satp-hermes/status: | |
get: | |
summary: Get SATP current session data | |
description: Retrieve the status of a SATP session | |
operationId: GetStatus | |
tags: | |
- admin | |
x-hyperledger-cacti: | |
http: | |
verbLowerCase: get | |
path: /api/v1/@hyperledger/cactus-plugin-satp-hermes/status | |
parameters: | |
- name: SessionID | |
in: query | |
schema: | |
x-category: satp-core | |
type: string | |
description: Unique identifier (UUID) for the session. | |
example: 000003e8-e0b8-21ee-ba00-325096b39f47 | |
required: true | |
description: Unique identifier for the session. | |
responses: | |
'200': | |
description: OK | |
content: | |
application/json: | |
schema: | |
type: object | |
x-category: response | |
required: | |
- status | |
- substatus | |
- stage | |
- step | |
- startTime | |
properties: | |
status: | |
type: string | |
enum: | |
- NOT_FOUND | |
- INVALID | |
- PENDING | |
- DONE | |
- FAILED | |
description: Current status of the SATP session. | |
substatus: | |
type: string | |
enum: | |
- WAIT_SOURCE_CONFIRMATIONS | |
- WAIT_DESTINATION_TRANSACTION | |
- BRIDGE_NOT_AVAILABLE | |
- CHAIN_NOT_AVAILABLE | |
- REFUND_IN_PROGRESS | |
- UNKNOWN_ERROR | |
- COMPLETED | |
- PARTIAL | |
- REFUNDED | |
- NOT_PROCESSABLE_REFUND_NEEDED | |
description: More detailed status of the SATP session. | |
stage: | |
type: string | |
enum: | |
- STAGE0 | |
- STAGE1 | |
- STAGE2 | |
- STAGE3 | |
description: Current stage of the SATP session. | |
step: | |
type: string | |
enum: | |
- transfer-initialization-claims | |
- conveyance-of-network-capabilities-and-parameters | |
- transfer-proposal-message | |
- transfer-proposal-receipt-message | |
- transfer-proposal-reject-and-conditional-reject-message | |
- transfer-commence-message | |
- commence-response-message | |
- lock-assertion-message | |
- lock-assertion-receipt-message | |
- commit-preparation-message | |
- commit-ready-message | |
- commit-final-assertion-message | |
- commit-final-acknowledgement-receipt-message | |
- transfer-complete-message | |
- rollback-transfer-initialization-claims | |
- rollback-conveyance-of-network-capabilities-and-parameters | |
- rollback-transfer-proposal-message | |
- rollback-transfer-proposal-receipt-message | |
- rollback-transfer-proposal-reject-and-conditional-reject-message | |
- rollback-transfer-commence-message | |
- rollback-commence-response-message | |
- rollback-lock-assertion-message | |
- rollback-lock-assertion-receipt-message | |
- rollback-commit-preparation-message | |
- rollback-commit-ready-message | |
- rollback-commit-final-assertion-message | |
- rollback-commit-final-acknowledgement-receipt-message | |
- rollback-transfer-complete-message | |
description: Current step within the stage of the SATP session. | |
startTime: | |
type: string | |
format: date-time | |
description: The start time of the SATP session. | |
'400': | |
description: Bad request | |
'404': | |
description: Transaction not found | |
'500': | |
description: Internal server error | |
/api/v1/@hyperledger/cactus-plugin-satp-hermes/routes: | |
get: | |
description: Get a list of possible routes for swapping one asset for another across multiple exchanges | |
summary: Get a list of routes for a gateway-to-gateway asset transfer | |
tags: | |
- transaction | |
operationId: GetRoutes | |
x-hyperledger-cacti: | |
http: | |
verbLowerCase: get | |
path: /api/v1/@hyperledger/cactus-plugin-satp-hermes/routes | |
parameters: | |
- name: fromNetworkID | |
in: query | |
schema: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
required: true | |
description: The sending DLT Network. | |
- name: fromAmount | |
in: query | |
schema: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
required: true | |
description: The amount that should be sent including all decimals. | |
- name: fromToken | |
in: query | |
schema: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
required: true | |
description: The token that should be transferred. Can be the address or the symbol. | |
- name: toDLTNetwork | |
in: query | |
schema: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
required: true | |
description: The receiving DLT Network. | |
- name: toToken | |
in: query | |
schema: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
required: true | |
description: The token that should be transferred to. Can be the address or the symbol. | |
- name: fromAddress | |
in: query | |
schema: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
required: true | |
description: The sending wallet address. | |
- name: toAddress | |
in: query | |
schema: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
required: true | |
description: The receiving wallet address. If none is provided, the fromAddress will be used. | |
responses: | |
'200': | |
description: OK | |
content: | |
application/json: | |
schema: | |
type: object | |
description: A collection of available and unavailable routes | |
required: | |
- routes | |
properties: | |
routes: | |
type: array | |
description: A collection of route objects | |
items: | |
type: object | |
required: | |
- id | |
- gatewayID | |
properties: | |
id: | |
type: string | |
description: A unique identifier of the route. | |
gatewayID: | |
type: string | |
format: uuid | |
description: A unique identifier for the gateway. | |
fromDLTNetworkID: | |
type: string | |
description: The ID of the DLT Network where the transfer will originate. | |
fromAmountUSD: | |
type: string | |
format: double | |
description: The amount of 'fromToken' to be transferred in USD, specified as a string to maintain precision. | |
fromAmount: | |
type: string | |
description: The amount that should be sent including all decimals (e.g., 1000000 for 1 USDC (6 decimals)). | |
pattern: ^[1-9][0-9]*$ | |
fromToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
toDLTNetworkID: | |
type: string | |
description: The ID of the DLT Network where the transfer will end. | |
toAmountUSD: | |
type: string | |
description: The expected amount to be received in USD. | |
toAmount: | |
type: string | |
description: The expected amount to be received including all decimals (e.g., 1000000 for 1 USDC (6 decimals)). | |
toAmountMin: | |
type: string | |
description: The minimum expected amount to be received including all decimals (e.g., 1000000 for 1 USDC (6 decimals)). | |
toToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
gasCostUSD: | |
type: string | |
description: The expected gas cost in USD. | |
containsSwitchChain: | |
type: boolean | |
description: Whether chain switching is enabled or not. | |
steps: | |
type: array | |
description: List of steps involved in this route. | |
items: | |
type: object | |
description: Details a single step within a route including actions and estimates. | |
properties: | |
id: | |
type: string | |
description: Id of the step | |
type: | |
type: string | |
description: Type of the step, typically describing the action, e.g., 'swap'. | |
tool: | |
type: string | |
description: Tool used in the step, e.g., 'stargate'. | |
action: | |
type: object | |
properties: | |
fromToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
fromAmount: | |
type: string | |
description: The amount of 'fromToken' to be transferred, specified as a string to maintain precision. | |
example: '1000000000000000000' | |
pattern: ^[1-9][0-9]*$ | |
toToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
slippage: | |
type: number | |
format: float | |
description: The maximum acceptable difference between the expected price of the 'toToken' and the price at the time of the transfer. | |
example: 0.005 | |
fromAddress: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
toAddress: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
estimate: | |
type: object | |
description: Provides an estimation for a transaction, including costs, amounts, and execution duration. | |
properties: | |
approvalAddress: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
toAmountMin: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
toAmount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
fromAmount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
feeCosts: | |
type: array | |
description: A collection of fee costs associated with the transaction. | |
items: | |
type: object | |
description: Details about a specific fee cost associated with the transaction. | |
properties: | |
name: | |
type: string | |
description: Name of the fee cost. | |
example: Network Fee | |
amount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
amountUSD: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
token: | |
type: string | |
description: The symbol of a token | |
example: ETH | |
included: | |
type: boolean | |
description: Indicates if the fee is included in the transaction amount. | |
gasCosts: | |
type: array | |
description: A collection of estimated gas costs for executing the transaction. | |
items: | |
type: object | |
properties: | |
type: | |
type: string | |
description: The type of the gas cost. | |
example: SEND | |
price: | |
type: string | |
description: The gas price, specified as a string to maintain precision. | |
example: '19236858243' | |
estimate: | |
type: string | |
description: The estimated gas required, specified as a string to maintain precision. | |
example: '445393' | |
limit: | |
type: string | |
description: The gas limit for the transaction, specified as a string to maintain precision. | |
example: '579011' | |
pattern: ^[1-9][0-9]*$ | |
amount: | |
type: string | |
description: The amount of gas required in the gas currency. | |
example: '8567962003424499' | |
pattern: ^[1-9][0-9]*$ | |
amountUSD: | |
type: string | |
description: The amount of gas required in USD. | |
example: '16.05' | |
pattern: ^(0(\.[0-9]+)?|[1-9][0-9]*(\.[0-9]+)?)$ | |
token: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
executionDuration: | |
type: integer | |
description: The estimated duration for the transaction execution in seconds. | |
example: 30 | |
fromAmountUSD: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
toAmountUSD: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
tool: | |
type: string | |
description: The tool or service used to generate this estimate. | |
example: satp | |
toolDetails: | |
type: object | |
description: Describes integration or tool details such as bridges or exchanges involved in the transaction. | |
required: | |
- key | |
- name | |
- logoURI | |
properties: | |
key: | |
type: string | |
description: A unique identifier for the integration or tool. | |
example: 1inch | |
name: | |
type: string | |
description: The name of the integration or tool. | |
example: 1inch Exchange | |
logoURI: | |
type: string | |
format: uri | |
description: URL to the logo of the integration or tool. | |
example: https://cdn.example.com/logos/1inch.png | |
integrationDetails: | |
type: object | |
description: Describes integration or tool details such as bridges or exchanges involved in the transaction. | |
required: | |
- key | |
- name | |
- logoURI | |
properties: | |
key: | |
type: string | |
description: A unique identifier for the integration or tool. | |
example: 1inch | |
name: | |
type: string | |
description: The name of the integration or tool. | |
example: 1inch Exchange | |
logoURI: | |
type: string | |
format: uri | |
description: URL to the logo of the integration or tool. | |
example: https://cdn.example.com/logos/1inch.png | |
includedStepIds: | |
type: array | |
description: IDs of further steps included within this step, allowing for nested actions without direct recursion. | |
items: | |
type: string | |
insurance: | |
type: object | |
properties: | |
state: | |
type: string | |
description: The state of insurance applicability for the transaction. | |
example: NOT_INSURABLE | |
enum: | |
- NOT_INSURABLE | |
- INSURABLE | |
- INSURED | |
feeAmountUsd: | |
type: string | |
description: The fee amount for insurance, represented in USD. | |
example: '10.00' | |
pattern: ^(0|[1-9]\d*)(\.\d+)?$ | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
default: | |
description: An error occurred | |
content: | |
application/json: | |
schema: | |
x-category: response | |
type: object | |
x-go-type: ApiError | |
x-go-name: ApiError | |
description: An Error | |
required: | |
- message | |
- type | |
- code | |
- status | |
- timestamp | |
properties: | |
type: | |
type: string | |
description: HTTP error type | |
example: bad-request | |
code: | |
type: integer | |
description: Numeric error code | |
example: 16384 | |
status: | |
type: integer | |
description: HTTP status of the error | |
example: 500 | |
message: | |
type: string | |
description: Long error description | |
example: Oops there's been an internal error handling | |
timestamp: | |
type: string | |
description: Timestamp of the error | |
example: '2021-07-21T17:32:28Z' | |
/api/v1/@hyperledger/cactus-plugin-satp-hermes/audit: | |
get: | |
tags: | |
- admin | |
summary: Audit transactions | |
description: Audits transactions based on provided filters such as start and end dates. Optionally includes proofs generated from each gateway transaction. | |
operationId: GetAudit | |
x-hyperledger-cacti: | |
http: | |
verbLowerCase: get | |
path: /api/v1/@hyperledger/cactus-plugin-satp-hermes/audit | |
parameters: | |
- name: auditStartDate | |
in: query | |
description: The start date for the audit period. | |
required: false | |
schema: | |
type: string | |
format: date-time | |
- name: auditEndDate | |
in: query | |
description: The end date for the audit period. | |
required: false | |
schema: | |
type: string | |
format: date-time | |
- name: includeProofs | |
in: query | |
description: Include proofs generated from each gateway transaction. | |
required: false | |
schema: | |
type: boolean | |
responses: | |
'200': | |
description: Audit results | |
content: | |
application/json: | |
schema: | |
type: object | |
x-category: response | |
properties: | |
proofs: | |
type: array | |
items: | |
type: string | |
description: An array of strings representing proofs. | |
auditStartTime: | |
type: string | |
format: date-time | |
description: The start datetime of the audit period. | |
auditEndTime: | |
type: string | |
format: date-time | |
description: The end datetime of the audit period. | |
components: | |
schemas: | |
AuthzScope: | |
type: string | |
enum: | |
- group:admin | |
- group:user | |
x-enum-descriptions: | |
- Identities with the group:admin scope are administrators of the system. | |
- Identities with the group:user scope are end users of the system who only have authorization to perform a limited set of actions. | |
x-enum-varnames: | |
- GroupAdmin | |
- GroupUser | |
AuthzJwtClaim: | |
description: 'Stores global constants related to the authorization of the application. Specifically enumerates the claims to validate for as per RFC 7519, section 4.1. See: https://tools.ietf.org/html/rfc7519#section-4.1' | |
type: string | |
enum: | |
- Hyperledger Labs - Carbon Accounting Tool | |
x-enum-descriptions: | |
- The "iss" (issuer) claim identifies the principal that issued the JWT. The processing of this claim is generally application specific. The "iss" value is a case-sensitive string containing a StringOrURI value. Use of this claim is OPTIONAL. | |
x-enum-varnames: | |
- iss | |
CredentialProfile: | |
type: string | |
enum: | |
- SAML | |
- OAUTH | |
- X509 | |
getAuditRequest: | |
type: object | |
x-category: request | |
properties: | |
auditStartDate: | |
type: string | |
format: date-time | |
description: The start datetime for the audit. | |
auditEndDate: | |
type: string | |
format: date-time | |
description: The end datetime for the audit. | |
includeProofs: | |
type: boolean | |
description: Include proofs generated from each gateway transaction. | |
ContinueRequest: | |
type: object | |
properties: | |
sessionId: | |
type: string | |
description: The session ID of the transaction to be continued. | |
contextId: | |
type: string | |
description: The context ID related to the transaction session. | |
required: | |
- sessionId | |
- contextId | |
getAuditResponse: | |
type: object | |
x-category: response | |
properties: | |
proofs: | |
type: array | |
items: | |
type: string | |
description: An array of strings representing proofs. | |
auditStartTime: | |
type: string | |
format: date-time | |
description: The start datetime of the audit period. | |
auditEndTime: | |
type: string | |
format: date-time | |
description: The end datetime of the audit period. | |
StatusResponse: | |
type: object | |
x-category: response | |
required: | |
- status | |
- substatus | |
- stage | |
- step | |
- startTime | |
properties: | |
status: | |
type: string | |
enum: | |
- NOT_FOUND | |
- INVALID | |
- PENDING | |
- DONE | |
- FAILED | |
description: Current status of the SATP session. | |
substatus: | |
type: string | |
enum: | |
- WAIT_SOURCE_CONFIRMATIONS | |
- WAIT_DESTINATION_TRANSACTION | |
- BRIDGE_NOT_AVAILABLE | |
- CHAIN_NOT_AVAILABLE | |
- REFUND_IN_PROGRESS | |
- UNKNOWN_ERROR | |
- COMPLETED | |
- PARTIAL | |
- REFUNDED | |
- NOT_PROCESSABLE_REFUND_NEEDED | |
description: More detailed status of the SATP session. | |
stage: | |
type: string | |
enum: | |
- STAGE0 | |
- STAGE1 | |
- STAGE2 | |
- STAGE3 | |
description: Current stage of the SATP session. | |
step: | |
type: string | |
enum: | |
- transfer-initialization-claims | |
- conveyance-of-network-capabilities-and-parameters | |
- transfer-proposal-message | |
- transfer-proposal-receipt-message | |
- transfer-proposal-reject-and-conditional-reject-message | |
- transfer-commence-message | |
- commence-response-message | |
- lock-assertion-message | |
- lock-assertion-receipt-message | |
- commit-preparation-message | |
- commit-ready-message | |
- commit-final-assertion-message | |
- commit-final-acknowledgement-receipt-message | |
- transfer-complete-message | |
- rollback-transfer-initialization-claims | |
- rollback-conveyance-of-network-capabilities-and-parameters | |
- rollback-transfer-proposal-message | |
- rollback-transfer-proposal-receipt-message | |
- rollback-transfer-proposal-reject-and-conditional-reject-message | |
- rollback-transfer-commence-message | |
- rollback-commence-response-message | |
- rollback-lock-assertion-message | |
- rollback-lock-assertion-receipt-message | |
- rollback-commit-preparation-message | |
- rollback-commit-ready-message | |
- rollback-commit-final-assertion-message | |
- rollback-commit-final-acknowledgement-receipt-message | |
- rollback-transfer-complete-message | |
description: Current step within the stage of the SATP session. | |
startTime: | |
type: string | |
format: date-time | |
description: The start time of the SATP session. | |
StatusRequest: | |
type: object | |
x-category: request | |
required: | |
- sessionID | |
properties: | |
sessionID: | |
type: string | |
description: The ID of the session for which the status is being requested. | |
TransactRequest: | |
type: object | |
properties: | |
contextID: | |
type: string | |
format: uuid | |
description: A unique identifier for the transaction context. | |
fromDLTNetworkID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
fromAmount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
fromToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
toDLTNetworkID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
toAmount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
toToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
required: | |
- contextID | |
- fromDLTNetworkID | |
- fromAmount | |
- fromToken | |
- toDLTNetworkID | |
- toAmount | |
- toToken | |
TransactResponse: | |
type: object | |
properties: | |
sessionID: | |
x-category: satp-core | |
type: string | |
description: Unique identifier (UUID) for the session. | |
example: 000003e8-e0b8-21ee-ba00-325096b39f47 | |
statusResponse: | |
type: object | |
x-category: response | |
required: | |
- status | |
- substatus | |
- stage | |
- step | |
- startTime | |
properties: | |
status: | |
type: string | |
enum: | |
- NOT_FOUND | |
- INVALID | |
- PENDING | |
- DONE | |
- FAILED | |
description: Current status of the SATP session. | |
substatus: | |
type: string | |
enum: | |
- WAIT_SOURCE_CONFIRMATIONS | |
- WAIT_DESTINATION_TRANSACTION | |
- BRIDGE_NOT_AVAILABLE | |
- CHAIN_NOT_AVAILABLE | |
- REFUND_IN_PROGRESS | |
- UNKNOWN_ERROR | |
- COMPLETED | |
- PARTIAL | |
- REFUNDED | |
- NOT_PROCESSABLE_REFUND_NEEDED | |
description: More detailed status of the SATP session. | |
stage: | |
type: string | |
enum: | |
- STAGE0 | |
- STAGE1 | |
- STAGE2 | |
- STAGE3 | |
description: Current stage of the SATP session. | |
step: | |
type: string | |
enum: | |
- transfer-initialization-claims | |
- conveyance-of-network-capabilities-and-parameters | |
- transfer-proposal-message | |
- transfer-proposal-receipt-message | |
- transfer-proposal-reject-and-conditional-reject-message | |
- transfer-commence-message | |
- commence-response-message | |
- lock-assertion-message | |
- lock-assertion-receipt-message | |
- commit-preparation-message | |
- commit-ready-message | |
- commit-final-assertion-message | |
- commit-final-acknowledgement-receipt-message | |
- transfer-complete-message | |
- rollback-transfer-initialization-claims | |
- rollback-conveyance-of-network-capabilities-and-parameters | |
- rollback-transfer-proposal-message | |
- rollback-transfer-proposal-receipt-message | |
- rollback-transfer-proposal-reject-and-conditional-reject-message | |
- rollback-transfer-commence-message | |
- rollback-commence-response-message | |
- rollback-lock-assertion-message | |
- rollback-lock-assertion-receipt-message | |
- rollback-commit-preparation-message | |
- rollback-commit-ready-message | |
- rollback-commit-final-assertion-message | |
- rollback-commit-final-acknowledgement-receipt-message | |
- rollback-transfer-complete-message | |
description: Current step within the stage of the SATP session. | |
startTime: | |
type: string | |
format: date-time | |
description: The start time of the SATP session. | |
required: | |
- sessionID | |
- statusResponse | |
CancelRequest: | |
type: object | |
properties: | |
sessionID: | |
x-category: satp-core | |
type: string | |
description: Unique identifier (UUID) for the session. | |
example: 000003e8-e0b8-21ee-ba00-325096b39f47 | |
required: | |
- sessionID | |
CancelResponse: | |
type: object | |
properties: | |
statusResponse: | |
type: object | |
x-category: response | |
required: | |
- status | |
- substatus | |
- stage | |
- step | |
- startTime | |
properties: | |
status: | |
type: string | |
enum: | |
- NOT_FOUND | |
- INVALID | |
- PENDING | |
- DONE | |
- FAILED | |
description: Current status of the SATP session. | |
substatus: | |
type: string | |
enum: | |
- WAIT_SOURCE_CONFIRMATIONS | |
- WAIT_DESTINATION_TRANSACTION | |
- BRIDGE_NOT_AVAILABLE | |
- CHAIN_NOT_AVAILABLE | |
- REFUND_IN_PROGRESS | |
- UNKNOWN_ERROR | |
- COMPLETED | |
- PARTIAL | |
- REFUNDED | |
- NOT_PROCESSABLE_REFUND_NEEDED | |
description: More detailed status of the SATP session. | |
stage: | |
type: string | |
enum: | |
- STAGE0 | |
- STAGE1 | |
- STAGE2 | |
- STAGE3 | |
description: Current stage of the SATP session. | |
step: | |
type: string | |
enum: | |
- transfer-initialization-claims | |
- conveyance-of-network-capabilities-and-parameters | |
- transfer-proposal-message | |
- transfer-proposal-receipt-message | |
- transfer-proposal-reject-and-conditional-reject-message | |
- transfer-commence-message | |
- commence-response-message | |
- lock-assertion-message | |
- lock-assertion-receipt-message | |
- commit-preparation-message | |
- commit-ready-message | |
- commit-final-assertion-message | |
- commit-final-acknowledgement-receipt-message | |
- transfer-complete-message | |
- rollback-transfer-initialization-claims | |
- rollback-conveyance-of-network-capabilities-and-parameters | |
- rollback-transfer-proposal-message | |
- rollback-transfer-proposal-receipt-message | |
- rollback-transfer-proposal-reject-and-conditional-reject-message | |
- rollback-transfer-commence-message | |
- rollback-commence-response-message | |
- rollback-lock-assertion-message | |
- rollback-lock-assertion-receipt-message | |
- rollback-commit-preparation-message | |
- rollback-commit-ready-message | |
- rollback-commit-final-assertion-message | |
- rollback-commit-final-acknowledgement-receipt-message | |
- rollback-transfer-complete-message | |
description: Current step within the stage of the SATP session. | |
startTime: | |
type: string | |
format: date-time | |
description: The start time of the SATP session. | |
cancelSuccessful: | |
type: boolean | |
description: Indicates whether the cancel operation was successful. | |
required: | |
- statusResponse | |
- cancelSuccessful | |
APIError: | |
x-category: response | |
type: object | |
x-go-type: ApiError | |
x-go-name: ApiError | |
description: An Error | |
required: | |
- message | |
- type | |
- code | |
- status | |
- timestamp | |
properties: | |
type: | |
type: string | |
description: HTTP error type | |
example: bad-request | |
code: | |
type: integer | |
description: Numeric error code | |
example: 16384 | |
status: | |
type: integer | |
description: HTTP status of the error | |
example: 500 | |
message: | |
type: string | |
description: Long error description | |
example: Oops there's been an internal error handling | |
timestamp: | |
type: string | |
description: Timestamp of the error | |
example: '2021-07-21T17:32:28Z' | |
DLTProtocol: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
DLTNetworkID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
DLTSubnetworkID: | |
x-category: satp-core | |
type: string | |
description: 'The subnetwork of the DLT being interacted with. TODO: implement network identification draft' | |
SessionID: | |
x-category: satp-core | |
type: string | |
description: Unique identifier (UUID) for the session. | |
example: 000003e8-e0b8-21ee-ba00-325096b39f47 | |
Address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
AmountString: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
AmountDecimal: | |
type: number | |
format: float | |
description: Amount value with decimal places | |
example: 100.33 | |
TokenSymbol: | |
type: string | |
description: The symbol of a token | |
example: ETH | |
LogoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
RoutesResponse: | |
type: object | |
description: A collection of available and unavailable routes | |
required: | |
- routes | |
properties: | |
routes: | |
type: array | |
description: A collection of route objects | |
items: | |
type: object | |
required: | |
- id | |
- gatewayID | |
properties: | |
id: | |
type: string | |
description: A unique identifier of the route. | |
gatewayID: | |
type: string | |
format: uuid | |
description: A unique identifier for the gateway. | |
fromDLTNetworkID: | |
type: string | |
description: The ID of the DLT Network where the transfer will originate. | |
fromAmountUSD: | |
type: string | |
format: double | |
description: The amount of 'fromToken' to be transferred in USD, specified as a string to maintain precision. | |
fromAmount: | |
type: string | |
description: The amount that should be sent including all decimals (e.g., 1000000 for 1 USDC (6 decimals)). | |
pattern: ^[1-9][0-9]*$ | |
fromToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
toDLTNetworkID: | |
type: string | |
description: The ID of the DLT Network where the transfer will end. | |
toAmountUSD: | |
type: string | |
description: The expected amount to be received in USD. | |
toAmount: | |
type: string | |
description: The expected amount to be received including all decimals (e.g., 1000000 for 1 USDC (6 decimals)). | |
toAmountMin: | |
type: string | |
description: The minimum expected amount to be received including all decimals (e.g., 1000000 for 1 USDC (6 decimals)). | |
toToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
gasCostUSD: | |
type: string | |
description: The expected gas cost in USD. | |
containsSwitchChain: | |
type: boolean | |
description: Whether chain switching is enabled or not. | |
steps: | |
type: array | |
description: List of steps involved in this route. | |
items: | |
type: object | |
description: Details a single step within a route including actions and estimates. | |
properties: | |
id: | |
type: string | |
description: Id of the step | |
type: | |
type: string | |
description: Type of the step, typically describing the action, e.g., 'swap'. | |
tool: | |
type: string | |
description: Tool used in the step, e.g., 'stargate'. | |
action: | |
type: object | |
properties: | |
fromToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
fromAmount: | |
type: string | |
description: The amount of 'fromToken' to be transferred, specified as a string to maintain precision. | |
example: '1000000000000000000' | |
pattern: ^[1-9][0-9]*$ | |
toToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
slippage: | |
type: number | |
format: float | |
description: The maximum acceptable difference between the expected price of the 'toToken' and the price at the time of the transfer. | |
example: 0.005 | |
fromAddress: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
toAddress: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
estimate: | |
type: object | |
description: Provides an estimation for a transaction, including costs, amounts, and execution duration. | |
properties: | |
approvalAddress: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
toAmountMin: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
toAmount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
fromAmount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
feeCosts: | |
type: array | |
description: A collection of fee costs associated with the transaction. | |
items: | |
type: object | |
description: Details about a specific fee cost associated with the transaction. | |
properties: | |
name: | |
type: string | |
description: Name of the fee cost. | |
example: Network Fee | |
amount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
amountUSD: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
token: | |
type: string | |
description: The symbol of a token | |
example: ETH | |
included: | |
type: boolean | |
description: Indicates if the fee is included in the transaction amount. | |
gasCosts: | |
type: array | |
description: A collection of estimated gas costs for executing the transaction. | |
items: | |
type: object | |
properties: | |
type: | |
type: string | |
description: The type of the gas cost. | |
example: SEND | |
price: | |
type: string | |
description: The gas price, specified as a string to maintain precision. | |
example: '19236858243' | |
estimate: | |
type: string | |
description: The estimated gas required, specified as a string to maintain precision. | |
example: '445393' | |
limit: | |
type: string | |
description: The gas limit for the transaction, specified as a string to maintain precision. | |
example: '579011' | |
pattern: ^[1-9][0-9]*$ | |
amount: | |
type: string | |
description: The amount of gas required in the gas currency. | |
example: '8567962003424499' | |
pattern: ^[1-9][0-9]*$ | |
amountUSD: | |
type: string | |
description: The amount of gas required in USD. | |
example: '16.05' | |
pattern: ^(0(\.[0-9]+)?|[1-9][0-9]*(\.[0-9]+)?)$ | |
token: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
executionDuration: | |
type: integer | |
description: The estimated duration for the transaction execution in seconds. | |
example: 30 | |
fromAmountUSD: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
toAmountUSD: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
tool: | |
type: string | |
description: The tool or service used to generate this estimate. | |
example: satp | |
toolDetails: | |
type: object | |
description: Describes integration or tool details such as bridges or exchanges involved in the transaction. | |
required: | |
- key | |
- name | |
- logoURI | |
properties: | |
key: | |
type: string | |
description: A unique identifier for the integration or tool. | |
example: 1inch | |
name: | |
type: string | |
description: The name of the integration or tool. | |
example: 1inch Exchange | |
logoURI: | |
type: string | |
format: uri | |
description: URL to the logo of the integration or tool. | |
example: https://cdn.example.com/logos/1inch.png | |
integrationDetails: | |
type: object | |
description: Describes integration or tool details such as bridges or exchanges involved in the transaction. | |
required: | |
- key | |
- name | |
- logoURI | |
properties: | |
key: | |
type: string | |
description: A unique identifier for the integration or tool. | |
example: 1inch | |
name: | |
type: string | |
description: The name of the integration or tool. | |
example: 1inch Exchange | |
logoURI: | |
type: string | |
format: uri | |
description: URL to the logo of the integration or tool. | |
example: https://cdn.example.com/logos/1inch.png | |
includedStepIds: | |
type: array | |
description: IDs of further steps included within this step, allowing for nested actions without direct recursion. | |
items: | |
type: string | |
insurance: | |
type: object | |
properties: | |
state: | |
type: string | |
description: The state of insurance applicability for the transaction. | |
example: NOT_INSURABLE | |
enum: | |
- NOT_INSURABLE | |
- INSURABLE | |
- INSURED | |
feeAmountUsd: | |
type: string | |
description: The fee amount for insurance, represented in USD. | |
example: '10.00' | |
pattern: ^(0|[1-9]\d*)(\.\d+)?$ | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
Route: | |
type: object | |
required: | |
- id | |
- gatewayID | |
properties: | |
id: | |
type: string | |
description: A unique identifier of the route. | |
gatewayID: | |
type: string | |
format: uuid | |
description: A unique identifier for the gateway. | |
fromDLTNetworkID: | |
type: string | |
description: The ID of the DLT Network where the transfer will originate. | |
fromAmountUSD: | |
type: string | |
format: double | |
description: The amount of 'fromToken' to be transferred in USD, specified as a string to maintain precision. | |
fromAmount: | |
type: string | |
description: The amount that should be sent including all decimals (e.g., 1000000 for 1 USDC (6 decimals)). | |
pattern: ^[1-9][0-9]*$ | |
fromToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
toDLTNetworkID: | |
type: string | |
description: The ID of the DLT Network where the transfer will end. | |
toAmountUSD: | |
type: string | |
description: The expected amount to be received in USD. | |
toAmount: | |
type: string | |
description: The expected amount to be received including all decimals (e.g., 1000000 for 1 USDC (6 decimals)). | |
toAmountMin: | |
type: string | |
description: The minimum expected amount to be received including all decimals (e.g., 1000000 for 1 USDC (6 decimals)). | |
toToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
gasCostUSD: | |
type: string | |
description: The expected gas cost in USD. | |
containsSwitchChain: | |
type: boolean | |
description: Whether chain switching is enabled or not. | |
steps: | |
type: array | |
description: List of steps involved in this route. | |
items: | |
type: object | |
description: Details a single step within a route including actions and estimates. | |
properties: | |
id: | |
type: string | |
description: Id of the step | |
type: | |
type: string | |
description: Type of the step, typically describing the action, e.g., 'swap'. | |
tool: | |
type: string | |
description: Tool used in the step, e.g., 'stargate'. | |
action: | |
type: object | |
properties: | |
fromToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
fromAmount: | |
type: string | |
description: The amount of 'fromToken' to be transferred, specified as a string to maintain precision. | |
example: '1000000000000000000' | |
pattern: ^[1-9][0-9]*$ | |
toToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
slippage: | |
type: number | |
format: float | |
description: The maximum acceptable difference between the expected price of the 'toToken' and the price at the time of the transfer. | |
example: 0.005 | |
fromAddress: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
toAddress: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
estimate: | |
type: object | |
description: Provides an estimation for a transaction, including costs, amounts, and execution duration. | |
properties: | |
approvalAddress: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
toAmountMin: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
toAmount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
fromAmount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
feeCosts: | |
type: array | |
description: A collection of fee costs associated with the transaction. | |
items: | |
type: object | |
description: Details about a specific fee cost associated with the transaction. | |
properties: | |
name: | |
type: string | |
description: Name of the fee cost. | |
example: Network Fee | |
amount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
amountUSD: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
token: | |
type: string | |
description: The symbol of a token | |
example: ETH | |
included: | |
type: boolean | |
description: Indicates if the fee is included in the transaction amount. | |
gasCosts: | |
type: array | |
description: A collection of estimated gas costs for executing the transaction. | |
items: | |
type: object | |
properties: | |
type: | |
type: string | |
description: The type of the gas cost. | |
example: SEND | |
price: | |
type: string | |
description: The gas price, specified as a string to maintain precision. | |
example: '19236858243' | |
estimate: | |
type: string | |
description: The estimated gas required, specified as a string to maintain precision. | |
example: '445393' | |
limit: | |
type: string | |
description: The gas limit for the transaction, specified as a string to maintain precision. | |
example: '579011' | |
pattern: ^[1-9][0-9]*$ | |
amount: | |
type: string | |
description: The amount of gas required in the gas currency. | |
example: '8567962003424499' | |
pattern: ^[1-9][0-9]*$ | |
amountUSD: | |
type: string | |
description: The amount of gas required in USD. | |
example: '16.05' | |
pattern: ^(0(\.[0-9]+)?|[1-9][0-9]*(\.[0-9]+)?)$ | |
token: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
executionDuration: | |
type: integer | |
description: The estimated duration for the transaction execution in seconds. | |
example: 30 | |
fromAmountUSD: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
toAmountUSD: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
tool: | |
type: string | |
description: The tool or service used to generate this estimate. | |
example: satp | |
toolDetails: | |
type: object | |
description: Describes integration or tool details such as bridges or exchanges involved in the transaction. | |
required: | |
- key | |
- name | |
- logoURI | |
properties: | |
key: | |
type: string | |
description: A unique identifier for the integration or tool. | |
example: 1inch | |
name: | |
type: string | |
description: The name of the integration or tool. | |
example: 1inch Exchange | |
logoURI: | |
type: string | |
format: uri | |
description: URL to the logo of the integration or tool. | |
example: https://cdn.example.com/logos/1inch.png | |
integrationDetails: | |
type: object | |
description: Describes integration or tool details such as bridges or exchanges involved in the transaction. | |
required: | |
- key | |
- name | |
- logoURI | |
properties: | |
key: | |
type: string | |
description: A unique identifier for the integration or tool. | |
example: 1inch | |
name: | |
type: string | |
description: The name of the integration or tool. | |
example: 1inch Exchange | |
logoURI: | |
type: string | |
format: uri | |
description: URL to the logo of the integration or tool. | |
example: https://cdn.example.com/logos/1inch.png | |
includedStepIds: | |
type: array | |
description: IDs of further steps included within this step, allowing for nested actions without direct recursion. | |
items: | |
type: string | |
insurance: | |
type: object | |
properties: | |
state: | |
type: string | |
description: The state of insurance applicability for the transaction. | |
example: NOT_INSURABLE | |
enum: | |
- NOT_INSURABLE | |
- INSURABLE | |
- INSURED | |
feeAmountUsd: | |
type: string | |
description: The fee amount for insurance, represented in USD. | |
example: '10.00' | |
pattern: ^(0|[1-9]\d*)(\.\d+)?$ | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
Token: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
Tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
BridgeInfo: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
IncludedStep: | |
type: object | |
description: Details a single step within a route including actions and estimates. | |
properties: | |
id: | |
type: string | |
description: Id of the step | |
type: | |
type: string | |
description: Type of the step, typically describing the action, e.g., 'swap'. | |
tool: | |
type: string | |
description: Tool used in the step, e.g., 'stargate'. | |
action: | |
type: object | |
properties: | |
fromToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
fromAmount: | |
type: string | |
description: The amount of 'fromToken' to be transferred, specified as a string to maintain precision. | |
example: '1000000000000000000' | |
pattern: ^[1-9][0-9]*$ | |
toToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
slippage: | |
type: number | |
format: float | |
description: The maximum acceptable difference between the expected price of the 'toToken' and the price at the time of the transfer. | |
example: 0.005 | |
fromAddress: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
toAddress: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
estimate: | |
type: object | |
description: Provides an estimation for a transaction, including costs, amounts, and execution duration. | |
properties: | |
approvalAddress: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
toAmountMin: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
toAmount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
fromAmount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
feeCosts: | |
type: array | |
description: A collection of fee costs associated with the transaction. | |
items: | |
type: object | |
description: Details about a specific fee cost associated with the transaction. | |
properties: | |
name: | |
type: string | |
description: Name of the fee cost. | |
example: Network Fee | |
amount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
amountUSD: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
token: | |
type: string | |
description: The symbol of a token | |
example: ETH | |
included: | |
type: boolean | |
description: Indicates if the fee is included in the transaction amount. | |
gasCosts: | |
type: array | |
description: A collection of estimated gas costs for executing the transaction. | |
items: | |
type: object | |
properties: | |
type: | |
type: string | |
description: The type of the gas cost. | |
example: SEND | |
price: | |
type: string | |
description: The gas price, specified as a string to maintain precision. | |
example: '19236858243' | |
estimate: | |
type: string | |
description: The estimated gas required, specified as a string to maintain precision. | |
example: '445393' | |
limit: | |
type: string | |
description: The gas limit for the transaction, specified as a string to maintain precision. | |
example: '579011' | |
pattern: ^[1-9][0-9]*$ | |
amount: | |
type: string | |
description: The amount of gas required in the gas currency. | |
example: '8567962003424499' | |
pattern: ^[1-9][0-9]*$ | |
amountUSD: | |
type: string | |
description: The amount of gas required in USD. | |
example: '16.05' | |
pattern: ^(0(\.[0-9]+)?|[1-9][0-9]*(\.[0-9]+)?)$ | |
token: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
executionDuration: | |
type: integer | |
description: The estimated duration for the transaction execution in seconds. | |
example: 30 | |
fromAmountUSD: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
toAmountUSD: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
tool: | |
type: string | |
description: The tool or service used to generate this estimate. | |
example: satp | |
toolDetails: | |
type: object | |
description: Describes integration or tool details such as bridges or exchanges involved in the transaction. | |
required: | |
- key | |
- name | |
- logoURI | |
properties: | |
key: | |
type: string | |
description: A unique identifier for the integration or tool. | |
example: 1inch | |
name: | |
type: string | |
description: The name of the integration or tool. | |
example: 1inch Exchange | |
logoURI: | |
type: string | |
format: uri | |
description: URL to the logo of the integration or tool. | |
example: https://cdn.example.com/logos/1inch.png | |
integrationDetails: | |
type: object | |
description: Describes integration or tool details such as bridges or exchanges involved in the transaction. | |
required: | |
- key | |
- name | |
- logoURI | |
properties: | |
key: | |
type: string | |
description: A unique identifier for the integration or tool. | |
example: 1inch | |
name: | |
type: string | |
description: The name of the integration or tool. | |
example: 1inch Exchange | |
logoURI: | |
type: string | |
format: uri | |
description: URL to the logo of the integration or tool. | |
example: https://cdn.example.com/logos/1inch.png | |
includedStepIds: | |
type: array | |
description: IDs of further steps included within this step, allowing for nested actions without direct recursion. | |
items: | |
type: string | |
Insurance: | |
type: object | |
properties: | |
state: | |
type: string | |
description: The state of insurance applicability for the transaction. | |
example: NOT_INSURABLE | |
enum: | |
- NOT_INSURABLE | |
- INSURABLE | |
- INSURED | |
feeAmountUsd: | |
type: string | |
description: The fee amount for insurance, represented in USD. | |
example: '10.00' | |
pattern: ^(0|[1-9]\d*)(\.\d+)?$ | |
Action: | |
type: object | |
properties: | |
fromToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
fromAmount: | |
type: string | |
description: The amount of 'fromToken' to be transferred, specified as a string to maintain precision. | |
example: '1000000000000000000' | |
pattern: ^[1-9][0-9]*$ | |
toToken: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
slippage: | |
type: number | |
format: float | |
description: The maximum acceptable difference between the expected price of the 'toToken' and the price at the time of the transfer. | |
example: 0.005 | |
fromAddress: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
toAddress: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
IntegrationDetails: | |
type: object | |
description: Describes integration or tool details such as bridges or exchanges involved in the transaction. | |
required: | |
- key | |
- name | |
- logoURI | |
properties: | |
key: | |
type: string | |
description: A unique identifier for the integration or tool. | |
example: 1inch | |
name: | |
type: string | |
description: The name of the integration or tool. | |
example: 1inch Exchange | |
logoURI: | |
type: string | |
format: uri | |
description: URL to the logo of the integration or tool. | |
example: https://cdn.example.com/logos/1inch.png | |
Estimate: | |
type: object | |
description: Provides an estimation for a transaction, including costs, amounts, and execution duration. | |
properties: | |
approvalAddress: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
toAmountMin: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
toAmount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
fromAmount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
feeCosts: | |
type: array | |
description: A collection of fee costs associated with the transaction. | |
items: | |
type: object | |
description: Details about a specific fee cost associated with the transaction. | |
properties: | |
name: | |
type: string | |
description: Name of the fee cost. | |
example: Network Fee | |
amount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
amountUSD: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
token: | |
type: string | |
description: The symbol of a token | |
example: ETH | |
included: | |
type: boolean | |
description: Indicates if the fee is included in the transaction amount. | |
gasCosts: | |
type: array | |
description: A collection of estimated gas costs for executing the transaction. | |
items: | |
type: object | |
properties: | |
type: | |
type: string | |
description: The type of the gas cost. | |
example: SEND | |
price: | |
type: string | |
description: The gas price, specified as a string to maintain precision. | |
example: '19236858243' | |
estimate: | |
type: string | |
description: The estimated gas required, specified as a string to maintain precision. | |
example: '445393' | |
limit: | |
type: string | |
description: The gas limit for the transaction, specified as a string to maintain precision. | |
example: '579011' | |
pattern: ^[1-9][0-9]*$ | |
amount: | |
type: string | |
description: The amount of gas required in the gas currency. | |
example: '8567962003424499' | |
pattern: ^[1-9][0-9]*$ | |
amountUSD: | |
type: string | |
description: The amount of gas required in USD. | |
example: '16.05' | |
pattern: ^(0(\.[0-9]+)?|[1-9][0-9]*(\.[0-9]+)?)$ | |
token: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. | |
executionDuration: | |
type: integer | |
description: The estimated duration for the transaction execution in seconds. | |
example: 30 | |
fromAmountUSD: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
toAmountUSD: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
tool: | |
type: string | |
description: The tool or service used to generate this estimate. | |
example: satp | |
FeeCost: | |
type: object | |
description: Details about a specific fee cost associated with the transaction. | |
properties: | |
name: | |
type: string | |
description: Name of the fee cost. | |
example: Network Fee | |
amount: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
amountUSD: | |
type: string | |
description: The amount in string format including all decimals. | |
pattern: ^([1-9][0-9]*|0)(\.[0-9]+)?$ | |
example: '1000000000000000000' | |
token: | |
type: string | |
description: The symbol of a token | |
example: ETH | |
included: | |
type: boolean | |
description: Indicates if the fee is included in the transaction amount. | |
GasCost: | |
type: object | |
properties: | |
type: | |
type: string | |
description: The type of the gas cost. | |
example: SEND | |
price: | |
type: string | |
description: The gas price, specified as a string to maintain precision. | |
example: '19236858243' | |
estimate: | |
type: string | |
description: The estimated gas required, specified as a string to maintain precision. | |
example: '445393' | |
limit: | |
type: string | |
description: The gas limit for the transaction, specified as a string to maintain precision. | |
example: '579011' | |
pattern: ^[1-9][0-9]*$ | |
amount: | |
type: string | |
description: The amount of gas required in the gas currency. | |
example: '8567962003424499' | |
pattern: ^[1-9][0-9]*$ | |
amountUSD: | |
type: string | |
description: The amount of gas required in USD. | |
example: '16.05' | |
pattern: ^(0(\.[0-9]+)?|[1-9][0-9]*(\.[0-9]+)?)$ | |
token: | |
type: object | |
description: Metadata detailing a supported token | |
required: | |
- chainID | |
- chainType | |
- address | |
- symbol | |
- decimals | |
properties: | |
chainID: | |
x-category: satp-core | |
type: string | |
description: 'The network of the DLT being interacted with. TODO: implement network identification draft' | |
chainType: | |
x-category: satp-core | |
type: string | |
enum: | |
- HyperledgerFabric | |
- HyperledgerBesu | |
description: Supported DLT protocols. | |
address: | |
type: string | |
description: A blockchain address. | |
example: '0x102A0F6D9F0F507288fE1e26740cFaD61184CCC7' | |
name: | |
type: string | |
description: The name of the token. | |
symbol: | |
type: string | |
description: The symbol of the token. | |
decimals: | |
type: integer | |
description: How many decimals the token supports. | |
minimum: 1 | |
logoURI: | |
type: string | |
description: The logo of a token, chain, dex etc. | |
format: uri | |
tags: | |
type: array | |
description: List of tags identifiers providing additional context or categorization. | |
items: | |
type: string | |
example: | |
- satp | |
- hyperledger | |
priceUSD: | |
type: string | |
description: The current price of the token in USD. | |
extensions: | |
type: object | |
properties: | |
bridgeInfo: | |
type: object | |
additionalProperties: | |
type: object | |
description: Information about the bridge used for the token transfer. | |
properties: | |
tokenAddress: | |
type: string | |
description: The address of the token being transferred. | |
example: 0x... | |
verified: | |
type: boolean | |
description: Indicates whether the token is verified. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment