Create Deposit Transaction
This endpoint provides a transaction to be executed by an EOA to deposit funds into a smart wallet. This is a convenience endpoint to easily build a transfer to be executed by Metamask or any other EOA wallet
In: header
Path Parameters
The smart wallet address (in hexadecimal format) receiving the transfer.
^0x[a-fA-F0-9]{40}$
The amount to be transferred, expressed as a decimal string.
The blockchain network where the transfer executes. Supported EVM chains:
- Arbitrum One: 42161
- Avalanche: 43114
- Base: 8453
- BNB Smart Chain: 56
- Ethereum: 1
- Gnosis: 100
- OP Mainnet: 10
- Polygon: 137
The address (in hexadecimal format) of the token being transferred. If you want to deposit native tokens, set this value to 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
.
^0x[a-fA-F0-9]{40}$
The wallet address (in hexadecimal format) initiating the transfer.
^0x[a-fA-F0-9]{40}$
Response Body
curl -X POST "https://api.notus.team/api/v1/wallets/0xa2acc967a9fc4fd5d18351d06deb9b8718c18333/deposit" \
-H "Content-Type: application/json" \
-d '{
"amount": "101.25",
"chainId": 42161,
"token": "0x2791bca1f2de4661ed88a30c99a7a9449aa84174",
"fromAddress": "0x6648e365a1b072797ee871d45691aead31b9d016"
}'
const body = JSON.stringify({
"amount": "101.25",
"chainId": 42161,
"token": "0x2791bca1f2de4661ed88a30c99a7a9449aa84174",
"fromAddress": "0x6648e365a1b072797ee871d45691aead31b9d016"
})
fetch("https://api.notus.team/api/v1/wallets/0xa2acc967a9fc4fd5d18351d06deb9b8718c18333/deposit", {
body
})
package main
import (
"fmt"
"net/http"
"io/ioutil"
"strings"
)
func main() {
url := "https://api.notus.team/api/v1/wallets/0xa2acc967a9fc4fd5d18351d06deb9b8718c18333/deposit"
body := strings.NewReader(`{
"amount": "101.25",
"chainId": 42161,
"token": "0x2791bca1f2de4661ed88a30c99a7a9449aa84174",
"fromAddress": "0x6648e365a1b072797ee871d45691aead31b9d016"
}`)
req, _ := http.NewRequest("POST", url, body)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := ioutil.ReadAll(res.Body)
fmt.Println(res)
fmt.Println(string(body))
}
import requests
url = "https://api.notus.team/api/v1/wallets/0xa2acc967a9fc4fd5d18351d06deb9b8718c18333/deposit"
body = {
"amount": "101.25",
"chainId": 42161,
"token": "0x2791bca1f2de4661ed88a30c99a7a9449aa84174",
"fromAddress": "0x6648e365a1b072797ee871d45691aead31b9d016"
}
response = requests.request("POST", url, json = body, headers = {
"Content-Type": "application/json"
})
print(response.text)
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.http.HttpResponse.BodyHandlers;
import java.time.Duration;
import java.net.http.HttpRequest.BodyPublishers;
var body = BodyPublishers.ofString("""{
"amount": "101.25",
"chainId": 42161,
"token": "0x2791bca1f2de4661ed88a30c99a7a9449aa84174",
"fromAddress": "0x6648e365a1b072797ee871d45691aead31b9d016"
}""");
HttpClient client = HttpClient.newBuilder()
.connectTimeout(Duration.ofSeconds(10))
.build();
HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
.uri(URI.create("https://api.notus.team/api/v1/wallets/0xa2acc967a9fc4fd5d18351d06deb9b8718c18333/deposit"))
.header("Content-Type", "application/json")
.POST(body)
.build();
try {
HttpResponse<String> response = client.send(requestBuilder.build(), BodyHandlers.ofString());
System.out.println("Status code: " + response.statusCode());
System.out.println("Response body: " + response.body());
} catch (Exception e) {
e.printStackTrace();
}
using System;
using System.Net.Http;
using System.Text;
var body = new StringContent("""
{
"amount": "101.25",
"chainId": 42161,
"token": "0x2791bca1f2de4661ed88a30c99a7a9449aa84174",
"fromAddress": "0x6648e365a1b072797ee871d45691aead31b9d016"
}
""", Encoding.UTF8, "application/json");
var client = new HttpClient();
var response = await client.PostAsync("https://api.notus.team/api/v1/wallets/0xa2acc967a9fc4fd5d18351d06deb9b8718c18333/deposit", body);
var responseBody = await response.Content.ReadAsStringAsync();
{
"transfer": {
"from": "0x6648e365a1b072797ee871d45691aead31b9d016",
"to": "0x2791bca1f2de4661ed88a30c99a7a9449aa84174",
"value": "101250000000000000000",
"data": "0xa9059cbb000000000000000000000000a2acc967a9fc4fd5d18351d06deb9b8718c183330000000000000000000000000000000000000000000000000E0D1F62B3154000",
"estimateGasCost": "0.452"
}
}
{
"statusCode": 400,
"id": "NOT_AUTHORIZED_TOKENS",
"message": "The tokens '[0x2791bca1f2de4661ed88a30c99a7a9449aa84174]' are not authorized yet."
}
{
"statusCode": 403,
"id": "UNAVAILABLE_COMPUTE_UNITS",
"message": "The project doesn't have enough compute units to perform this action. Please upgrade your plan."
}
{
"statusCode": 404,
"id": "ACCOUNT_ABSTRACTION_ADDRESS_NOT_REGISTERED_WITH_PROJECT",
"message": "The requested wallet \"0xa2acc967a9fc4fd5d18351d06deb9b8718c18333\" is not registered with the project"
}
{
"statusCode": 500,
"id": "FAILED_TO_ESTIMATE_TRANSFER",
"message": "Failed to estimate transfer"
}
List Liquidity Pools GET
List liquidity pools that exist on the blockchain. The pool can be in a broken state, like having nearly no liquidity. Use the data returned by this endpoint to asses if the pool is worth investing into. Choose the aggregation interval to control both granularity and time range: DAILY (last 30 days), WEEKLY (last 12 weeks), MONTHLY (last 12 months).
Get Smart Wallet GET
This endpoint retrieves the details of a user's smart wallet, including the date the wallet was registered with this project, or _null_ if it's not registered yet.