{
"errors": [
{
"title": "Parameter is malformed",
"detail": "Some validation errors will be described here"
}
]
}
{
"errors": [
{
"title": "Unauthorized Error",
"detail": "The API key is invalid, please, make sure that you are using a valid key"
}
]
}
{
"errors": [
{
"title": "This request is not supported",
"detail": "This request cannot be processed, and retrying will not help. Please contact support if you need it enabled."
}
]
}
{
"errors": [
{
"title": "Too many requests",
"detail": "Your request had been throttled"
}
]
}
{
"errors": [
{
"title": "Service is temporarily unavailable",
"detail": "Please, retry later (check the Retry-After header)"
}
]
}
wallet sets
Get wallet set PnL
Realized and unrealized PnL across an EVM and Solana address combined, FIFO-based.
{
"errors": [
{
"title": "Parameter is malformed",
"detail": "Some validation errors will be described here"
}
]
}
{
"errors": [
{
"title": "Unauthorized Error",
"detail": "The API key is invalid, please, make sure that you are using a valid key"
}
]
}
{
"errors": [
{
"title": "This request is not supported",
"detail": "This request cannot be processed, and retrying will not help. Please contact support if you need it enabled."
}
]
}
{
"errors": [
{
"title": "Too many requests",
"detail": "Your request had been throttled"
}
]
}
{
"errors": [
{
"title": "Service is temporarily unavailable",
"detail": "Please, retry later (check the Retry-After header)"
}
]
}
Authorizations
Authorization
string
header
required
To test endpoints here, paste your API key from the Dashboard into the username field and leave the password empty.
Query Parameters
addresses
string[]
required
A list of wallet addresses forming a wallet set.
example: 0x42b9df65b219b3dd36ff330a4dd8f327a6ada990,8BH9pjtgyZDC4iAQH5ZiYDZ1MDWC98xki2V8NzqqKW3K
The set must contain at least one address and may include at most one address per supported chain type (currently EVM and Solana).
The order of addresses does not matter.
Returns 400 if an address in the set is not one Zerion tracks, such as a token contract, router
or exchange hot wallet.
Required array length: 1 - 2 elements
currency
enum<string>
default:usd
Denominated currency value of returned prices
Available options:
eth,
btc,
usd,
eur,
krw,
rub,
gbp,
aud,
cad,
inr,
jpy,
nzd,
try,
zar,
cny,
chf
filter[chain_ids]
string[]
Calculate PnL only for specified chains (comma-separated list). Only chains reporting both supports_transactions and supports_positions in the flags of GET /v1/chains/ are accepted here. Naming a chain that fails that gate returns 400 rather than an empty result, with detail reading chain <id> does not support PnL (for example chain bob does not support PnL). A chain of the wrong network family for the wallet set's addresses is rejected the same way, with does not support this wallet address type. When the filter is omitted, chains that fail the gate are left out of data silently, with no error and no meta signal.
Maximum array length: 25
Example:
["ethereum", "polygon"]
filter[fungible_ids]
string[]
Calculate PnL only for these fungible IDs (comma-separated list, up to 100).
With filter[fungible_ids] or filter[fungible_implementations], assets without a price are left out of the calculation instead of causing an error. The excluded assets are listed in the response metadata.
Maximum array length: 100
Maximum string length: 44
filter[fungible_implementations]
string[]
Calculate PnL only for these token implementations (comma-separated list of chain_id:address pairs, up to 100).
For example: base:0xae16c445d8a4082cecb49a9465e4dd5499df947d,ethereum:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48
With filter[fungible_ids] or filter[fungible_implementations], assets without a price are left out of the calculation instead of causing an error. The excluded assets are listed in the response metadata.
Maximum array length: 100
since
string
Count only sales since this time, as a Unix timestamp in milliseconds.
Note: PnL is pre-computed at standard marks (now, 1 day ago, 1 week ago, 1 month ago, 1 year ago, beginning of the year). Other values are supported only if fewer than 3,000 transactions sit between your timestamp and the nearest mark. Otherwise the request errors out.
Required string length: 13
Example:
"1688842525735"
till
string
Count only sales until this time, as a Unix timestamp in milliseconds.
Note: PnL is pre-computed at standard marks (now, 1 day ago, 1 week ago, 1 month ago, 1 year ago, beginning of the year). Other values are supported only if fewer than 3,000 transactions sit between your timestamp and the nearest mark. Otherwise the request errors out.
Required string length: 13
Example:
"1688842525735"
Response
Response for requested wallet set PnL
links
object
required
Show child attributes
data
object
required
Show child attributes
meta
object
Metadata about the PnL calculation (only present when assets were excluded from the calculation).
The structure matches the filter type used in the request:
When filtering by fungible_ids, the meta contains an excluded_fungible_ids array
When filtering by fungible_implementations, the meta contains an excluded_fungible_implementations array
If both filters are used, both fields may appear in the meta
Show child attributes
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Zerion API","description":"Zerion is an Ethereum and Solana wallet and developer platform focused on making blockchain data easy to use.","colors":{"primary":"#2461ED","light":"#2461ED","dark":"#2461ED"},"logo":{"light":"https://mintcdn.com/zerion-f99485ad/7LRY3a3Ldx_ROK8O/logo/light.svg?fit=max\u0026auto=format\u0026n=7LRY3a3Ldx_ROK8O\u0026q=85\u0026s=f451fe390bc92095f03123a8f7d40a7d","dark":"https://mintcdn.com/zerion-f99485ad/7LRY3a3Ldx_ROK8O/logo/dark.svg?fit=max\u0026auto=format\u0026n=7LRY3a3Ldx_ROK8O\u0026q=85\u0026s=4062b6f0d31d9101cb18ec6912f5260c"},"favicon":"https://mintcdn.com/zerion-f99485ad/CtpXHzWVHRggjdYr/images/favicon.png?fit=max\u0026auto=format\u0026n=CtpXHzWVHRggjdYr\u0026q=85\u0026s=ab9d008382caaa72b969c16793e48ba4","api":{"playground":{"display":"interactive"},"examples":{"defaults":"required","languages":["curl","python","javascript","go"],"prefill":true}},"navbar":{"primary":{"type":"button","label":"Dashboard","href":"https://dashboard.zerion.io"}},"footer":{"socials":{"x":"https://x.com/zerion","website":"https://zerion.io","linkedin":"https://www.linkedin.com/company/zeriontech"}},"fonts":{"heading":{"family":"Aeonik Pro","weight":700,"source":"fonts/AeonikPro-VF.woff2","format":"woff2"},"body":{"family":"Aeonik Pro","weight":400,"source":"fonts/AeonikPro-VF.woff2","format":"woff2"}},"integrations":{"ga4":{"measurementId":"G-KKSYM575R1"},"mixpanel":{"projectToken":"18a91a6fe2bdf70794ceb76c03433f19","region":"eu"},"posthog":{"apiKey":"phc_KpX0ph71XObDhlXXMKoAzXMtXYiNMMtDhuA8GvvudZI","apiHost":"https://eu.i.posthog.com"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"zerion-f99485ad","hasAudioNarration":false,"actualSubdomain":"zerion-f99485ad","customDomains":["developers.zerion.io"],"gitSource":{"type":"github","owner":"zeriontech","repo":"mintlify-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af73554e766df7985e6c739","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"default","tag":"API Reference","count":40},{"language":"default","tag":"REST API","count":40},{"language":"default","tag":"Home","count":26},{"language":"default","tag":"subscriptions to transactions","count":13},{"language":"default","tag":"Get started","count":9},{"language":"default","tag":"Core concepts","count":9},{"language":"default","tag":"Recipes","count":9},{"language":"default","tag":"Guides","count":9},{"language":"default","tag":"Migrating to Zerion API","count":8},{"language":"default","tag":"wallets","count":8}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"global.css","href":"/_mintlify/custom/zerion-f99485ad/ac09b7d78b671ff7/global.css"},{"filePath":"api-reference.css","content":".method-pill,.method-nav-pill>span{--m: #16a34a;color:var(--m)!important;background:color-mix(in srgb, var(--m) 12%, transparent)!important}:is(.method-pill,.method-nav-pill>span):is([class*=\"blue\"]){--m: #2461ed}:is(.method-pill,.method-nav-pill>span):is([class*=\"orange\"],[class*=\"yellow\"],[class*=\"amber\"]){--m: #ea580c}:is(.method-pill,.method-nav-pill>span):is([class*=\"red\"]){--m: #ef4444}:is(.method-pill,.method-nav-pill>span):is([class*=\"purple\"],[class*=\"violet\"]){--m: #8b5cf6}.dark :is(.method-pill,.method-nav-pill>span){--m: #4ade80}.dark :is(.method-pill,.method-nav-pill>span):is([class*=\"blue\"]){--m: #6b9bff}.dark :is(.method-pill,.method-nav-pill>span):is([class*=\"orange\"],[class*=\"yellow\"],[class*=\"amber\"]){--m: #fb923c}.dark :is(.method-pill,.method-nav-pill>span):is([class*=\"red\"]){--m: #f87171}.method-nav-pill{width:2.5rem!important}.method-nav-pill>span{min-width:2.25rem;padding:0.125rem 0!important;text-align:center;font-size:0.5625rem!important;letter-spacing:0.04em;border-radius:0.375rem!important}#navigation-items button[aria-expanded]>div:first-child>span{display:inline-block}#navigation-items button[aria-expanded]>div:first-child>span::first-letter{text-transform:uppercase}.method-pill{padding:0.125rem 0.5rem!important;font-size:0.75rem!important;letter-spacing:0.04em}.method-pill+div [class*=\"2AB673\"]{color:#2461ed!important;background:rgba(36, 97, 237, 0.07)!important;border:1px dashed rgba(36, 97, 237, 0.35)!important;padding:0 0.3rem!important}.dark .method-pill+div [class*=\"2AB673\"]{color:#8fb3ff!important;background:rgba(107, 155, 255, 0.1)!important;border-color:rgba(107, 155, 255, 0.35)!important}.tryit-button{border-radius:0.75rem!important;box-shadow:0 1px 2px rgba(36, 97, 237, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.15);transition:background-color 0.15s ease, transform 0.15s ease}.tryit-button:hover{opacity:1!important;background:#1d4fd0!important}.tryit-button:active{transform:translateY(1px)}.api-section-heading-title{font-size:0.75rem!important;font-weight:600!important;text-transform:uppercase;letter-spacing:0.06em;color:#71717a!important}.dark .api-section-heading-title{color:#a1a1aa!important}.primitive-param-field>div,.expandable-content .primitive-param-field>div{padding-top:1.25rem!important;padding-bottom:1.25rem!important}[data-component-part=\"field-name\"]{color:#0a0a0a!important;font-weight:600!important}.dark [data-component-part=\"field-name\"]{color:#fff!important}[data-component-part=\"field-info-pill\"]{padding:0.0625rem 0.45rem!important;border-radius:0.375rem!important;color:#52525b!important;background:#f4f4f5!important;font-weight:500!important}.dark [data-component-part=\"field-info-pill\"]{color:#d4d4d8!important;background:rgba(255, 255, 255, 0.06)!important}[data-component-part=\"field-required-pill\"]{padding:0.0625rem 0!important;background:none!important;color:#ea580c!important;font-weight:600!important}.dark [data-component-part=\"field-required-pill\"]{color:#fb923c!important}[data-component-part=\"expandable-button\"]{border-radius:999px!important;transition:background-color 0.15s ease, border-color 0.15s ease}[data-component-part=\"expandable-button\"]:hover{border-color:rgba(36, 97, 237, 0.35)!important}[data-component-part=\"expandable-content\"]{border-radius:0.875rem!important}#content-side-layout [data-component-part=\"code-block-root\"],#content-side-layout .code-block{border-radius:1rem!important;border-color:#ececef!important;box-shadow:0 1px 2px rgba(10, 10, 10, 0.04), 0 8px 24px -12px rgba(10, 10, 10, 0.08)}.dark #content-side-layout [data-component-part=\"code-block-root\"],.dark #content-side-layout .code-block{border-color:rgba(255, 255, 255, 0.08)!important;box-shadow:none}[data-status]{--s: #16a34a}[data-status^=\"3\"]{--s: #2461ed}[data-status^=\"4\"]{--s: #ea580c}[data-status^=\"5\"]{--s: #ef4444}.dark [data-status]{--s: #4ade80}.dark [data-status^=\"3\"]{--s: #6b9bff}.dark [data-status^=\"4\"]{--s: #fb923c}.dark [data-status^=\"5\"]{--s: #f87171}[data-component-part=\"code-group-tab-bar\"] button[data-status]>div:first-child{gap:0.375rem}[data-component-part=\"code-group-tab-bar\"] button[data-status]>div:first-child::before{content:\"\";width:0.375rem;height:0.375rem;border-radius:50%;background:var(--s)}[data-component-part=\"code-group-tab-bar\"] button[data-status][data-state=\"active\"]{color:var(--s)!important}[data-component-part=\"code-group-tab-bar\"] button[data-status][data-state=\"active\"]>div:last-child{background:var(--s)!important}@media (prefers-reduced-motion: reduce){.tryit-button,[data-component-part=\"expandable-button\"]{transition:none}}@media (min-width: 1280px){body:has(.method-pill) #toc-fallback{display:none!important}html body:has(.method-pill):has(#toc-fallback) #page-context-menu.ml-auto{display:flex!important}}"},{"filePath":"changelog.css","content":"[data-tag]{--t: #71717a}[data-tag=\"feature\"]{--t: #16a34a}[data-tag=\"improvement\"]{--t: #2461ed}[data-tag=\"change\"]{--t: #8b5cf6}[data-tag=\"fix\"]{--t: #ea580c}[data-tag=\"breaking\"]{--t: #ef4444}[data-tag=\"deprecation\"]{--t: #ca8a04}.dark [data-tag=\"docs\"]{--t: #a1a1aa}.dark [data-tag=\"improvement\"]{--t: #6b9bff}.dark [data-tag=\"change\"]{--t: #a78bfa}.update-container{padding-top:2.25rem!important;padding-bottom:2.25rem!important}.update-container [data-component-part=\"update-label\"]{padding:0!important;background:none!important;color:#0a0a0a!important;font-size:0.9375rem!important;font-weight:600!important;letter-spacing:-0.01em;cursor:pointer}.dark .update-container [data-component-part=\"update-label\"]{color:#fff!important}.update-container [data-component-part=\"update-description\"]{margin-top:0.4rem!important;padding:0!important;color:#71717a!important;font-size:0.8125rem!important;line-height:1.4}.dark .update-container [data-component-part=\"update-description\"]{color:#a1a1aa!important}.update-container [data-component-part=\"update-tag-list\"]{order:3;margin-top:0.75rem!important;padding:0!important;gap:0.375rem!important}.update-container [data-component-part=\"update-tag\"],#changelog-filters-content button{display:inline-flex!important;align-items:center;gap:0.375rem;border-radius:999px!important;font-weight:500!important;line-height:1.4}.update-container [data-component-part=\"update-tag\"]{padding:0.125rem 0.55rem!important;font-size:0.75rem!important;color:var(--t)!important;background:color-mix(in srgb, var(--t) 10%, transparent)}.update-container [data-component-part=\"update-tag\"]::before,#changelog-filters-content button::before{content:\"\";width:0.375rem;height:0.375rem;border-radius:50%;background:var(--t);flex-shrink:0}#changelog-filters-content button{padding:0.25rem 0.75rem!important;font-size:0.8125rem!important;color:#3f3f46!important;background:#fff!important;border:1px solid #e4e4e7;transition:border-color 0.15s ease, background-color 0.15s ease, color 0.15s ease}#changelog-filters-content button:hover{border-color:color-mix(in srgb, var(--t) 45%, transparent)}#changelog-filters-content button.bg-primary{color:var(--t)!important;background:color-mix(in srgb, var(--t) 10%, transparent)!important;border-color:color-mix(in srgb, var(--t) 45%, transparent)}.dark #changelog-filters-content button{color:#d4d4d8!important;background:transparent!important;border-color:rgba(255, 255, 255, 0.1)}.dark #changelog-filters-content button.bg-primary{color:var(--t)!important;background:color-mix(in srgb, var(--t) 14%, transparent)!important}html[data-changelog] #toc-fallback .toc-actions{top:calc(9.5rem + var(--cl-filters-h, 9rem) + 1rem)!important;padding-top:1rem!important;border-top:1px solid #ececef!important}.dark html[data-changelog] #toc-fallback .toc-actions,html.dark[data-changelog] #toc-fallback .toc-actions{border-top-color:rgba(255, 255, 255, 0.08)!important}.update-container [data-component-part=\"update-content\"]>h2:first-child{margin-top:0!important;font-size:1.375rem;line-height:1.35;letter-spacing:-0.02em}.update-container.cl-latest [data-component-part=\"update-tag-list\"]::after{content:\"Latest\";padding:0.0625rem 0.5rem;border-radius:999px;font-size:0.6875rem;font-weight:600;letter-spacing:0.02em;color:#fff;background:#2461ed}[data-component-part=\"update-content\"] .cl-endpoints-label{margin-bottom:0.5rem!important;font-size:0.75rem;text-transform:uppercase;letter-spacing:0.06em;color:#71717a}.dark [data-component-part=\"update-content\"] .cl-endpoints-label{color:#a1a1aa}[data-component-part=\"update-content\"] .cl-endpoints-label strong{font-weight:600;color:inherit}#content [data-component-part=\"update-content\"] ul.cl-endpoints{display:flex;flex-direction:column;gap:0.375rem;margin:0 0 1.25rem!important;padding:0!important;list-style:none!important}#content [data-component-part=\"update-content\"] ul.cl-endpoints>li{margin:0!important;padding:0!important}#content [data-component-part=\"update-content\"] ul.cl-endpoints>li::marker,#content [data-component-part=\"update-content\"] ul.cl-endpoints>li::before{content:none!important;display:none!important}#content [data-component-part=\"update-content\"] .cl-endpoint>code{display:inline-flex!important;align-items:center;gap:0.625rem;padding:0.3rem 0.75rem 0.3rem 0.3rem!important;border-radius:0.625rem!important;border:1px solid #ececef!important;background:#fafafa!important;color:#27272a!important;-webkit-text-fill-color:currentColor;font-size:0.8125rem!important}.dark #content [data-component-part=\"update-content\"] .cl-endpoint>code{border-color:rgba(255, 255, 255, 0.08)!important;background:rgba(255, 255, 255, 0.03)!important;color:#e4e4e7!important;-webkit-text-fill-color:currentColor}.cl-method{--m: #16a34a;min-width:3.25rem;padding:0.0625rem 0.4rem;border-radius:0.375rem;text-align:center;font-size:0.6875rem;font-weight:700;letter-spacing:0.02em;color:var(--m);-webkit-text-fill-color:var(--m);background:color-mix(in srgb, var(--m) 12%, transparent)}.cl-method[data-method=\"post\"]{--m: #2461ed}.cl-method[data-method=\"put\"],.cl-method[data-method=\"patch\"]{--m: #ea580c}.cl-method[data-method=\"delete\"]{--m: #ef4444}.dark .cl-method[data-method=\"post\"]{--m: #6b9bff}@media (min-width: 1024px){.update-container{gap:2.5rem!important}.update-container>div:last-child{position:relative;padding-left:2.5rem!important;padding-bottom:0.25rem;margin-top:-2.25rem;margin-bottom:-2.25rem;padding-top:2.25rem;overflow:visible!important;border-left:1px solid #ececef}.dark .update-container>div:last-child{border-left-color:rgba(255, 255, 255, 0.08)}.update-container>div:last-child>[data-component-part=\"update-content\"]{padding-bottom:2.25rem;overflow:hidden}.update-container>div:last-child::before{content:\"\";position:absolute;left:-0.375rem;top:calc(2.25rem + 0.55rem);width:0.75rem;height:0.75rem;border-radius:50%;background:#fff;border:2px solid #d4d4d8;transition:border-color 0.2s ease, box-shadow 0.2s ease}.dark .update-container>div:last-child::before{background:#0b0b0c;border-color:#52525b}.update-container:hover>div:last-child::before,.update-container.cl-latest>div:last-child::before{border-color:#2461ed;box-shadow:0 0 0 4px rgba(36, 97, 237, 0.12)}.update-container.cl-latest>div:last-child::before{background:#2461ed}}@media (max-width: 1023px){.update-container+.update-container{border-top:1px solid #ececef}.dark .update-container+.update-container{border-top-color:rgba(255, 255, 255, 0.08)}.update-container>div:first-child{flex-direction:row!important;flex-wrap:wrap;align-items:center!important;gap:0.5rem 0.75rem}.update-container [data-component-part=\"update-tag-list\"],.update-container [data-component-part=\"update-description\"]{margin-top:0!important}.update-container [data-component-part=\"update-description\"]{display:none}}@media (prefers-reduced-motion: reduce){.update-container>div:last-child::before,#changelog-filters-content button{transition:none}}html[data-changelog] #content-side-layout{pointer-events:none}html[data-changelog] #changelog-filters{pointer-events:auto}#changelog-filters-content button:not([data-tag])::before,.update-container [data-component-part=\"update-tag\"]:not([data-tag])::before{opacity:0}[data-component-part=\"update-content\"] :is(h2,h3)>div.absolute:has(>a[aria-label=\"Navigate to header\"]){display:none}"},{"filePath":"migrate.css","content":".mg-card{margin:1rem 0 1.5rem;border:1px solid #ececef;border-radius:1.125rem;overflow:hidden;background:#fff}.dark .mg-card{border-color:rgba(255, 255, 255, 0.08);background:transparent}.mg-band{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;background:radial-gradient(1px 1px at 1px 1px, rgba(10, 10, 10, 0.07) 1px, transparent 0) 0 0 / 16px 16px,\n linear-gradient(90deg, #fafafb 0%, #eef2fb 100%);border-bottom:1px solid #f0f0f2}.dark .mg-band{background:radial-gradient(1px 1px at 1px 1px, rgba(255, 255, 255, 0.06) 1px, transparent 0) 0 0 / 16px 16px,\n linear-gradient(90deg, #0d0f16 0%, #0d1530 100%);border-bottom-color:rgba(255, 255, 255, 0.06)}.mg-logos{display:flex;flex-shrink:0}.mg-logo{width:2rem;height:2rem;margin-left:-0.25rem;border-radius:999px;background:#fff;box-shadow:0 0 0 2px #f5f6fa;overflow:hidden;opacity:0.85;animation:mg-lit 24s ease-in-out infinite}.mg-logo:first-child{margin-left:0}.dark .mg-logo{box-shadow:0 0 0 2px #0e111b}.mg-logo img{display:block;width:100%;height:100%;object-fit:cover;margin:0!important;border-radius:0!important}@keyframes mg-lit{0%,14%,100%{opacity:0.85}6%,8%{opacity:1}}.mg-flow{position:relative;flex:1;height:2px;min-width:3rem;border-radius:2px;background:repeating-linear-gradient(90deg, rgba(36, 97, 237, 0.25) 0 6px, transparent 6px 11px);overflow:hidden}.mg-beam{position:absolute;top:0;left:0;width:30%;height:100%;background:linear-gradient(90deg, transparent, rgba(36, 97, 237, 0.4));animation:mg-beam 7s ease-in-out infinite}@keyframes mg-beam{from{transform:translateX(-100%)}to{transform:translateX(340%)}}.mg-z{flex-shrink:0;width:2.5rem;height:2.5rem;border-radius:0.75rem;background:#2461ED;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px -8px rgba(36, 97, 237, 0.6)}.mg-z svg{width:1.3rem;height:1.3rem;fill:#fff}.mg-steps{display:flex;flex-direction:column;gap:0.5rem;padding:1rem 1.25rem 1.125rem}.mg-step{display:flex;align-items:center;gap:0.75rem}.mg-num{flex-shrink:0;width:1.4rem;height:1.4rem;border-radius:999px;background:rgba(36, 97, 237, 0.1);color:#2461ED;font-size:0.75rem;font-weight:600;display:flex;align-items:center;justify-content:center}.dark .mg-num{background:rgba(107, 155, 255, 0.15);color:#9dbcff}.mg-label{flex-shrink:0;width:8.5rem;font-family:\"Aeonik Pro Var\", \"Aeonik Pro\", sans-serif;font-weight:540;font-size:0.9375rem}.mg-copy{flex:1;min-width:0;display:flex;align-items:center;gap:0.5rem;padding:0.5rem 0.5rem 0.5rem 0.75rem;border-radius:0.65rem;background:#f4f4f5;border:1px solid transparent;color:#18181b;font-size:0.875rem;text-align:left;cursor:pointer;transition:border-color 0.15s ease, background-color 0.15s ease}.mg-copy:hover{border-color:rgba(36, 97, 237, 0.35);background:#f7f8fc}.dark .mg-copy{background:rgba(255, 255, 255, 0.05);color:#e4e4e7}.dark .mg-copy:hover{border-color:rgba(107, 155, 255, 0.4)}.mg-copy.code{font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;font-size:0.8125rem}.mg-prompt{color:#2461ED}.dark .mg-prompt{color:#6b9bff}.mg-text{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mg-icon{flex-shrink:0;width:1.6rem;height:1.6rem;border-radius:0.45rem;display:flex;align-items:center;justify-content:center;color:#71717a}.mg-icon.done{color:#16a34a}.mg-icon svg{width:0.95rem;height:0.95rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}@media (max-width: 640px){.mg-step{flex-wrap:wrap}.mg-label{width:auto}.mg-copy{flex-basis:100%}.mg-logo:nth-child(n+6){display:none}}@media (prefers-reduced-motion: reduce){.mg-logo,.mg-beam{animation:none}.mg-logo{opacity:1;filter:none}}"}],"page":{"pagePath":"api-reference/wallet-sets/get-wallet-set-pnl","slug":"/api-reference/wallet-sets/get-wallet-set-pnl","pageMetadata":{"title":"Get wallet set PnL","description":"Realized and unrealized PnL across an EVM and Solana address combined, FIFO-based.","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/wallet-sets/pnl","href":"/api-reference/wallet-sets/get-wallet-set-pnl","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Realized and unrealized PnL across an EVM and Solana address combined, FIFO-based.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Get wallet set PnL","description":"Realized and unrealized PnL across an EVM and Solana address combined, FIFO-based.","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/wallet-sets/pnl","href":"/api-reference/wallet-sets/get-wallet-set-pnl","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/zerion-f99485ad/f7d9c934821323b5/api-reference.js","/_mintlify/custom/zerion-f99485ad/4972e5c7bcb8428c/changelog.js","/_mintlify/custom/zerion-f99485ad/04f750f612fd0882/toc-actions.js"],"openApiReferenceData":{"operation":{"operationId":"getWalletSetPNL","summary":"Get wallet set PnL","description":"Realized and unrealized PnL across an EVM and Solana address combined, FIFO-based.","x-mint":{"metadata":{"description":"Realized and unrealized PnL across an EVM and Solana address combined, FIFO-based."}},"tags":["wallet sets"],"parameters":["c397aedc-1085-4a90-8b2e-4090d0568aeb","b799465b-456c-4f69-9b1e-229b533e8cab","3f467ec2-fe78-4b74-95bc-c9b543baa2c4","e06d28e1-7a68-455c-a6ed-f1f6233b3b2c","e1103314-dd7d-40a6-9002-f408cd0f19ee","f3b23e0f-87e0-4f46-b5b7-f8e650646054","ddf35106-90fa-44b3-a2a7-53e2dd2c716b"],"responses":{"200":"3b55b281-fadf-4c63-b3fc-3ad68919e8a6","400":"11e5e554-aa08-400e-a49b-dbcd12be94f0","401":"3e6d0121-4d40-4e5c-8435-b9ceca3cc009","422":"593bd900-36fb-4130-82be-d9949cea9698","429":"da598e8a-6598-4575-a8fd-9df54a1f5b51","503":"d773a0cc-405d-497a-9471-2814a5121e1d"},"method":"get","type":"path","servers":["94eb7a32-0744-4039-8739-9fb48f86c6e3"],"security":["d512cd8c-d692-4af6-8a9b-2e6b7c7a03a5"],"path":"/v1/wallet-sets/pnl","baseUrlOptions":["https://api.zerion.io"],"title":"Get wallet set PnL","codeSamples":[],"requestExampleLanguages":["bash","python","javascript","go"],"requiredOnlyExamples":true,"requestExampleType":"generated","responseExampleType":"generated","prefillPlaygroundWithExample":true,"prefillPlaygroundExamples":[]},"dependencies":{"parameters":{"c397aedc-1085-4a90-8b2e-4090d0568aeb":{"name":"addresses","in":"query","required":true,"style":"form","explode":false,"description":"A list of wallet addresses forming a wallet set.\nexample: 0x42b9df65b219b3dd36ff330a4dd8f327a6ada990,8BH9pjtgyZDC4iAQH5ZiYDZ1MDWC98xki2V8NzqqKW3K\n\nThe set must contain at least one address and may include at most one address per supported chain type (currently EVM and Solana).\nThe order of addresses does not matter.\n\nReturns 400 if an address in the set is not one Zerion tracks, such as a token contract, router\nor exchange hot wallet.\n","schema":{"type":"array","minItems":1,"maxItems":2,"items":{"type":"string","uniqueKey":"items.[INDEX]","typeLabel":"string"},"isRequired":true,"description":"A list of wallet addresses forming a wallet set.\nexample: 0x42b9df65b219b3dd36ff330a4dd8f327a6ada990,8BH9pjtgyZDC4iAQH5ZiYDZ1MDWC98xki2V8NzqqKW3K\n\nThe set must contain at least one address and may include at most one address per supported chain type (currently EVM and Solana).\nThe order of addresses does not matter.\n\nReturns 400 if an address in the set is not one Zerion tracks, such as a token contract, router\nor exchange hot wallet.\n","uniqueKey":"","typeLabel":"string[]"}},"b799465b-456c-4f69-9b1e-229b533e8cab":{"name":"currency","in":"query","required":false,"description":"Denominated currency value of returned prices","schema":{"type":"string","default":"usd","enum":["eth","btc","usd","eur","krw","rub","gbp","aud","cad","inr","jpy","nzd","try","zar","cny","chf"],"isRequired":false,"description":"Denominated currency value of returned prices","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"3f467ec2-fe78-4b74-95bc-c9b543baa2c4":{"name":"filter[chain_ids]","in":"query","style":"form","explode":false,"description":"Calculate PnL only for specified chains (comma-separated list). Only chains reporting both `supports_transactions` and `supports_positions` in the `flags` of `GET /v1/chains/` are accepted here. Naming a chain that fails that gate returns `400` rather than an empty result, with `detail` reading `chain \u003cid> does not support PnL` (for example `chain bob does not support PnL`). A chain of the wrong network family for the wallet set's addresses is rejected the same way, with `does not support this wallet address type`. When the filter is omitted, chains that fail the gate are left out of `data` silently, with no error and no `meta` signal.","schema":{"type":"array","example":["ethereum","polygon"],"maxItems":25,"items":{"type":"string","uniqueKey":"items.[INDEX]","typeLabel":"string"},"description":"Calculate PnL only for specified chains (comma-separated list). Only chains reporting both `supports_transactions` and `supports_positions` in the `flags` of `GET /v1/chains/` are accepted here. Naming a chain that fails that gate returns `400` rather than an empty result, with `detail` reading `chain \u003cid> does not support PnL` (for example `chain bob does not support PnL`). A chain of the wrong network family for the wallet set's addresses is rejected the same way, with `does not support this wallet address type`. When the filter is omitted, chains that fail the gate are left out of `data` silently, with no error and no `meta` signal.","uniqueKey":"","typeLabel":"string[]"}},"e06d28e1-7a68-455c-a6ed-f1f6233b3b2c":{"name":"filter[fungible_ids]","in":"query","style":"form","explode":false,"description":"Calculate PnL only for these fungible IDs (comma-separated list, up to 100).\n\nWith `filter[fungible_ids]` or `filter[fungible_implementations]`, assets without a price are left out of the calculation instead of causing an error. The excluded assets are listed in the response metadata.\n","schema":{"type":"array","maxItems":100,"items":{"type":"string","maxLength":44,"uniqueKey":"items.[INDEX]","typeLabel":"string"},"description":"Calculate PnL only for these fungible IDs (comma-separated list, up to 100).\n\nWith `filter[fungible_ids]` or `filter[fungible_implementations]`, assets without a price are left out of the calculation instead of causing an error. The excluded assets are listed in the response metadata.\n","uniqueKey":"","typeLabel":"string[]"}},"e1103314-dd7d-40a6-9002-f408cd0f19ee":{"name":"filter[fungible_implementations]","in":"query","style":"form","explode":false,"description":"Calculate PnL only for these token implementations (comma-separated list of `chain_id:address` pairs, up to 100).\n\nFor example: `base:0xae16c445d8a4082cecb49a9465e4dd5499df947d,ethereum:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48`\n\nWith `filter[fungible_ids]` or `filter[fungible_implementations]`, assets without a price are left out of the calculation instead of causing an error. The excluded assets are listed in the response metadata.\n","schema":{"type":"array","maxItems":100,"items":{"type":"string","uniqueKey":"items.[INDEX]","typeLabel":"string"},"description":"Calculate PnL only for these token implementations (comma-separated list of `chain_id:address` pairs, up to 100).\n\nFor example: `base:0xae16c445d8a4082cecb49a9465e4dd5499df947d,ethereum:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48`\n\nWith `filter[fungible_ids]` or `filter[fungible_implementations]`, assets without a price are left out of the calculation instead of causing an error. The excluded assets are listed in the response metadata.\n","uniqueKey":"","typeLabel":"string[]"}},"f3b23e0f-87e0-4f46-b5b7-f8e650646054":{"name":"since","in":"query","required":false,"description":"Count only sales since this time, as a Unix timestamp in milliseconds.\n\n**Note:** PnL is pre-computed at standard marks (`now`, `1 day ago`, `1 week ago`, `1 month ago`, `1 year ago`, `beginning of the year`). Other values are supported only if fewer than 3,000 transactions sit between your timestamp and the nearest mark. Otherwise the request errors out.\n","schema":{"type":"string","example":"1688842525735","minLength":13,"maxLength":13,"isRequired":false,"description":"Count only sales since this time, as a Unix timestamp in milliseconds.\n\n**Note:** PnL is pre-computed at standard marks (`now`, `1 day ago`, `1 week ago`, `1 month ago`, `1 year ago`, `beginning of the year`). Other values are supported only if fewer than 3,000 transactions sit between your timestamp and the nearest mark. Otherwise the request errors out.\n","uniqueKey":"","typeLabel":"string"}},"ddf35106-90fa-44b3-a2a7-53e2dd2c716b":{"name":"till","in":"query","required":false,"description":"Count only sales until this time, as a Unix timestamp in milliseconds.\n\n**Note:** PnL is pre-computed at standard marks (`now`, `1 day ago`, `1 week ago`, `1 month ago`, `1 year ago`, `beginning of the year`). Other values are supported only if fewer than 3,000 transactions sit between your timestamp and the nearest mark. Otherwise the request errors out.\n","schema":{"type":"string","example":"1688842525735","minLength":13,"maxLength":13,"isRequired":false,"description":"Count only sales until this time, as a Unix timestamp in milliseconds.\n\n**Note:** PnL is pre-computed at standard marks (`now`, `1 day ago`, `1 week ago`, `1 month ago`, `1 year ago`, `beginning of the year`). Other values are supported only if fewer than 3,000 transactions sit between your timestamp and the nearest mark. Otherwise the request errors out.\n","uniqueKey":"","typeLabel":"string"}}},"responses":{"3b55b281-fadf-4c63-b3fc-3ad68919e8a6":{"description":"Response for requested wallet set PnL","content":{"application/json":{"schema":{"type":"object","required":["links","data"],"properties":{"links":{"type":"object","required":["self"],"properties":{"self":{"type":"string","format":"url","example":"https://api.zerion.io/v1/wallet-sets/pnl?addresses=0x42b9df65b219b3dd36ff330a4dd8f327a6ada990%2C8BH9pjtgyZDC4iAQH5ZiYDZ1MDWC98xki2V8NzqqKW3K\u0026currency=eth\u0026filter%5Bchain_ids%5D=ethereum%2Csolana\u0026filter%5Bfungible_ids%5D=11111111111111111111111111111111%2Ceth","isRequired":true,"uniqueKey":"links.self","typeLabel":"string\u003curl>"}},"isRequired":true,"uniqueKey":"links","typeLabel":"object"},"data":{"type":"object","required":["type","id","attributes"],"properties":{"type":{"type":"string","description":"Resource type","enum":["pnl"],"isRequired":true,"uniqueKey":"data.type","typeLabel":"enum\u003cstring>"},"id":{"type":"string","description":"Wallet set PNL unique ID","example":"0x42b9df65b219b3dd36ff330a4dd8f327a6ada990,8BH9pjtgyZDC4iAQH5ZiYDZ1MDWC98xki2V8NzqqKW3K","isRequired":true,"uniqueKey":"data.id","typeLabel":"string"},"attributes":{"type":"object","properties":{"total_gain":{"type":"number","format":"float","description":"Total Gain.\n\nThe sum of realized and unrealized gains across all fungible assets, calculated using the FIFO (First In, First Out) method.\n","example":-637.8173517,"uniqueKey":"data.attributes.total_gain","typeLabel":"number\u003cfloat>"},"realized_gain":{"type":"number","format":"float","description":"Realized Gain.\n\nThe gain (or loss) realized from the sale of fungible assets, calculated using the FIFO (First In, First Out) method (the\nearliest purchases are matched with the earliest sales).\nThe cost basis of the oldest assets is subtracted from the sale proceeds.\n","example":-655.3618983,"uniqueKey":"data.attributes.realized_gain","typeLabel":"number\u003cfloat>"},"unrealized_gain":{"type":"number","format":"float","description":"Unrealized Gain.\n\nThe potential gain (or loss) on unsold fungible assets, calculated as the difference between their current market value and cost basis using the FIFO method (the\nearliest purchases are matched with the earliest sales).\n","example":17.5445466,"uniqueKey":"data.attributes.unrealized_gain","typeLabel":"number\u003cfloat>"},"relative_total_gain_percentage":{"type":"number","format":"float","description":"Relative Total Gain Percentage.\n\nThe percentage return on total investment, combining both realized and unrealized gains.\n","example":-11.38,"uniqueKey":"data.attributes.relative_total_gain_percentage","typeLabel":"number\u003cfloat>"},"relative_realized_gain_percentage":{"type":"number","format":"float","description":"Relative Realized Gain Percentage.\n\nThe percentage return on realized trades, calculated as realized gain divided by realized cost basis.\n","example":-15.15,"uniqueKey":"data.attributes.relative_realized_gain_percentage","typeLabel":"number\u003cfloat>"},"relative_unrealized_gain_percentage":{"type":"number","format":"float","description":"Relative Unrealized Gain Percentage.\n\nThe percentage return on open positions, calculated as unrealized gain divided by the current cost basis of held assets.\n","example":-0.19,"uniqueKey":"data.attributes.relative_unrealized_gain_percentage","typeLabel":"number\u003cfloat>"},"total_fee":{"type":"number","format":"float","description":"Total Fees Paid.\n\nThe sum of all transaction fees associated with asset trades.\n","example":281.9088917,"uniqueKey":"data.attributes.total_fee","typeLabel":"number\u003cfloat>"},"total_invested":{"type":"number","format":"float","description":"Total Invested Amount.\n\nThe total amount invested in fungible assets (sum of all buy transactions), calculated using the FIFO method.\n","example":701.2,"uniqueKey":"data.attributes.total_invested","typeLabel":"number\u003cfloat>"},"realized_cost_basis":{"type":"number","format":"float","description":"Realized Cost Basis.\n\nThe cost basis of closed (sold) positions, calculated using the FIFO method.\n","example":655.36,"uniqueKey":"data.attributes.realized_cost_basis","typeLabel":"number\u003cfloat>"},"net_invested":{"type":"number","format":"float","description":"Net Invested Amount.\n\nThe total amount invested in fungible assets that have not been sold, calculated using the FIFO method (the earliest purchases are\nmatched with the earliest sales).\n","example":45.84218703,"uniqueKey":"data.attributes.net_invested","typeLabel":"number\u003cfloat>"},"received_external":{"type":"number","format":"float","description":"Received Amount from Other Wallets.\n\nThe cumulative value of all fungible assets received from other wallets.\n\nNote: This value does not include amounts traded internally within the wallet but does include `received_for_nfts`.\n","example":133971.2931,"uniqueKey":"data.attributes.received_external","typeLabel":"number\u003cfloat>"},"sent_external":{"type":"number","format":"float","description":"Sent Amount to Other Wallets.\n\nThe cumulative value of all fungible assets sent to other wallets.\n\nNote: This value does not include amounts traded internally within the wallet but does include `sent_for_nfts`.\n","example":133270.089,"uniqueKey":"data.attributes.sent_external","typeLabel":"number\u003cfloat>"},"sent_for_nfts":{"type":"number","format":"float","description":"Sent Amount for NFTs.\n\nThe cumulative value of all fungible assets sent in transactions where the wallet receives NFTs.\n","example":133971.2931,"uniqueKey":"data.attributes.sent_for_nfts","typeLabel":"number\u003cfloat>"},"received_for_nfts":{"type":"number","format":"float","description":"Received Amount for NFTs.\n\nThe cumulative value of all fungible assets received in transactions where the wallet sends NFTs.\n","example":133971.2931,"uniqueKey":"data.attributes.received_for_nfts","typeLabel":"number\u003cfloat>"},"breakdown":{"type":"object","description":"Detailed PnL breakdown by individual fungibles.\nContains per-fungible statistics keyed either by fungible ID or by implementation (chain:address pair).\nOnly returned when the request includes filters for fungibles (fungible_ids or fungible_implementations).\n","properties":{"by_id":{"type":"object","description":"PnL statistics broken down by fungible ID.","additionalProperties":{"type":"object","description":"PnL statistics for an individual fungible.","properties":{"average_buy_price":{"type":"number","format":"float","description":"The average price at which the fungible was purchased.","example":1258.8,"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties.average_buy_price","typeLabel":"number\u003cfloat>"},"average_sell_price":{"type":"number","format":"float","description":"The average price at which the fungible was sold.","example":1224.96,"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties.average_sell_price","typeLabel":"number\u003cfloat>"},"total_gain":{"type":"number","format":"float","description":"The sum of realized and unrealized gains for this fungible.","example":-6900.85,"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties.total_gain","typeLabel":"number\u003cfloat>"},"realized_gain":{"type":"number","format":"float","description":"The gain (or loss) realized from selling this fungible, calculated using the FIFO method.","example":-6871.21,"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties.realized_gain","typeLabel":"number\u003cfloat>"},"unrealized_gain":{"type":"number","format":"float","description":"The potential gain (or loss) on unsold holdings of this fungible.","example":-29.64,"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties.unrealized_gain","typeLabel":"number\u003cfloat>"},"relative_total_gain_percentage":{"type":"number","format":"float","description":"The percentage return on total investment for this fungible.","example":-11.38,"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties.relative_total_gain_percentage","typeLabel":"number\u003cfloat>"},"relative_realized_gain_percentage":{"type":"number","format":"float","description":"The percentage return on realized trades for this fungible.","example":-15.15,"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties.relative_realized_gain_percentage","typeLabel":"number\u003cfloat>"},"relative_unrealized_gain_percentage":{"type":"number","format":"float","description":"The percentage return on open positions for this fungible.","example":-0.19,"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties.relative_unrealized_gain_percentage","typeLabel":"number\u003cfloat>"},"total_fee":{"type":"number","format":"float","description":"The sum of all transaction fees associated with this fungible.","example":4679.93,"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties.total_fee","typeLabel":"number\u003cfloat>"},"total_invested":{"type":"number","format":"float","description":"The total amount invested in this fungible (sum of all buy transactions).","example":60643.33,"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties.total_invested","typeLabel":"number\u003cfloat>"},"realized_cost_basis":{"type":"number","format":"float","description":"The cost basis of closed (sold) positions for this fungible.","example":45363.2,"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties.realized_cost_basis","typeLabel":"number\u003cfloat>"},"net_invested":{"type":"number","format":"float","description":"The total amount invested in this fungible that has not been sold.","example":15280.13,"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties.net_invested","typeLabel":"number\u003cfloat>"},"received_external":{"type":"number","format":"float","description":"The cumulative value of this fungible received from other wallets.","example":35402.73,"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties.received_external","typeLabel":"number\u003cfloat>"},"sent_external":{"type":"number","format":"float","description":"The cumulative value of this fungible sent to other wallets.","example":22213.21,"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties.sent_external","typeLabel":"number\u003cfloat>"},"sent_for_nfts":{"type":"number","format":"float","description":"The cumulative value of this fungible sent in transactions where the wallet receives NFTs.","example":1713.23,"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties.sent_for_nfts","typeLabel":"number\u003cfloat>"},"received_for_nfts":{"type":"number","format":"float","description":"The cumulative value of this fungible received in transactions where the wallet sends NFTs.","example":1635.05,"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties.received_for_nfts","typeLabel":"number\u003cfloat>"}},"uniqueKey":"data.attributes.breakdown.by_id.additionalProperties","typeLabel":"object"},"example":{"eth":{"average_buy_price":1258.8,"average_sell_price":1224.96,"total_gain":-6900.85,"realized_gain":-6871.21,"unrealized_gain":-29.64,"relative_total_gain_percentage":-11.38,"relative_realized_gain_percentage":-15.15,"relative_unrealized_gain_percentage":-0.19,"total_fee":4679.93,"total_invested":60643.33,"realized_cost_basis":45363.2,"net_invested":15280.13,"received_external":35402.73,"sent_external":22213.21,"sent_for_nfts":1713.23,"received_for_nfts":1635.05}},"uniqueKey":"data.attributes.breakdown.by_id","typeLabel":"object"},"by_implementation":{"type":"object","description":"PnL statistics broken down by fungible implementation (chain:address pair).","additionalProperties":{"type":"object","description":"PnL statistics for an individual fungible.","properties":{"average_buy_price":{"type":"number","format":"float","description":"The average price at which the fungible was purchased.","example":1258.8,"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties.average_buy_price","typeLabel":"number\u003cfloat>"},"average_sell_price":{"type":"number","format":"float","description":"The average price at which the fungible was sold.","example":1224.96,"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties.average_sell_price","typeLabel":"number\u003cfloat>"},"total_gain":{"type":"number","format":"float","description":"The sum of realized and unrealized gains for this fungible.","example":-6900.85,"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties.total_gain","typeLabel":"number\u003cfloat>"},"realized_gain":{"type":"number","format":"float","description":"The gain (or loss) realized from selling this fungible, calculated using the FIFO method.","example":-6871.21,"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties.realized_gain","typeLabel":"number\u003cfloat>"},"unrealized_gain":{"type":"number","format":"float","description":"The potential gain (or loss) on unsold holdings of this fungible.","example":-29.64,"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties.unrealized_gain","typeLabel":"number\u003cfloat>"},"relative_total_gain_percentage":{"type":"number","format":"float","description":"The percentage return on total investment for this fungible.","example":-11.38,"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties.relative_total_gain_percentage","typeLabel":"number\u003cfloat>"},"relative_realized_gain_percentage":{"type":"number","format":"float","description":"The percentage return on realized trades for this fungible.","example":-15.15,"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties.relative_realized_gain_percentage","typeLabel":"number\u003cfloat>"},"relative_unrealized_gain_percentage":{"type":"number","format":"float","description":"The percentage return on open positions for this fungible.","example":-0.19,"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties.relative_unrealized_gain_percentage","typeLabel":"number\u003cfloat>"},"total_fee":{"type":"number","format":"float","description":"The sum of all transaction fees associated with this fungible.","example":4679.93,"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties.total_fee","typeLabel":"number\u003cfloat>"},"total_invested":{"type":"number","format":"float","description":"The total amount invested in this fungible (sum of all buy transactions).","example":60643.33,"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties.total_invested","typeLabel":"number\u003cfloat>"},"realized_cost_basis":{"type":"number","format":"float","description":"The cost basis of closed (sold) positions for this fungible.","example":45363.2,"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties.realized_cost_basis","typeLabel":"number\u003cfloat>"},"net_invested":{"type":"number","format":"float","description":"The total amount invested in this fungible that has not been sold.","example":15280.13,"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties.net_invested","typeLabel":"number\u003cfloat>"},"received_external":{"type":"number","format":"float","description":"The cumulative value of this fungible received from other wallets.","example":35402.73,"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties.received_external","typeLabel":"number\u003cfloat>"},"sent_external":{"type":"number","format":"float","description":"The cumulative value of this fungible sent to other wallets.","example":22213.21,"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties.sent_external","typeLabel":"number\u003cfloat>"},"sent_for_nfts":{"type":"number","format":"float","description":"The cumulative value of this fungible sent in transactions where the wallet receives NFTs.","example":1713.23,"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties.sent_for_nfts","typeLabel":"number\u003cfloat>"},"received_for_nfts":{"type":"number","format":"float","description":"The cumulative value of this fungible received in transactions where the wallet sends NFTs.","example":1635.05,"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties.received_for_nfts","typeLabel":"number\u003cfloat>"}},"uniqueKey":"data.attributes.breakdown.by_implementation.additionalProperties","typeLabel":"object"},"example":{"ethereum:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48":{"average_buy_price":1,"average_sell_price":1,"total_gain":0,"realized_gain":0,"unrealized_gain":0,"relative_total_gain_percentage":0,"relative_realized_gain_percentage":0,"relative_unrealized_gain_percentage":0,"total_fee":12.5,"total_invested":5000,"realized_cost_basis":3000,"net_invested":2000,"received_external":1000,"sent_external":500,"sent_for_nfts":0,"received_for_nfts":0}},"uniqueKey":"data.attributes.breakdown.by_implementation","typeLabel":"object"}},"uniqueKey":"data.attributes.breakdown","typeLabel":"object"}},"isRequired":true,"uniqueKey":"data.attributes","typeLabel":"object"}},"isRequired":true,"uniqueKey":"data","typeLabel":"object"},"meta":{"type":"object","description":"Metadata about the PnL calculation (only present when assets were excluded from the calculation).\nThe structure matches the filter type used in the request:\n- When filtering by `fungible_ids`, the meta contains an `excluded_fungible_ids` array\n- When filtering by `fungible_implementations`, the meta contains an `excluded_fungible_implementations` array\n- If both filters are used, both fields may appear in the meta\n","properties":{"excluded_fungible_ids":{"type":"array","items":{"type":"string","uniqueKey":"meta.excluded_fungible_ids.items.[INDEX]","typeLabel":"string"},"description":"Fungible asset IDs that were excluded due to missing prices (only present when the request used fungible_ids filter)","example":["4a702a34-5cfd-41af-96ad-bd1c45c3672e"],"uniqueKey":"meta.excluded_fungible_ids","typeLabel":"string[]"},"excluded_fungible_implementations":{"type":"array","items":{"type":"string","uniqueKey":"meta.excluded_fungible_implementations.items.[INDEX]","typeLabel":"string"},"description":"Asset implementations that were excluded due to missing prices (only present when the request used fungible_implementations filter).\nFormat matches the user's query format: \"chain:address\" for regular tokens, \"chain:\" for base assets.\n","example":["ethereum:0x6b175474e89094c44da98b954eedeac495271d0f","ethereum:"],"uniqueKey":"meta.excluded_fungible_implementations","typeLabel":"string[]"}},"uniqueKey":"meta","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"links":{"self":"https://api.zerion.io/v1/wallet-sets/pnl?addresses=0x42b9df65b219b3dd36ff330a4dd8f327a6ada990%2C8BH9pjtgyZDC4iAQH5ZiYDZ1MDWC98xki2V8NzqqKW3K\u0026currency=eth\u0026filter%5Bchain_ids%5D=ethereum%2Csolana\u0026filter%5Bfungible_ids%5D=11111111111111111111111111111111%2Ceth"},"data":{"type":"pnl","id":"0x42b9df65b219b3dd36ff330a4dd8f327a6ada990,8BH9pjtgyZDC4iAQH5ZiYDZ1MDWC98xki2V8NzqqKW3K","attributes":{"total_gain":-637.8173517,"realized_gain":-655.3618983,"unrealized_gain":17.5445466,"relative_total_gain_percentage":-11.38,"relative_realized_gain_percentage":-15.15,"relative_unrealized_gain_percentage":-0.19,"total_fee":281.9088917,"total_invested":701.2,"realized_cost_basis":655.36,"net_invested":45.84218703,"received_external":133971.2931,"sent_external":133270.089,"sent_for_nfts":133971.2931,"received_for_nfts":133971.2931,"breakdown":{"by_id":{"eth":{"average_buy_price":1258.8,"average_sell_price":1224.96,"total_gain":-6900.85,"realized_gain":-6871.21,"unrealized_gain":-29.64,"relative_total_gain_percentage":-11.38,"relative_realized_gain_percentage":-15.15,"relative_unrealized_gain_percentage":-0.19,"total_fee":4679.93,"total_invested":60643.33,"realized_cost_basis":45363.2,"net_invested":15280.13,"received_external":35402.73,"sent_external":22213.21,"sent_for_nfts":1713.23,"received_for_nfts":1635.05}},"by_implementation":{"ethereum:0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48":{"average_buy_price":1,"average_sell_price":1,"total_gain":0,"realized_gain":0,"unrealized_gain":0,"relative_total_gain_percentage":0,"relative_realized_gain_percentage":0,"relative_unrealized_gain_percentage":0,"total_fee":12.5,"total_invested":5000,"realized_cost_basis":3000,"net_invested":2000,"received_external":1000,"sent_external":500,"sent_for_nfts":0,"received_for_nfts":0}}}}},"meta":{"excluded_fungible_ids":["4a702a34-5cfd-41af-96ad-bd1c45c3672e"],"excluded_fungible_implementations":["ethereum:0x6b175474e89094c44da98b954eedeac495271d0f","ethereum:"]}}}},"exampleType":"generated"}},"exampleType":"generated"},"11e5e554-aa08-400e-a49b-dbcd12be94f0":{"description":"Parameters are malformed","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"Error short title","example":"Parameter is malformed","uniqueKey":"errors.items.[INDEX].title","typeLabel":"string"},"detail":{"type":"string","description":"Long description of the error","example":"Some validation errors will be described here","uniqueKey":"errors.items.[INDEX].detail","typeLabel":"string"}},"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"errors":[{"title":"Parameter is malformed","detail":"Some validation errors will be described here"}]}}},"exampleType":"generated"}},"exampleType":"generated"},"3e6d0121-4d40-4e5c-8435-b9ceca3cc009":{"description":"Unathenticated request","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"Error short title","example":"Unauthorized Error","uniqueKey":"errors.items.[INDEX].title","typeLabel":"string"},"detail":{"type":"string","description":"Long description of the error","example":"The API key is invalid, please, make sure that you are using a valid key","uniqueKey":"errors.items.[INDEX].detail","typeLabel":"string"}},"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"errors":[{"title":"Unauthorized Error","detail":"The API key is invalid, please, make sure that you are using a valid key"}]}}},"exampleType":"generated"}},"exampleType":"generated"},"593bd900-36fb-4130-82be-d9949cea9698":{"description":"The request cannot be served and retrying will not change that.\n\nUnlike a `503`, this response carries no `Retry-After` header. Contact support if you\nneed the request enabled.\n","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"Error short title","example":"This request is not supported","uniqueKey":"errors.items.[INDEX].title","typeLabel":"string"},"detail":{"type":"string","description":"Long description of the error","example":"This request cannot be processed, and retrying will not help. Please contact support if you need it enabled.","uniqueKey":"errors.items.[INDEX].detail","typeLabel":"string"}},"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"errors":[{"title":"This request is not supported","detail":"This request cannot be processed, and retrying will not help. Please contact support if you need it enabled."}]}}},"exampleType":"generated"}},"exampleType":"generated"},"da598e8a-6598-4575-a8fd-9df54a1f5b51":{"description":"Too many requests error","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"Error short title","example":"Too many requests","uniqueKey":"errors.items.[INDEX].title","typeLabel":"string"},"detail":{"type":"string","description":"Long description of the error","example":"Your request had been throttled","uniqueKey":"errors.items.[INDEX].detail","typeLabel":"string"}},"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"errors":[{"title":"Too many requests","detail":"Your request had been throttled"}]}}},"exampleType":"generated"}},"exampleType":"generated"},"d773a0cc-405d-497a-9471-2814a5121e1d":{"description":"Service is temporarily unavailable.\n\nA transient state: the data is being prepared. Retry after the delay given in the\n`Retry-After` header. Wallets with long histories can need several attempts.\n","headers":{"Retry-After":{"description":"Indicates how long the client should wait before making a follow-up request.\n","schema":{"type":"integer","example":10,"description":"Number of seconds to wait."}}},"content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"object","properties":{"title":{"type":"string","description":"Error short title","example":"Service is temporarily unavailable","uniqueKey":"errors.items.[INDEX].title","typeLabel":"string"},"detail":{"type":"string","description":"Long description of the error","example":"Please, retry later (check the Retry-After header)","uniqueKey":"errors.items.[INDEX].detail","typeLabel":"string"}},"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"errors","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"errors":[{"title":"Service is temporarily unavailable","detail":"Please, retry later (check the Retry-After header)"}]}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"d512cd8c-d692-4af6-8a9b-2e6b7c7a03a5":{"APIKeyBasicAuth":{"type":"http","scheme":"basic","description":"To test endpoints here, paste your API key from the [Dashboard](https://dashboard.zerion.io/) into the username field and leave the password empty.","scopes":[],"schemeName":"APIKeyBasicAuth"}}},"servers":{"94eb7a32-0744-4039-8739-9fb48f86c6e3":{"description":"Production API","url":"https://api.zerion.io"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"basic","description":"To test endpoints here, paste your API key from the [Dashboard](https://dashboard.zerion.io/) into the username field and leave the password empty.","scopes":[],"schemeName":"APIKeyBasicAuth"},"schema":{"title":"Basic Auth","type":"object","description":"To test endpoints here, paste your API key from the [Dashboard](https://dashboard.zerion.io/) into the username field and leave the password empty.","isRequired":true,"properties":{"username":{"type":"string","uniqueKey":"username","isRequired":true,"typeLabel":"string","deprecated":false},"password":{"type":"string","uniqueKey":"password","isRequired":true,"typeLabel":"string","deprecated":false}},"additionalProperties":false,"deprecated":false},"schemeName":"APIKeyBasicAuth","name":"Authorization"}],"title":"APIKeyBasicAuth"}]},"originalFileLocation":"openapi-v1.yaml"},"subdomain":"zerion-f99485ad","siteName":"Zerion API","title":"Get wallet set PnL - Zerion API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-13T16:05:45.652Z","originalFileLocation":"api-reference/wallet-sets/get-wallet-set-pnl.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Realized and unrealized PnL across an EVM and Solana address combined, FIFO-based.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Zerion API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/zerion-f99485ad/VzHsQ_h3ouhCUDnV/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/zerion-f99485ad/VzHsQ_h3ouhCUDnV/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/zerion-f99485ad/VzHsQ_h3ouhCUDnV/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/zerion-f99485ad/VzHsQ_h3ouhCUDnV/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/zerion-f99485ad/VzHsQ_h3ouhCUDnV/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/zerion-f99485ad/VzHsQ_h3ouhCUDnV/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/zerion-f99485ad/VzHsQ_h3ouhCUDnV/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/zerion-f99485ad/VzHsQ_h3ouhCUDnV/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/zerion-f99485ad/VzHsQ_h3ouhCUDnV/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Get wallet set PnL - Zerion API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Realized and unrealized PnL across an EVM and Solana address combined, FIFO-based.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Zerion API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://developers.zerion.io/api-reference/wallet-sets/get-wallet-set-pnl\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://zerion-f99485ad.mintlify.site/_mintlify/api/og/v2?division=wallet+sets\u0026amp;title=Get+wallet+set+PnL\u0026amp;description=Realized+and+unrealized+PnL+across+an+EVM+and+Solana+address+combined%2C+FIFO-based.\u0026amp;theme=d49b1634eaf03f1d6a16fb4e\u0026amp;signature=d4f1093e10b49a471e35808de18c83e1026062aefd1204d2c22822bce4cf331d\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Get wallet set PnL - Zerion API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Realized and unrealized PnL across an EVM and Solana address combined, FIFO-based.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://zerion-f99485ad.mintlify.site/_mintlify/api/og/v2?division=wallet+sets\u0026amp;title=Get+wallet+set+PnL\u0026amp;description=Realized+and+unrealized+PnL+across+an+EVM+and+Solana+address+combined%2C+FIFO-based.\u0026amp;theme=d49b1634eaf03f1d6a16fb4e\u0026amp;signature=d4f1093e10b49a471e35808de18c83e1026062aefd1204d2c22822bce4cf331d\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/zerion-f99485ad/VzHsQ_h3ouhCUDnV/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Zerion API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2461ED\">\u003clink data-mint-head rel=\"canonical\" href=\"https://developers.zerion.io/api-reference/wallet-sets/get-wallet-set-pnl\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/wallet-sets/get-wallet-set-pnl.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://developers.zerion.io/#organization\",\"name\":\"Zerion API\",\"url\":\"https://developers.zerion.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/zerion-f99485ad/7LRY3a3Ldx_ROK8O/logo/light.svg?fit=max\u0026auto=format\u0026n=7LRY3a3Ldx_ROK8O\u0026q=85\u0026s=f451fe390bc92095f03123a8f7d40a7d\"}},{\"@type\":\"WebSite\",\"@id\":\"https://developers.zerion.io#website\",\"name\":\"Zerion API\",\"url\":\"https://developers.zerion.io\",\"publisher\":{\"@id\":\"https://developers.zerion.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://developers.zerion.io/api-reference/wallet-sets/get-wallet-set-pnl#webpage\",\"url\":\"https://developers.zerion.io/api-reference/wallet-sets/get-wallet-set-pnl\",\"name\":\"Get wallet set PnL\",\"description\":\"Realized and unrealized PnL across an EVM and Solana address combined, FIFO-based.\",\"dateModified\":\"2026-11-13T16:05:45.652Z\",\"isPartOf\":{\"@id\":\"https://developers.zerion.io#website\"},\"breadcrumb\":{\"@id\":\"https://developers.zerion.io/api-reference/wallet-sets/get-wallet-set-pnl#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://developers.zerion.io/api-reference/wallet-sets/get-wallet-set-pnl#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"REST API\",\"item\":\"https://developers.zerion.io/api-reference/wallets/get-wallet-balance-chart\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"wallet sets\",\"item\":\"https://developers.zerion.io/api-reference/wallet-sets/get-wallet-set-balance-chart\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Get wallet set PnL\",\"item\":\"https://developers.zerion.io/api-reference/wallet-sets/get-wallet-set-pnl\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://developers.zerion.io/api-reference/wallet-sets/get-wallet-set-pnl#apireference\",\"headline\":\"Get wallet set PnL\",\"name\":\"Get wallet set PnL\",\"description\":\"Realized and unrealized PnL across an EVM and Solana address combined, FIFO-based.\",\"url\":\"https://developers.zerion.io/api-reference/wallet-sets/get-wallet-set-pnl\",\"mainEntityOfPage\":{\"@id\":\"https://developers.zerion.io/api-reference/wallet-sets/get-wallet-set-pnl#webpage\"},\"dateModified\":\"2026-11-13T16:05:45.652Z\",\"publisher\":{\"@id\":\"https://developers.zerion.io/#organization\"},\"isPartOf\":{\"@id\":\"https://developers.zerion.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Zerion API\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Zerion API\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/wallet-sets/get-wallet-set-pnl.md","siteName":"Zerion API","nav":{"global":null,"tabs":[{"tab":"Home","pages":[{"title":"Home","href":"/introduction"}]},{"tab":"API Reference","groups":[{"group":"REST API","pages":[{"group":"wallets","pages":[{"title":"Get wallet balance chart","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/wallets/{address}/charts/{chart_period}","href":"/api-reference/wallets/get-wallet-balance-chart"},{"title":"Get wallet PnL","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/wallets/{address}/pnl","href":"/api-reference/wallets/get-wallet-pnl"},{"title":"Get wallet portfolio","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/wallets/{address}/portfolio","href":"/api-reference/wallets/get-wallet-portfolio"},{"title":"Get wallet fungible positions","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/wallets/{address}/positions/","href":"/api-reference/wallets/get-wallet-fungible-positions"},{"title":"Get wallet transactions","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/wallets/{address}/transactions/","href":"/api-reference/wallets/get-wallet-transactions"},{"title":"Get wallet NFT positions","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/wallets/{address}/nft-positions/","href":"/api-reference/wallets/get-wallet-nft-positions"},{"title":"Get wallet NFT collections","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/wallets/{address}/nft-collections/","href":"/api-reference/wallets/get-wallet-nft-collections"},{"title":"Get wallet NFT portfolio","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/wallets/{address}/nft-portfolio","href":"/api-reference/wallets/get-wallet-nft-portfolio"}]},{"group":"wallet sets","pages":[{"title":"Get wallet set balance chart","description":"Combined portfolio value over time for an EVM and Solana address, filterable by chain and asset type.","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/wallet-sets/charts/{chart_period}","href":"/api-reference/wallet-sets/get-wallet-set-balance-chart"},{"title":"Get wallet set PnL","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/wallet-sets/pnl","href":"/api-reference/wallet-sets/get-wallet-set-pnl"},{"title":"Get wallet set portfolio","description":"Combined portfolio value for an EVM and Solana address, broken down by chain and position type.","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/wallet-sets/portfolio","href":"/api-reference/wallet-sets/get-wallet-set-portfolio"},{"title":"Get wallet set fungible positions","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/wallet-sets/positions/","href":"/api-reference/wallet-sets/get-wallet-set-fungible-positions"},{"title":"Get wallet set transactions","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/wallet-sets/transactions/","href":"/api-reference/wallet-sets/get-wallet-set-transactions"}]},{"group":"fungibles","pages":[{"title":"Get list of fungible assets","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/fungibles/","href":"/api-reference/fungibles/get-list-of-fungible-assets"},{"title":"Get fungible asset by ID","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/fungibles/{fungible_id}","href":"/api-reference/fungibles/get-fungible-asset-by-id"},{"title":"Get a chart for a fungible asset","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/fungibles/{fungible_id}/charts/{chart_period}","href":"/api-reference/fungibles/get-a-chart-for-a-fungible-asset"},{"title":"Get fungible asset by implementation","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/fungibles/by-implementation","href":"/api-reference/fungibles/get-fungible-asset-by-implementation"},{"title":"Get a chart for a fungible asset by implementation","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/fungibles/by-implementation/charts/{chart_period}","href":"/api-reference/fungibles/get-a-chart-for-a-fungible-asset-by-implementation"}]},{"group":"chains","pages":[{"title":"Get list of all chains","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/chains/","href":"/api-reference/chains/get-list-of-all-chains"},{"title":"Get chain by ID","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/chains/{chain_id}","href":"/api-reference/chains/get-chain-by-id"}]},{"group":"swap","pages":[{"title":"Get swap and bridge quotes","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/swap/quotes/","href":"/api-reference/swap/get-swap-and-bridge-quotes"},{"title":"List fungibles available for bridging","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/swap/fungibles/","href":"/api-reference/swap/list-fungibles-available-for-bridging"}]},{"group":"gas","pages":[{"title":"Get list of all available gas prices","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/gas-prices/","href":"/api-reference/gas/get-list-of-all-available-gas-prices"}]},{"group":"nfts","pages":[{"title":"Get list of NFTs","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/nfts/","href":"/api-reference/nfts/get-list-of-nfts"},{"title":"Get single NFT by ID","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/nfts/{nft_id}","href":"/api-reference/nfts/get-single-nft-by-id"}]},{"group":"dapps","pages":[{"title":"Get list of DApps","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/dapps","href":"/api-reference/dapps/get-list-of-dapps"},{"title":"Get DApp by ID","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/dapps/{dapp_id}","href":"/api-reference/dapps/get-dapp-by-id"}]},{"group":"subscriptions to transactions","pages":[{"title":"Find subscriptions","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/tx-subscriptions/","href":"/api-reference/subscriptions-to-transactions/find-subscriptions"},{"title":"Create subscription","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml post /v1/tx-subscriptions/","href":"/api-reference/subscriptions-to-transactions/create-subscription"},{"title":"Find subscription by ID","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/tx-subscriptions/{subscription_id}","href":"/api-reference/subscriptions-to-transactions/find-subscription-by-id"},{"title":"Delete subscription by ID","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml delete /v1/tx-subscriptions/{subscription_id}","href":"/api-reference/subscriptions-to-transactions/delete-subscription-by-id"},{"title":"Find wallets within subscription","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/tx-subscriptions/{subscription_id}/wallets","href":"/api-reference/subscriptions-to-transactions/find-wallets-within-subscription"},{"title":"Replace wallets within subscription","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml put /v1/tx-subscriptions/{subscription_id}/wallets","href":"/api-reference/subscriptions-to-transactions/replace-wallets-within-subscription"},{"title":"Patch wallets within subscription","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml patch /v1/tx-subscriptions/{subscription_id}/wallets","href":"/api-reference/subscriptions-to-transactions/patch-wallets-within-subscription"},{"title":"Count wallets within subscription","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml get /v1/tx-subscriptions/{subscription_id}/wallets/count","href":"/api-reference/subscriptions-to-transactions/count-wallets-within-subscription"},{"title":"Update callback URL within subscription","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml patch /v1/tx-subscriptions/{subscription_id}/callback_url","href":"/api-reference/subscriptions-to-transactions/update-callback-url-within-subscription"},{"title":"Enable a specific subscription","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml patch /v1/tx-subscriptions/{subscription_id}/enable","href":"/api-reference/subscriptions-to-transactions/enable-a-specific-subscription"},{"title":"Disable a specific subscription","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml patch /v1/tx-subscriptions/{subscription_id}/disable","href":"/api-reference/subscriptions-to-transactions/disable-a-specific-subscription"},{"title":"Update chain IDs within subscription","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml patch /v1/tx-subscriptions/{subscription_id}/chain_ids","href":"/api-reference/subscriptions-to-transactions/update-chain-ids-within-subscription"},{"title":"Update filters within subscription","deprecated":null,"version":null,"openapi":"/openapi-v1.yaml patch /v1/tx-subscriptions/{subscription_id}/filters","href":"/api-reference/subscriptions-to-transactions/update-filters-within-subscription"}]}]}]},{"tab":"Recipes","pages":[{"title":"Recipes","href":"/recipes"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]},{"tab":"Case studies","href":"https://zerion.io/blog/tag/zerion-api/"}]},"basePath":"","title":"Get wallet set PnL - Zerion API","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DdEMm2kG.js","utils-BMo572L7.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-C-4m9KAx.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DPLK2Oq9.js","snippetPresets-BKjfJMC9.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-DTsgtCEj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C8vmhyQM.js","shallow-r9w8LQGS.js","getApiPlaygroundDisplay-DjPI64HQ.js","CodeSnippet-C8Bvhl16.js","CodeSnippets-BtWUwcMy.js","Page-BIYvYBgk.js","getPastedJson-Dcm_3Pgl.js","icon-BXwrTpjc.js","MethodPill-CcjfVmmy.js","DuplicateIcon-BuKIbXAQ.js","createIcon-DaL9yXsO.js","DynamicMarkdown-Co5nikxh.js","SectionHeading-P4UNTsMZ.js","axios-vUo_bRtp.js","Markdown-CEfymfIH.js","clsx-Dq9TQuNi.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-D2J8knkn.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BgZ2ThuU.js"]}