Skip to content

Commit

Permalink
ALL-4914 - Add Fantom L1
Browse files Browse the repository at this point in the history
  • Loading branch information
Hathoriel committed Jun 27, 2024
1 parent a42edbd commit db463d9
Show file tree
Hide file tree
Showing 53 changed files with 837 additions and 38 deletions.
2 changes: 1 addition & 1 deletion packages/api-client/src/api_schema.json

Large diffs are not rendered by default.

24 changes: 24 additions & 0 deletions packages/api-client/src/generated/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,10 @@ export type { CallCronosSmartContractMethodCaller } from './models/CallCronosSma
export type { CallCronosSmartContractMethodKMS } from './models/CallCronosSmartContractMethodKMS';
export type { CallCronosSmartContractReadMethod } from './models/CallCronosSmartContractReadMethod';
export type { CallEthSmartContractMethodCaller } from './models/CallEthSmartContractMethodCaller';
export type { CallFantomSmartContractMethod } from './models/CallFantomSmartContractMethod';
export type { CallFantomSmartContractMethodCaller } from './models/CallFantomSmartContractMethodCaller';
export type { CallFantomSmartContractMethodKMS } from './models/CallFantomSmartContractMethodKMS';
export type { CallFantomSmartContractReadMethod } from './models/CallFantomSmartContractReadMethod';
export type { CallFlareSmartContractMethod } from './models/CallFlareSmartContractMethod';
export type { CallFlareSmartContractMethodCaller } from './models/CallFlareSmartContractMethodCaller';
export type { CallFlareSmartContractMethodKMS } from './models/CallFlareSmartContractMethodKMS';
Expand Down Expand Up @@ -503,6 +507,18 @@ export type { Error403EthScBody } from './models/Error403EthScBody';
export type { Error403EthTxBody } from './models/Error403EthTxBody';
export type { Error403EthTxHash } from './models/Error403EthTxHash';
export type { Error403EthTxSign } from './models/Error403EthTxSign';
export type { Error403FantomBep20NotFound } from './models/Error403FantomBep20NotFound';
export type { Error403FantomBep20Set } from './models/Error403FantomBep20Set';
export type { Error403FantomBep20Unsupported } from './models/Error403FantomBep20Unsupported';
export type { Error403FantomBroadcast } from './models/Error403FantomBroadcast';
export type { Error403FantomErc20TxSign } from './models/Error403FantomErc20TxSign';
export type { Error403FantomGasCalculation } from './models/Error403FantomGasCalculation';
export type { Error403FantomGasPrice } from './models/Error403FantomGasPrice';
export type { Error403FantomMnemonicPrivateKey } from './models/Error403FantomMnemonicPrivateKey';
export type { Error403FantomScBody } from './models/Error403FantomScBody';
export type { Error403FantomTxBody } from './models/Error403FantomTxBody';
export type { Error403FantomTxHash } from './models/Error403FantomTxHash';
export type { Error403FantomTxSign } from './models/Error403FantomTxSign';
export type { Error403FeeFormat } from './models/Error403FeeFormat';
export type { Error403FlareBep20NotFound } from './models/Error403FlareBep20NotFound';
export type { Error403FlareBep20Set } from './models/Error403FlareBep20Set';
Expand Down Expand Up @@ -685,6 +701,10 @@ export type { Event } from './models/Event';
export type { EvmListingData } from './models/EvmListingData';
export type { ExchangeRate } from './models/ExchangeRate';
export type { ExcludeMetadata } from './models/ExcludeMetadata';
export type { FantomBalance } from './models/FantomBalance';
export type { FantomBlock } from './models/FantomBlock';
export type { FantomEstimateGas } from './models/FantomEstimateGas';
export type { FantomTx } from './models/FantomTx';
export type { FeeAndChange } from './models/FeeAndChange';
export type { FeeBtcBased } from './models/FeeBtcBased';
export type { FeeEvmBased } from './models/FeeEvmBased';
Expand Down Expand Up @@ -747,6 +767,7 @@ export type { GeneratedAddressBsc } from './models/GeneratedAddressBsc';
export type { GeneratedAddressBtc } from './models/GeneratedAddressBtc';
export type { GeneratedAddressCronos } from './models/GeneratedAddressCronos';
export type { GeneratedAddressEth } from './models/GeneratedAddressEth';
export type { GeneratedAddressFantom } from './models/GeneratedAddressFantom';
export type { GeneratedAddressFlare } from './models/GeneratedAddressFlare';
export type { GeneratedAddressMatic } from './models/GeneratedAddressMatic';
export type { GeneratedAddressOne } from './models/GeneratedAddressOne';
Expand Down Expand Up @@ -1011,6 +1032,8 @@ export type { TransferEthBlockchain } from './models/TransferEthBlockchain';
export type { TransferEthBlockchainKMS } from './models/TransferEthBlockchainKMS';
export type { TransferEthKMS } from './models/TransferEthKMS';
export type { TransferEthMnemonic } from './models/TransferEthMnemonic';
export type { TransferFantomBlockchain } from './models/TransferFantomBlockchain';
export type { TransferFantomBlockchainKMS } from './models/TransferFantomBlockchainKMS';
export type { TransferFlareBlockchain } from './models/TransferFlareBlockchain';
export type { TransferFlareBlockchainKMS } from './models/TransferFlareBlockchainKMS';
export type { TransferFlowKMS } from './models/TransferFlowKMS';
Expand Down Expand Up @@ -1194,6 +1217,7 @@ export { DogecoinService } from './services/DogecoinService';
export { ElrondService } from './services/ElrondService';
export { EthereumService } from './services/EthereumService';
export { ExchangeRateService } from './services/ExchangeRateService';
export { FantomService } from './services/FantomService';
export { FlareService } from './services/FlareService';
export { FlowService } from './services/FlowService';
export { FungibleTokensErc20OrCompatibleService } from './services/FungibleTokensErc20OrCompatibleService';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export type AddMultiTokenMinter = {
/**
* Chain to work with.
*/
chain: 'ETH' | 'MATIC' | 'KCS' | 'KLAY' | 'CELO' | 'ONE' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'MATIC' | 'KCS' | 'KLAY' | 'CELO' | 'ONE' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* Address of MultiToken token
*/
Expand Down
2 changes: 1 addition & 1 deletion packages/api-client/src/generated/models/AddNftMinter.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export type AddNftMinter = {
/**
* The blockchain to work with
*/
chain: 'BSC' | 'CELO' | 'ETH' | 'KLAY' | 'KCS' | 'MATIC' | 'ONE' | 'ZEN' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'BSC' | 'CELO' | 'ETH' | 'KLAY' | 'KCS' | 'MATIC' | 'ONE' | 'ZEN' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* The blockchain address of the NFT smart contract
*/
Expand Down
2 changes: 1 addition & 1 deletion packages/api-client/src/generated/models/ApproveErc20.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export type ApproveErc20 = {
/**
* The blockchain to work with
*/
chain: 'ETH' | 'BSC' | 'MATIC' | 'KLAY' | 'ONE' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'BSC' | 'MATIC' | 'KLAY' | 'ONE' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* The address of the smart contract
*/
Expand Down
2 changes: 1 addition & 1 deletion packages/api-client/src/generated/models/BurnMultiToken.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export type BurnMultiToken = {
/**
* Chain to work with.
*/
chain: 'ETH' | 'ONE' | 'MATIC' | 'KCS' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'ONE' | 'MATIC' | 'KCS' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* Address of holder
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export type BurnMultiTokenBatch = {
/**
* Chain to work with.
*/
chain: 'ETH' | 'ONE' | 'MATIC' | 'KCS' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'ONE' | 'MATIC' | 'KCS' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* Address of holder
*/
Expand Down
2 changes: 1 addition & 1 deletion packages/api-client/src/generated/models/BurnNft.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export type BurnNft = {
/**
* The blockchain to work with
*/
chain: 'ETH' | 'MATIC' | 'KCS' | 'ONE' | 'KLAY' | 'BSC' | 'ZEN' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'MATIC' | 'KCS' | 'ONE' | 'KLAY' | 'BSC' | 'ZEN' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* The ID of the NFT to burn
*/
Expand Down
2 changes: 1 addition & 1 deletion packages/api-client/src/generated/models/ChainBurnErc20.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export type ChainBurnErc20 = {
/**
* The blockchain to work with
*/
chain: 'ETH' | 'BSC' | 'MATIC' | 'KLAY' | 'XDC' | 'ONE' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'BSC' | 'MATIC' | 'KLAY' | 'XDC' | 'ONE' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* Amount of tokens to be destroyed.
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export type ChainDeployErc20 = {
/**
* The blockchain to work with
*/
chain: 'ETH' | 'BSC' | 'MATIC' | 'KLAY' | 'XDC' | 'ONE' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'BSC' | 'MATIC' | 'KLAY' | 'XDC' | 'ONE' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* Symbol of the ERC20 token
*/
Expand Down
2 changes: 1 addition & 1 deletion packages/api-client/src/generated/models/ChainMintErc20.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export type ChainMintErc20 = {
/**
* The blockchain to work with
*/
chain: 'ETH' | 'BSC' | 'MATIC' | 'KLAY' | 'XDC' | 'ONE' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'BSC' | 'MATIC' | 'KLAY' | 'XDC' | 'ONE' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* Amount to be minted and transferred to the recipient.
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export type ChainTransferEthErc20 = {
/**
* The blockchain to work with
*/
chain: 'ETH' | 'BSC' | 'MATIC' | 'KLAY' | 'XDC' | 'ONE' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'BSC' | 'MATIC' | 'KLAY' | 'XDC' | 'ONE' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* The blockchain address to send the fungible tokens to
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ export type CreateSubscriptionContractLogEvent = {
/**
* The blockchain on which events should be monitored.
*/
chain: 'ETH' | 'MATIC' | 'CELO' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX';
chain: 'ETH' | 'MATIC' | 'CELO' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'FTM' | 'OPTIMISM';
/**
* The URL of the endpoint where an HTTP POST request will be sent when the block where the events from the smart contracts are reflected gets completed.
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ export type CreateSubscriptionMultiTokenTransferEvent = {
/**
* The blockchain on which events should be monitored.
*/
chain: 'ETH' | 'MATIC' | 'CELO' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX';
chain: 'ETH' | 'MATIC' | 'CELO' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'FTM' | 'OPTIMISM';
/**
* The URL of the endpoint where an HTTP POST request will be sent when the block where the events from the smart contracts are reflected gets completed.
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ export type CreateSubscriptionNftTransferEvent = {
/**
* The blockchain on which events should be monitored.
*/
chain: 'ETH' | 'MATIC' | 'CELO' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX';
chain: 'ETH' | 'MATIC' | 'CELO' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'FTM' | 'OPTIMISM';
/**
* The URL of the endpoint where an HTTP POST request will be sent when the block where the events from the smart contracts are reflected gets completed.
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,14 @@ export type CreateSubscriptionNotification = {
/**
* Blockchain of the address.
*/
chain: 'SOL' | 'ETH' | 'MATIC' | 'CELO' | 'KLAY' | 'BTC' | 'LTC' | 'BCH' | 'DOGE' | 'TRON' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX';
chain: 'SOL' | 'ETH' | 'MATIC' | 'CELO' | 'KLAY' | 'BTC' | 'LTC' | 'BCH' | 'DOGE' | 'TRON' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'FTM' | 'OPTIMISM';
/**
* URL of the endpoint, where HTTP POST request will be sent, when transaction is detected on the address.
*/
url: string;
};
/**
* Flag indicating whether the subscription should include mempool transactions. Only available on BTC blockchain.
*/
mempool?: boolean;
}
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export type DeployMultiToken = {
/**
* Chain to work with.
*/
chain: 'ETH' | 'ONE' | 'MATIC' | 'KCS' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'ONE' | 'MATIC' | 'KCS' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* URI of the Multi Token token
*/
Expand Down
2 changes: 1 addition & 1 deletion packages/api-client/src/generated/models/DeployNft.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export type DeployNft = {
/**
* The blockchain to work with
*/
chain: 'ETH' | 'MATIC' | 'KCS' | 'ONE' | 'KLAY' | 'BSC' | 'ZEN' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'MATIC' | 'KCS' | 'ONE' | 'KLAY' | 'BSC' | 'ZEN' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* Name of the NFT token
*/
Expand Down
2 changes: 1 addition & 1 deletion packages/api-client/src/generated/models/MintMultiToken.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export type MintMultiToken = {
/**
* Chain to work with.
*/
chain: 'ETH' | 'ONE' | 'MATIC' | 'KCS' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'ONE' | 'MATIC' | 'KCS' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* ID of token to be created.
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export type MintMultiTokenBatch = {
/**
* Chain to work with.
*/
chain: 'ETH' | 'ONE' | 'MATIC' | 'KCS' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'ONE' | 'MATIC' | 'KCS' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* The blockchain address to send the Multi Tokens to.
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export type MintMultipleNft = {
/**
* The blockchain to work with
*/
chain: 'ETH' | 'MATIC' | 'KCS' | 'ONE' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'MATIC' | 'KCS' | 'ONE' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* Blockchain address to send NFT token to.
*/
Expand Down
2 changes: 1 addition & 1 deletion packages/api-client/src/generated/models/MintNft.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ export type MintNft = {
/**
* The blockchain to work with
*/
chain: 'BSC' | 'ETH' | 'KLAY' | 'KCS' | 'MATIC' | 'ONE' | 'ZEN' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'BSC' | 'ETH' | 'KLAY' | 'KCS' | 'MATIC' | 'ONE' | 'ZEN' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* The blockchain address to send the NFT to
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export type TransferMultiToken = {
/**
* Chain to work with.
*/
chain: 'ETH' | 'ONE' | 'MATIC' | 'KCS' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'ONE' | 'MATIC' | 'KCS' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* Blockchain address to send Multi Token token to
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ export type TransferMultiTokenBatch = {
/**
* Chain to work with.
*/
chain: 'ETH' | 'ONE' | 'MATIC' | 'KCS' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'ONE' | 'MATIC' | 'KCS' | 'KLAY' | 'BSC' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* Blockchain address to send Multi Token token to
*/
Expand Down
2 changes: 1 addition & 1 deletion packages/api-client/src/generated/models/TransferNft.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export type TransferNft = {
/**
* The blockchain to work with
*/
chain: 'ETH' | 'MATIC' | 'KCS' | 'ONE' | 'KLAY' | 'BSC' | 'ZEN' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM';
chain: 'ETH' | 'MATIC' | 'KCS' | 'ONE' | 'KLAY' | 'BSC' | 'ZEN' | 'FLR' | 'CRO' | 'BASE' | 'AVAX' | 'OPTIMISM' | 'FTM';
/**
* Blockchain address to send NFT token to
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ import type { GasEstimated } from '../models/GasEstimated';
import type { KcsEstimateGas } from '../models/KcsEstimateGas';
import type { KlaytnEstimateGas } from '../models/KlaytnEstimateGas';
import type { OneEstimateGas } from '../models/OneEstimateGas';
import type { OptimismEstimateGas } from '../models/OptimismEstimateGas';
import type { PolygonEstimateGas } from '../models/PolygonEstimateGas';
import type { TransactionFeeEgldBlockchain } from '../models/TransactionFeeEgldBlockchain';
import type { VetEstimateGas } from '../models/VetEstimateGas';
Expand Down Expand Up @@ -496,7 +497,7 @@ export class BlockchainFeesService {
}

/**
* Estimate the fee for a Polygon transaction
* Estimate the fee for a Optimism transaction
* <p><b>2 credits per API call</b></p>
* <p>Get an estimated gas price and the number of gas units needed for a Polygon transaction. The gas price is obtained from <a href="https://gasstation-mainnet.matic.network/" target="_blank">https://gasstation-mainnet.matic.network/</a>.</p>
* <p style="border:4px solid DeepSkyBlue;"><b>NOTE:</b> The estimated gas price is returned in <b>wei</b>. However, when <a href="https://apidoc.tatum.io/tag/Polygon#operation/PolygonBlockchainTransfer" target="_blank">making the transaction itself</a> and providing the custom fee, you have to provide the gas price in <b>Gwei</b>. Make sure to convert the estimated gas price from wei to Gwei before submitting your transaction.</p>
Expand All @@ -505,8 +506,8 @@ export class BlockchainFeesService {
* @returns GasEstimated OK
* @throws ApiError
*/
public static polygonEstimateGas1(
requestBody: PolygonEstimateGas,
public static optimismEstimateGas(
requestBody: OptimismEstimateGas,
): CancelablePromise<GasEstimated> {
return __request({
method: 'POST',
Expand Down
Loading

0 comments on commit db463d9

Please sign in to comment.