Skip to main content
GET
/
dca
/
wallet
/
{wallet}
SDK
import { Client } from '@solana-tracker/data-api';

const client = new Client({ apiKey: 'YOUR_API_KEY' });

const data = await client.getDcaWallet('FbMxP3GVq8TQ36nbYgx4NP9iygMpwAwFWJwW81ioCiSF', { status: 'active', limit: 25 });
curl --request GET \
  --url https://data.solanatracker.io/dca/wallet/{wallet} \
  --header 'x-api-key: <api-key>'
import requests

url = "https://data.solanatracker.io/dca/wallet/{wallet}"

headers = {"x-api-key": "<api-key>"}

response = requests.get(url, headers=headers)

print(response.text)
const options = {method: 'GET', headers: {'x-api-key': '<api-key>'}};

fetch('https://data.solanatracker.io/dca/wallet/{wallet}', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://data.solanatracker.io/dca/wallet/{wallet}",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "GET",
  CURLOPT_HTTPHEADER => [
    "x-api-key: <api-key>"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://data.solanatracker.io/dca/wallet/{wallet}"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("x-api-key", "<api-key>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.get("https://data.solanatracker.io/dca/wallet/{wallet}")
  .header("x-api-key", "<api-key>")
  .asString();
require 'uri'
require 'net/http'

url = URI("https://data.solanatracker.io/dca/wallet/{wallet}")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["x-api-key"] = '<api-key>'

response = http.request(request)
puts response.read_body
{ "wallet": "2FbbdMWfrfGpyyK4Wh76vyxbmDGcp3LxZNhwBwFpV5UK", "summary": { "total": 1, "active": 1, "paused": 0, "completed": 0, "pending": 0 }, "orders": [ { "program": "jupiter", "programId": "DCA265Vj8a9CEuX1eb1LWRnDT7uK6q1xMipnNyatn23M", "address": "125PQmudTAXHUUGxtSra1xTzGu3NRCMbRU7i9cikEpwd", "owner": "2FbbdMWfrfGpyyK4Wh76vyxbmDGcp3LxZNhwBwFpV5UK", "status": "active", "direction": "buying", "pair": "USDC → SOL", "input": { "mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", "symbol": "USDC", "name": "USD Coin", "decimals": 6, "image": "https://image.solanatracker.io/proxy?url=example", "uri": "https://example.com", "description": "", "twitter": null, "website": null, "hasFileMetaData": true, "priceUsd": 1 }, "output": { "mint": "So11111111111111111111111111111111111111112", "symbol": "SOL", "name": "Wrapped SOL", "decimals": 9, "image": "https://image.solanatracker.io/proxy?url=example-sol", "priceUsd": 142.5 }, "deposited": 1000, "depositedUsd": 1000, "used": 200, "usedUsd": 200, "remaining": 800, "remainingUsd": 800, "received": 5.2, "receivedUsd": 741, "perCycle": 50, "perCycleUsd": 50, "frequency": "1h", "progressPercent": 20, "volume": 5.2, "volumeUsd": 741, "createdAt": "2024-01-01T00:00:00.000Z", "nextCycleAt": "2024-01-02T00:00:00.000Z", "raw": { "deposited": "1000000000", "used": "200000000" } } ], "pagination": { "limit": 50, "nextCursor": null, "hasMore": false, "count": 1, "total": 1 } }

SDK Example

import { Client } from '@solana-tracker/data-api';

const client = new Client({ apiKey: 'YOUR_API_KEY' });

const data = await client.getDcaWallet('FbMxP3GVq8TQ36nbYgx4NP9iygMpwAwFWJwW81ioCiSF', { status: 'active', limit: 25 });

Authorizations

x-api-key
string
header
required

API Key for authentication

Path Parameters

wallet
string
required

Query Parameters

program
string
default:jupiter

DCA program to query. Aliases: dex, platform. Default: jupiter. Use GET /dca/programs for supported ids.

limit
integer
default:50

Max results per page. Default 50, max 100.

Required range: 1 <= x <= 100
cursor
string

Pagination cursor — last order address from the previous page. Must be used with the same sort, status, and program. Invalid cursor returns 400 INVALID_CURSOR.

sort
enum<string>
default:volume

Sort field. Alias: sortBy. Default: volume.

Available options:
volume,
deposited,
remaining,
progress,
recent,
created,
status
status
enum<string>
default:all

Filter by order status. Default: all.

Available options:
active,
paused,
completed,
pending,
all

Response

Successful response

wallet
string
summary
object
orders
object[]
pagination
object