curl --request GET \
--url https://api.pods.finance/v2/wallets/{address}/strategies/{strategyId} \
--header 'x-api-key: <api-key>'import requests
url = "https://api.pods.finance/v2/wallets/{address}/strategies/{strategyId}"
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://api.pods.finance/v2/wallets/{address}/strategies/{strategyId}', 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://api.pods.finance/v2/wallets/{address}/strategies/{strategyId}",
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://api.pods.finance/v2/wallets/{address}/strategies/{strategyId}"
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://api.pods.finance/v2/wallets/{address}/strategies/{strategyId}")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pods.finance/v2/wallets/{address}/strategies/{strategyId}")
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{
"history": {
"items": [
{
"amounts": {
"assetIn": {
"amountRaw": "<string>"
},
"assetOut": {
"amountRaw": "<string>"
}
},
"id": "<string>",
"status": "<string>",
"transactions": [
{}
],
"type": "<string>"
}
],
"pagination": {
"page": 1,
"limit": 10,
"total": 24,
"totalPages": 3,
"hasMore": true
}
},
"pnl": {
"items": [
{
"dateString": "2026-07-20T00:00:00.000Z",
"sharesBalance": "1000000000000000000",
"assetValue": "1000000000000000000",
"costBasisAsset": "1000000000000000000",
"pnlAsset": "1234",
"cumulativeDeposited": "1000000000000000000",
"cumulativeWithdrawn": "1000000000000000000",
"unrealizedPnlPercentage": 0.0123
}
],
"pagination": {
"page": 1,
"limit": 10,
"total": 24,
"totalPages": 3,
"hasMore": true
}
},
"rateHistory": {
"items": [
{
"date": "2026-07-20T00:00:00.000Z",
"rate": 123,
"apy": 123,
"conversionRateApy": 123,
"timestamp": "2023-11-07T05:31:56Z"
}
],
"pagination": {
"page": 1,
"limit": 10,
"total": 24,
"totalPages": 3,
"hasMore": true
}
},
"spotPosition": {
"apy": 123,
"avgApy": 123,
"grossAPY": 123,
"inceptionApy": 123,
"netAPY": 123,
"cumulativeProfit": {
"asset": "<string>",
"decimals": 123,
"humanized": "<string>",
"symbol": "<string>",
"value": "1000000000000000000",
"valueUSD": "<string>",
"afterFees": "<string>"
},
"currentPosition": {
"asset": "<string>",
"decimals": 123,
"humanized": "<string>",
"symbol": "<string>",
"value": "1000000000000000000",
"valueUSD": "<string>",
"afterFees": "<string>"
},
"principal": {
"asset": "<string>",
"decimals": 123,
"humanized": "<string>",
"symbol": "<string>",
"value": "1000000000000000000",
"valueUSD": "<string>",
"afterFees": "<string>"
},
"profit": {
"asset": "<string>",
"decimals": 123,
"humanized": "<string>",
"symbol": "<string>",
"value": "1000000000000000000",
"valueUSD": "<string>",
"afterFees": "<string>"
},
"profitInUSD": 123,
"underlyingBalanceUSD": 123,
"realizedApy7d": 0.0412,
"realizedApy30d": 0.0388,
"currentPositionInShares": {
"asset": "<string>",
"decimals": 123,
"humanized": "<string>",
"symbol": "<string>",
"value": "1000000000000000000",
"valueUSD": "<string>"
},
"receiptBalance": {
"asset": "<string>",
"decimals": 123,
"humanized": "<string>",
"symbol": "<string>",
"value": "1000000000000000000",
"valueUSD": "<string>"
},
"underlyingBalance": {
"asset": "<string>",
"decimals": 123,
"humanized": "<string>",
"symbol": "<string>",
"value": "1000000000000000000",
"valueUSD": "<string>"
},
"availableToClaim": [
{}
],
"availableToWithdraw": [
{}
],
"requestedToLend": [
{}
],
"requestedToLendInShares": [
{}
],
"requestedToWithdraw": [
{}
],
"requestedToWithdrawInShares": [
{}
]
},
"strategy": {
"id": "Aave-USDC-polygon",
"slug": "Aave-USDC-polygon",
"asset": "<string>",
"assetDecimals": 6,
"assetName": "USDC",
"availableActions": [
"lend",
"withdraw"
],
"implementationSelector": "AavePolygon",
"network": "polygon",
"networkId": "137",
"protocol": "Aave",
"underlyingAsset": "<string>",
"underlyingDecimals": 123,
"isDefault": true,
"paused": true,
"startDate": "<string>",
"fee": "0",
"performanceFeeBps": "0",
"metadata": {},
"markupFeeBps": "0",
"marketData": {
"lastRefreshedAt": "2023-11-07T05:31:56Z",
"samples": [
{
"at": "2023-11-07T05:31:56Z",
"tvl": "<string>",
"tvlUsd": 123,
"priceUsd": 123
}
],
"sharePrice": 123,
"sharePriceChange24h": 123,
"sharePriceRefreshedAt": "2023-11-07T05:31:56Z",
"tvl": "<string>",
"tvlChange24h": 123,
"tvlUsd": 123,
"usdRate": 123
},
"protocolInfo": {
"name": "Aave",
"logo": "https://icons.llamao.fi/icons/protocols/aave"
},
"chain": {
"name": "polygon",
"id": 137,
"explorer": {
"name": "Polygonscan",
"url": "https://polygonscan.com"
},
"logo": "<string>"
},
"assetToken": {
"name": "USD Coin",
"address": "0x3c499c542cef5e3811e1192ce70d8cc03d5c3359",
"symbol": "USDC",
"decimals": 6,
"logo": "<string>"
},
"underlyingToken": {
"name": "USD Coin",
"address": "0x3c499c542cef5e3811e1192ce70d8cc03d5c3359",
"symbol": "USDC",
"decimals": 6,
"logo": "<string>"
},
"logourl": "<string>",
"category": [
"<string>"
]
}
}{
"error": {
"code": "QUOTE_NOT_FOUND",
"message": "Quote not found or expired"
}
}{
"error": {
"code": "QUOTE_NOT_FOUND",
"message": "Quote not found or expired"
}
}Get wallet strategy details
Returns enriched strategy details, position, history, PnL, and rate history for the wallet supplied in the path.
curl --request GET \
--url https://api.pods.finance/v2/wallets/{address}/strategies/{strategyId} \
--header 'x-api-key: <api-key>'import requests
url = "https://api.pods.finance/v2/wallets/{address}/strategies/{strategyId}"
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://api.pods.finance/v2/wallets/{address}/strategies/{strategyId}', 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://api.pods.finance/v2/wallets/{address}/strategies/{strategyId}",
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://api.pods.finance/v2/wallets/{address}/strategies/{strategyId}"
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://api.pods.finance/v2/wallets/{address}/strategies/{strategyId}")
.header("x-api-key", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pods.finance/v2/wallets/{address}/strategies/{strategyId}")
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{
"history": {
"items": [
{
"amounts": {
"assetIn": {
"amountRaw": "<string>"
},
"assetOut": {
"amountRaw": "<string>"
}
},
"id": "<string>",
"status": "<string>",
"transactions": [
{}
],
"type": "<string>"
}
],
"pagination": {
"page": 1,
"limit": 10,
"total": 24,
"totalPages": 3,
"hasMore": true
}
},
"pnl": {
"items": [
{
"dateString": "2026-07-20T00:00:00.000Z",
"sharesBalance": "1000000000000000000",
"assetValue": "1000000000000000000",
"costBasisAsset": "1000000000000000000",
"pnlAsset": "1234",
"cumulativeDeposited": "1000000000000000000",
"cumulativeWithdrawn": "1000000000000000000",
"unrealizedPnlPercentage": 0.0123
}
],
"pagination": {
"page": 1,
"limit": 10,
"total": 24,
"totalPages": 3,
"hasMore": true
}
},
"rateHistory": {
"items": [
{
"date": "2026-07-20T00:00:00.000Z",
"rate": 123,
"apy": 123,
"conversionRateApy": 123,
"timestamp": "2023-11-07T05:31:56Z"
}
],
"pagination": {
"page": 1,
"limit": 10,
"total": 24,
"totalPages": 3,
"hasMore": true
}
},
"spotPosition": {
"apy": 123,
"avgApy": 123,
"grossAPY": 123,
"inceptionApy": 123,
"netAPY": 123,
"cumulativeProfit": {
"asset": "<string>",
"decimals": 123,
"humanized": "<string>",
"symbol": "<string>",
"value": "1000000000000000000",
"valueUSD": "<string>",
"afterFees": "<string>"
},
"currentPosition": {
"asset": "<string>",
"decimals": 123,
"humanized": "<string>",
"symbol": "<string>",
"value": "1000000000000000000",
"valueUSD": "<string>",
"afterFees": "<string>"
},
"principal": {
"asset": "<string>",
"decimals": 123,
"humanized": "<string>",
"symbol": "<string>",
"value": "1000000000000000000",
"valueUSD": "<string>",
"afterFees": "<string>"
},
"profit": {
"asset": "<string>",
"decimals": 123,
"humanized": "<string>",
"symbol": "<string>",
"value": "1000000000000000000",
"valueUSD": "<string>",
"afterFees": "<string>"
},
"profitInUSD": 123,
"underlyingBalanceUSD": 123,
"realizedApy7d": 0.0412,
"realizedApy30d": 0.0388,
"currentPositionInShares": {
"asset": "<string>",
"decimals": 123,
"humanized": "<string>",
"symbol": "<string>",
"value": "1000000000000000000",
"valueUSD": "<string>"
},
"receiptBalance": {
"asset": "<string>",
"decimals": 123,
"humanized": "<string>",
"symbol": "<string>",
"value": "1000000000000000000",
"valueUSD": "<string>"
},
"underlyingBalance": {
"asset": "<string>",
"decimals": 123,
"humanized": "<string>",
"symbol": "<string>",
"value": "1000000000000000000",
"valueUSD": "<string>"
},
"availableToClaim": [
{}
],
"availableToWithdraw": [
{}
],
"requestedToLend": [
{}
],
"requestedToLendInShares": [
{}
],
"requestedToWithdraw": [
{}
],
"requestedToWithdrawInShares": [
{}
]
},
"strategy": {
"id": "Aave-USDC-polygon",
"slug": "Aave-USDC-polygon",
"asset": "<string>",
"assetDecimals": 6,
"assetName": "USDC",
"availableActions": [
"lend",
"withdraw"
],
"implementationSelector": "AavePolygon",
"network": "polygon",
"networkId": "137",
"protocol": "Aave",
"underlyingAsset": "<string>",
"underlyingDecimals": 123,
"isDefault": true,
"paused": true,
"startDate": "<string>",
"fee": "0",
"performanceFeeBps": "0",
"metadata": {},
"markupFeeBps": "0",
"marketData": {
"lastRefreshedAt": "2023-11-07T05:31:56Z",
"samples": [
{
"at": "2023-11-07T05:31:56Z",
"tvl": "<string>",
"tvlUsd": 123,
"priceUsd": 123
}
],
"sharePrice": 123,
"sharePriceChange24h": 123,
"sharePriceRefreshedAt": "2023-11-07T05:31:56Z",
"tvl": "<string>",
"tvlChange24h": 123,
"tvlUsd": 123,
"usdRate": 123
},
"protocolInfo": {
"name": "Aave",
"logo": "https://icons.llamao.fi/icons/protocols/aave"
},
"chain": {
"name": "polygon",
"id": 137,
"explorer": {
"name": "Polygonscan",
"url": "https://polygonscan.com"
},
"logo": "<string>"
},
"assetToken": {
"name": "USD Coin",
"address": "0x3c499c542cef5e3811e1192ce70d8cc03d5c3359",
"symbol": "USDC",
"decimals": 6,
"logo": "<string>"
},
"underlyingToken": {
"name": "USD Coin",
"address": "0x3c499c542cef5e3811e1192ce70d8cc03d5c3359",
"symbol": "USDC",
"decimals": 6,
"logo": "<string>"
},
"logourl": "<string>",
"category": [
"<string>"
]
}
}{
"error": {
"code": "QUOTE_NOT_FOUND",
"message": "Quote not found or expired"
}
}{
"error": {
"code": "QUOTE_NOT_FOUND",
"message": "Quote not found or expired"
}
}Authorizations
API key for authentication. Obtain from your Pods dashboard.
Path Parameters
Customer-owned wallet address
"0xb794F5eA0ba39494cE839613fffBA74279579268"
Strategy ID or slug
Query Parameters
7 <= x <= 365x > 01 <= x <= 500INITIAL, PENDING, FAILED, REFUNDED, SUCCESS createdAt, updatedAt, finishedAt asc, desc Response
Wallet-scoped strategy details retrieved
Enriched strategy detail scoped to a customer-owned wallet
Show child attributes
Show child attributes
Paginated wallet PnL embedded in a strategy detail response
Show child attributes
Show child attributes
Paginated strategy rate history embedded in a detail response
Show child attributes
Show child attributes
Wallet-scoped position metrics including balances and profit
Show child attributes
Show child attributes
Strategy metadata nested in detail and wallet responses (no APY fields at this level)
Show child attributes
Show child attributes
Was this page helpful?