Updated on 2026-08-14
This commit is contained in:
commit
a335e8d8f4
21 changed files with 541 additions and 63 deletions
|
|
@ -1,9 +1,11 @@
|
|||
package com.tangem.datasource.api.common.blockaid
|
||||
|
||||
import com.tangem.datasource.api.common.blockaid.models.request.DomainScanRequest
|
||||
import com.tangem.datasource.api.common.blockaid.models.request.EvmTransactionBulkScanRequest
|
||||
import com.tangem.datasource.api.common.blockaid.models.request.EvmTransactionScanRequest
|
||||
import com.tangem.datasource.api.common.blockaid.models.request.SolanaTransactionScanRequest
|
||||
import com.tangem.datasource.api.common.blockaid.models.response.DomainScanResponse
|
||||
import com.tangem.datasource.api.common.blockaid.models.response.GasEstimationResponse
|
||||
import com.tangem.datasource.api.common.blockaid.models.response.SolanaTransactionResponse
|
||||
import com.tangem.datasource.api.common.blockaid.models.response.TransactionScanResponse
|
||||
import retrofit2.http.Body
|
||||
|
|
@ -19,4 +21,7 @@ interface BlockAidApi {
|
|||
|
||||
@POST("solana/message/scan")
|
||||
suspend fun scanSolanaMessage(@Body request: SolanaTransactionScanRequest): SolanaTransactionResponse
|
||||
|
||||
@POST("evm/transaction-bulk/scan")
|
||||
suspend fun scanEvmTransactionBulk(@Body request: EvmTransactionBulkScanRequest): List<GasEstimationResponse>
|
||||
}
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
package com.tangem.datasource.api.common.blockaid.models.request
|
||||
|
||||
enum class BlockAidScanOptions(val value: String) {
|
||||
Simulation("simulation"),
|
||||
Validation("validation"),
|
||||
GasEstimation("gas_estimation"),
|
||||
}
|
||||
|
|
@ -14,9 +14,25 @@ data class EvmTransactionScanRequest(
|
|||
@Json(name = "metadata") val metadata: TransactionMetadata,
|
||||
)
|
||||
|
||||
@JsonClass(generateAdapter = true)
|
||||
data class EvmTransactionBulkScanRequest(
|
||||
@Json(name = "chain") val chain: String,
|
||||
@Json(name = "options") val options: List<String>,
|
||||
@Json(name = "metadata") val metadata: TransactionMetadata,
|
||||
@Json(name = "data") val data: List<Data>,
|
||||
@Json(name = "aggregated") val aggregated: Boolean = false,
|
||||
)
|
||||
|
||||
@JsonClass(generateAdapter = true)
|
||||
data class RpcData(
|
||||
@Json(name = "jsonrpc") val jsonrpc: String = "2.0",
|
||||
@Json(name = "method") val method: String,
|
||||
@Json(name = "params") val params: List<Map<String, String>>,
|
||||
)
|
||||
|
||||
@JsonClass(generateAdapter = true)
|
||||
data class Data(
|
||||
@Json(name = "from") val from: String,
|
||||
@Json(name = "to") val to: String,
|
||||
@Json(name = "data") val data: String,
|
||||
)
|
||||
|
|
@ -0,0 +1,14 @@
|
|||
package com.tangem.datasource.api.common.blockaid.models.response
|
||||
|
||||
import com.squareup.moshi.Json
|
||||
import com.squareup.moshi.JsonClass
|
||||
|
||||
@JsonClass(generateAdapter = true)
|
||||
data class GasEstimationResponse(
|
||||
@Json(name = "gas_estimation") val gasEstimation: GasEstimationItem,
|
||||
)
|
||||
|
||||
@JsonClass(generateAdapter = true)
|
||||
data class GasEstimationItem(
|
||||
@Json(name = "estimate") val estimate: String,
|
||||
)
|
||||
Loading…
Add table
Add a link
Reference in a new issue