Deposit
Mystiko Deposit Related APIs.
Data Structure
Quote
Retrieve quote information for a deposit.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
Response<DepositQuote, DepositError> response = await api.quote(QuoteDepositOptions(chainId: 1, asset_symbol: 'MTT'));
QuoteDepositOptions
:
Parameter | Required | Description |
---|---|---|
chainId | true | The chain ID of the asset. |
assetSymbol | true | Asset symbol. |
queryTimeoutMs | false | Query timeout in milliseconds. |
dstChainId | false | Destination chain id. |
bridgeType | false | Bridge type. |
DepositQuote
data structure is as follows:
Property | Type | Description |
---|---|---|
assetSymbol | String | Asset symbol. |
assetDecimals | Int | Asset decimals. |
minAmount | Double | Minimum amount. |
minDecimalAmount | String | Minimum decimal amount. |
maxAmount | Double | Maximum amount. |
maxDecimalAmount | String | Maximum decimal amount. |
minRollupFeeAmount | Double | Minimum rollup fee amount. |
minRollupFeeDecimalAmount | String | Minimum rollup fee decimal amount. |
rollupFeeAssetSymbol | String | Rollup fee asset symbol. |
rollupFeeAssetDecimals | Int | Rollup fee asset decimals. |
minBridgeFeeAmount | Double | Minimum bridge fee amount. |
minBridgeFeeDecimalAmount | String | Minimum bridge fee decimal amount. |
bridgeFeeAssetSymbol | String | Bridge fee asset symbol. |
bridgeFeeAssetDecimals | Int | Bridge fee asset decimals. |
minExecutorFeeAmount | Double | Minimum executor fee amount. |
minExecutorFeeDecimalAmount | String | Minimum executor fee decimal amount. |
executorFeeAssetSymbol | String | Executor fee asset symbol. |
executorFeeAssetDecimals | Int | Executor fee asset decimals. |
recommendedAmounts | List<Double> | Recommended amounts. |
recommendedDecimalAmounts | List<String> | Recommended decimal amounts. |
Summary
Retrieve summary information for a deposit.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
CreateDepositOptions options = CreateDepositOptions(
chain_id: 5,
asset_symbol: 'MTT',
amount: 10,
shielded_address: '0x123456789',
);
Response<DepositSummary, DepositError> response = await api.summary(options);
CreateDepositOptions
:
Parameter | Required | Description |
---|---|---|
chain_id | true | Chain id. |
asset_symbol | true | Asset symbol. |
amount | true | Amount. |
shielded_address | true | Shielded address. |
dst_chain_id | false | Destination chain id. |
rollup_fee_amount | false | Rollup fee amount. |
bridge_fee_amount | false | Bridge fee amount. |
executor_fee_amount | false | Executor fee amount. |
query_timeout_ms | false | Query timeout in milliseconds. |
deposit_quote | false | Deposit quote. |
bridge_type | false | Bridge type. |
DepositSummary
data structure is as follows:
Property | Type | Description |
---|---|---|
chainId | Int | Chain id. |
assetSymbol | String | Asset symbol. |
assetDecimals | Int | Asset decimals. |
amount | Double | Amount. |
decimalAmount | String | Decimal amount. |
shieldedAddress | String | Shielded address. |
rollupFeeAmount | Double | Rollup fee amount. |
rollupFeeDecimalAmount | String | Rollup fee decimal amount. |
rollupFeeAssetSymbol | String | Rollup fee asset symbol. |
rollupFeeAssetDecimals | Int | Rollup fee asset decimals. |
dstChainId | Int | Destination chain id. |
bridgeFeeAmount | Double | Bridge fee amount. |
bridgeFeeDecimalAmount | String | Bridge fee decimal amount. |
bridgeFeeAssetSymbol | String | Bridge fee asset symbol. |
bridgeFeeAssetDecimals | Int | Bridge fee asset decimals. |
executorFeeAmount | Double | Executor fee amount. |
executorFeeDecimalAmount | String | Executor fee decimal amount. |
executorFeeAssetSymbol | String | Executor fee asset symbol. |
executorFeeAssetDecimals | Int | Executor fee asset decimals. |
bridgeType | BridgeType | Bridge type. |
totalAmounts | Map<String, Double> | Total amounts. |
totalDecimalAmounts | Map<String, String> | Total decimal amounts. |
Create
Create a Deposit request.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
CreateDepositOptions options = CreateDepositOptions(
chain_id: 5,
asset_symbol: 'MTT',
amount: 10,
shielded_address: '0x123456789',
);
Response<Deposit, DepositError> response = await api.create(options);
Deposit
data structure is as follows:
Property | Type | Description |
---|---|---|
id | String | Id. |
createdAt | Int | Created at. |
updatedAt | Int | Updated at. |
chainId | Int | Chain id. |
contractAddress | String | Contract address. |
poolAddress | String | Pool address. |
dstChainId | Int | Destination chain id. |
dstChainContractAddress | String | Destination chain contract address. |
dstPoolAddress | String | Destination pool address. |
commitmentHash | String | Commitment hash. |
hashK | String | Hash K. |
randomS | String | Random S. |
encryptedNote | String | Encrypted note. |
assetSymbol | String | Asset symbol. |
assetDecimals | Int | Asset decimals. |
amount | Double | Amount. |
decimalAmount | String | Decimal amount. |
rollupFeeAmount | Double | Rollup fee amount. |
rollupFeeDecimalAmount | String | Rollup fee decimal amount. |
shieldedAddress | String | Shielded address. |
walletId | String | Wallet id. |
assetAddress | String | Asset address. |
bridgeFeeAmount | Double | Bridge fee amount. |
bridgeFeeDecimalAmount | String | Bridge fee decimal amount. |
executorFeeAmount | Double | Executor fee amount. |
executorFeeDecimalAmount | String | Executor fee decimal amount. |
bridgeFeeAssetAddress | String | Bridge fee asset address. |
bridgeFeeAssetSymbol | String | Bridge fee asset symbol. |
bridgeFeeAssetDecimals | Int | Bridge fee asset decimals. |
executorFeeAssetAddress | String | Executor fee asset address. |
executorFeeAssetSymbol | String | Executor fee asset symbol. |
executorFeeAssetDecimals | Int | Executor fee asset decimals. |
queuedTransactionHash | String | Queued transaction hash. |
includedTransactionHash | String | Included transaction hash. |
srcChainTransactionHash | String | Source chain transaction hash. |
assetApproveTransactionHash | List<String> | Asset approve transaction hash. |
errorMessage | String | Error message. |
bridgeType | BridgeType | Bridge type. |
status | DepositStatus | Deposit status. |
Send
Send a deposit transaction using a private key.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
SendDepositOptions options = SendDepositOptions(
depositId: 'id',
privateKey: 'privateKey',
);
Response<Deposit, DepositError> response = await api.send(options);
SendDepositOptions
:
Parameter | Required | Description |
---|---|---|
depositId | true | Deposit id. |
privateKey | true | Private key. |
signerProvider | false | Signer provider. |
queryTimeoutMs | false | Query timeout in milliseconds. |
assetApproveConfirmations | false | Asset approve confirmations. |
depositConfirmations | false | Deposit confirmations. |
txSendTimeoutMs | false | Transaction send timeout in milliseconds. |
txWaitTimeoutMs | false | Transaction wait timeout in milliseconds. |
txWaitIntervalMs | false | Transaction wait interval in milliseconds. |
assetApproveTx | false | Asset approve transaction. |
depositTx | false | Deposit transaction. |
screeningMessage | false | Screening message. |
SendWithGrpc
Send a deposit transaction by signing through the given gRPC interface.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
SendDepositOptions options = SendDepositOptions(depositId: 'id');
ClientOptions clientOptions = ClientOptions(host: 'localhost', port: 50051);
Response<Deposit, DepositError> response = await api.sendWithGrpc(options, clientOptions);
ClientOptions
:
Parameter | Required | Description |
---|---|---|
host | true | Host. |
port | true | Port. |
isSsl | false | Is SSL. |
sslCert | false | SSL cert. |
sslCertPath | false | SSL cert path. |
sslServerName | false | SSL server name. |
Find
Query deposit data using QueryFilter
.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
Response<List<Deposit>, DepositError> response = await api.find(QueryFilter());
FindAll
Query all Deposit data.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
Response<List<Deposit>, DepositError> response = await api.findAll();
FindOne
Find a single Deposit record using QueryFilter
.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
Response<Deposit, DepositError> response = await api.findOne(QueryFilter);
FindById
Find a single Deposit record by its ID.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
Response<Deposit, DepositError> response = await api.findById('id');
Count
Query the count of data that matches the QueryFilter
criteria.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
Response<Int64, DepositError> response = await api.count(QueryFilter());
CountAll
Query the total count of all Deposit data.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
Response<Int64, DepositError> response = await api.countAll();
Update
Update a Deposit record.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
Response<Deposit, DepositError> response = await api.update(Deposit());
UpdateBatch
Batch update Deposit records.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
List<Deposit> deposits = [Deposit(), Deposit()];
Response<List<Deposit>, DepositError> response = await api.updateBatch(deposits);
UpdateByFilter
Update Deposit records based on the conditions specified in the QueryFilter
.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
List<ColumnValuePair> pairs = [ColumnValuePair(column: 'chainId', value: ColumnValue(i64Value: 1))];
Response<void, DepositError> response = await api.updateByFilter(pairs, QueryFilter());
UpdateAll
Update all Deposit records.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
List<ColumnValuePair> pairs = [ColumnValuePair()];
Response<void, DepositError> response = await api.updateAll(pairs);
Delete
Delete a Deposit record.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
Response<void, DepositError> response = await api.delete(Deposit());
DeleteBatch
Batch delete Deposit records.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
List<Deposit> deposits = [Deposit(), Deposit()];
Response<void, DepositError> response = await api.deleteBatch(deposits);
DeleteByFilter
Delete Deposit records based on the conditions specified in the QueryFilter
.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
Response<void, DepositError> response = await api.deleteByFilter(QueryFilter());
DeleteAll
Delete all Deposit records.
import 'package:mystiko_flutter/mystiko_flutter.dart';
MystikoDepositApi api = await Mystiko.mystikoDepositApi();
Response<void, DepositError> response = await api.deleteAll();