from compass_api_sdk import CompassAPIwith CompassAPI( api_key_auth="<YOUR_API_KEY_HERE>",) as compass_api: res = compass_api.perpetual_trading.perpetual_trading_activity(owner="0x06A9aF046187895AcFc7258450B15397CAc67400") # Handle response print(res)
import { CompassApiSDK } from "@compass-labs/api-sdk";
const compassApiSDK = new CompassApiSDK({
apiKeyAuth: "<YOUR_API_KEY_HERE>",
});
async function run() {
const result = await compassApiSDK.perpetualTrading.perpetualTradingActivity({
owner: "0x06A9aF046187895AcFc7258450B15397CAc67400",
});
console.log(result);
}
run();
curl --request GET \
--url https://api.compasslabs.ai/v2/perpetual_trading/activity \
--header 'x-api-key: <api-key>'
Return positions, fills, open orders, and (optionally) builder approval
state for an end-user in one normalized payload.
Each section is fetched in parallel from the Hyperliquid info API.
If a single upstream call fails the corresponding section returns null
and an entry is added to partial_errors; if every section fails the
endpoint responds with 502.
Pass builder to additionally include the user’s current approved max
fee rate for that builder (used by dashboards to decide whether to prompt
the user to sign an approveBuilderFee action).
GET
/
v2
/
perpetual_trading
/
activity
Python (SDK)
from compass_api_sdk import CompassAPIwith CompassAPI( api_key_auth="<YOUR_API_KEY_HERE>",) as compass_api: res = compass_api.perpetual_trading.perpetual_trading_activity(owner="0x06A9aF046187895AcFc7258450B15397CAc67400") # Handle response print(res)
import { CompassApiSDK } from "@compass-labs/api-sdk";
const compassApiSDK = new CompassApiSDK({
apiKeyAuth: "<YOUR_API_KEY_HERE>",
});
async function run() {
const result = await compassApiSDK.perpetualTrading.perpetualTradingActivity({
owner: "0x06A9aF046187895AcFc7258450B15397CAc67400",
});
console.log(result);
}
run();
curl --request GET \
--url https://api.compasslabs.ai/v2/perpetual_trading/activity \
--header 'x-api-key: <api-key>'
Optional builder address. When provided, the response includes the current builder-fee approval state for this (owner, builder) pair.
Response
Successful Response
Aggregated HL activity for a single end-user.
Any section may be null if its upstream HL call failed — see
partial_errors for details. positions/fills/open_orders
are always either a populated list or null; an empty list means the
user has no activity of that type, not a failure.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Compass API Docs","colors":{"primary":"#0284c7","light":"#0e9fe9","dark":"#0284c7"},"logo":{"light":"https://mintcdn.com/compasslabs-f07467e0/x2NrFgZ7soJbH6sc/logo/light.svg?fit=max\u0026auto=format\u0026n=x2NrFgZ7soJbH6sc\u0026q=85\u0026s=80a04b06674000990914306c6a833cb9","dark":"https://mintcdn.com/compasslabs-f07467e0/x2NrFgZ7soJbH6sc/logo/dark.svg?fit=max\u0026auto=format\u0026n=x2NrFgZ7soJbH6sc\u0026q=85\u0026s=77e910ba12605c7f004ad72498f8076f"},"favicon":"https://mintcdn.com/compasslabs-f07467e0/x2NrFgZ7soJbH6sc/favicon.svg?fit=max\u0026auto=format\u0026n=x2NrFgZ7soJbH6sc\u0026q=85\u0026s=2025e9c84a2b6b167d319b28e1ecb8a0","appearance":{"default":"light","strict":true},"navbar":{"links":[{"href":"https://calendly.com/elisabeth-compasslabs/30min","label":"Book a demo"},{"href":"https://compasslabs.ai/login","label":"Login"}]},"footer":{"socials":{"x":"https://x.com/labs_compass","github":"https://github.com/CompassLabs","linkedin":"https://www.linkedin.com/company/compass-labs-ai","medium":"https://medium.com/@compasslabs","telegram":"https://discord.com/invite/ujetyJJPYr","discord":"https://discord.com/invite/ujetyJJPYr"},"links":[{"header":"Resources","items":[{"label":"Blog","href":"https://medium.com/@compasslabs"}]},{"header":"Legal","items":[{"label":"Terms \u0026 Conditions","href":"https://docs.compasslabs.ai/v1/support/terms-and-conditions"},{"label":"Privacy Policy","href":"https://docs.compasslabs.ai/v1/support/privacy-policy"}]}]},"styling":{"eyebrows":"section","codeblocks":"system","latex":false},"integrations":{"ga4":{"measurementId":"G-EQSZ3TK15C"},"gtm":{"tagId":"GTM-5NXMZG6D"}},"contextual":{"options":["chatgpt","claude"],"display":"header"},"navigation":{"global":{"tabs":[],"anchors":[]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"compasslabs-f07467e0","hasAudioNarration":false,"actualSubdomain":"compasslabs-f07467e0","customDomains":["docs.compasslabs.ai"],"gitSource":{"type":"github","owner":"compasslabs","repo":"mono","deployBranch":"production","contentDirectory":"api_docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae0a6ff7c6095c2ab5b81a9","collectionId":"7e667304-c32a-4059-a44a-da8b60cd1eb8","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae0a6ff7c6095c2ab5b81a9"},"feedback":{"issues":true,"edits":true,"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae0a6ff7c6095c2ab5b81a9","clientVersion":"0.0.3990","searchFilterCounts":[{"language":"default","tag":"API Reference","count":298},{"language":"default","tag":"Documentation","count":30},{"language":"default","tag":"Aave V3","count":15},{"language":"default","tag":"Perpetual Trading","count":15},{"language":"default","tag":"Tokenized Assets","count":15},{"language":"default","tag":"Credit","count":14},{"language":"default","tag":"Earn","count":13},{"language":"default","tag":"Morpho","count":12},{"language":"default","tag":"Uniswap V3","count":10},{"language":"default","tag":"Transaction Bundler","count":9}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","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":"editor-v7-file-tree","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":"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":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","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":"per-site-search-delta","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":"editor-private-page-search","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":"editor-nav-generations","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":"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":"byok-sep-25","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":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","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":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"button.css","content":"@keyframes jump{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.jump-loop{animation:jump .5s ease infinite}#code-group,#content-area>div.flex.flex-col.gap-8>div.mt-6.flex.w-full.flex-col.space-y-4>div{background-color:#efefef33;box-shadow:0 4px 12px rgba(0,0,0,.08)}#code-group:hover,#content-area>div.flex.flex-col.gap-8>div.mt-6.flex.w-full.flex-col.space-y-4>div:hover{box-shadow:0 6px 18px rgba(0,0,0,.1)}"}],"page":{"pagePath":"v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user","slug":"/v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user","pageMetadata":{"title":"Aggregated Hyperliquid activity for a user","description":"Return positions, fills, open orders, and (optionally) builder approval\nstate for an end-user in one normalized payload.\n\nEach section is fetched in parallel from the Hyperliquid `info` API.\nIf a single upstream call fails the corresponding section returns ``null``\nand an entry is added to ``partial_errors``; if every section fails the\nendpoint responds with 502.\n\nPass ``builder`` to additionally include the user's current approved max\nfee rate for that builder (used by dashboards to decide whether to prompt\nthe user to sign an `approveBuilderFee` action).","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/perpetual_trading/activity","href":"/v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Return positions, fills, open orders, and (optionally) builder approval\\nstate for an end-user in one normalized payload.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Each section is fetched in parallel from the Hyperliquid \", _jsx(_components.code, {\n children: \"info\"\n }), \" API.\\nIf a single upstream call fails the corresponding section returns \", _jsx(_components.code, {\n children: \"null\"\n }), \"\\nand an entry is added to \", _jsx(_components.code, {\n children: \"partial_errors\"\n }), \"; if every section fails the\\nendpoint responds with 502.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Pass \", _jsx(_components.code, {\n children: \"builder\"\n }), \" to additionally include the user’s current approved max\\nfee rate for that builder (used by dashboards to decide whether to prompt\\nthe user to sign an \", _jsx(_components.code, {\n children: \"approveBuilderFee\"\n }), \" action).\"]\n })]\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":{"codeStyling":"system","config":{},"pageMetadata":{"title":"Aggregated Hyperliquid activity for a user","description":"Return positions, fills, open orders, and (optionally) builder approval\nstate for an end-user in one normalized payload.\n\nEach section is fetched in parallel from the Hyperliquid `info` API.\nIf a single upstream call fails the corresponding section returns ``null``\nand an entry is added to ``partial_errors``; if every section fails the\nendpoint responds with 502.\n\nPass ``builder`` to additionally include the user's current approved max\nfee rate for that builder (used by dashboards to decide whether to prompt\nthe user to sign an `approveBuilderFee` action).","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/perpetual_trading/activity","href":"/v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/compasslabs-f07467e0/27fd886bf35b6ed0/redeploy-trigger.js","/_mintlify/custom/compasslabs-f07467e0/5b350f94165e79a1/scripts/auth-btns.js","/_mintlify/custom/compasslabs-f07467e0/0c2ee6a003a69104/scripts/home-btn-link.js","/_mintlify/custom/compasslabs-f07467e0/17a3e2d25ff9b880/scripts/magic.js","/_mintlify/custom/compasslabs-f07467e0/2592024b81e4044f/scripts/modal.js","/_mintlify/custom/compasslabs-f07467e0/60b3db97b96f7d26/scripts/language-icon-fixer.js","/_mintlify/custom/compasslabs-f07467e0/60408501351ea2bb/scripts/disable-bundler-playground.js"],"openApiReferenceData":{"operation":{"tags":["Perpetual Trading"],"summary":"Aggregated Hyperliquid activity for a user","description":"Return positions, fills, open orders, and (optionally) builder approval\nstate for an end-user in one normalized payload.\n\nEach section is fetched in parallel from the Hyperliquid `info` API.\nIf a single upstream call fails the corresponding section returns ``null``\nand an entry is added to ``partial_errors``; if every section fails the\nendpoint responds with 502.\n\nPass ``builder`` to additionally include the user's current approved max\nfee rate for that builder (used by dashboards to decide whether to prompt\nthe user to sign an `approveBuilderFee` action).","operationId":"v2_perpetual_trading_activity","parameters":["6fd0809f-c393-4394-a691-ba5b796566c7","461aafe2-d802-410a-b78c-7094089b7939"],"responses":{"200":"80c92068-6ae9-4dfe-8eaf-d99d9ce1f27f","422":"e3293bfc-a508-49d0-9d53-5416a5a6e7df"},"x-speakeasy-name-override":"perpetual_trading_activity","x-codeSamples":[{"lang":"python","label":"Python (SDK)","source":"from compass_api_sdk import CompassAPI\n\n\nwith CompassAPI(\n api_key_auth=\"\u003cYOUR_API_KEY_HERE>\",\n) as compass_api:\n\n res = compass_api.perpetual_trading.perpetual_trading_activity(owner=\"0x06A9aF046187895AcFc7258450B15397CAc67400\")\n\n # Handle response\n print(res)"},{"lang":"typescript","label":"Typescript (SDK)","source":"import { CompassApiSDK } from \"@compass-labs/api-sdk\";\n\nconst compassApiSDK = new CompassApiSDK({\n apiKeyAuth: \"\u003cYOUR_API_KEY_HERE>\",\n});\n\nasync function run() {\n const result = await compassApiSDK.perpetualTrading.perpetualTradingActivity({\n owner: \"0x06A9aF046187895AcFc7258450B15397CAc67400\",\n });\n\n console.log(result);\n}\n\nrun();"}],"method":"get","type":"path","servers":["f38a9aa6-5bf5-4e43-8411-67293530b947"],"security":["eff03a3b-02d2-4605-ba22-1d398ee6cda2"],"path":"/v2/perpetual_trading/activity","baseUrlOptions":["https://api.compasslabs.ai"],"title":"Aggregated Hyperliquid activity for a user","codeSamples":[{"label":"Python (SDK)","lang":"python","source":"from compass_api_sdk import CompassAPI\n\n\nwith CompassAPI(\n api_key_auth=\"\u003cYOUR_API_KEY_HERE>\",\n) as compass_api:\n\n res = compass_api.perpetual_trading.perpetual_trading_activity(owner=\"0x06A9aF046187895AcFc7258450B15397CAc67400\")\n\n # Handle response\n print(res)"},{"label":"Typescript (SDK)","lang":"typescript","source":"import { CompassApiSDK } from \"@compass-labs/api-sdk\";\n\nconst compassApiSDK = new CompassApiSDK({\n apiKeyAuth: \"\u003cYOUR_API_KEY_HERE>\",\n});\n\nasync function run() {\n const result = await compassApiSDK.perpetualTrading.perpetualTradingActivity({\n owner: \"0x06A9aF046187895AcFc7258450B15397CAc67400\",\n });\n\n console.log(result);\n}\n\nrun();"}],"requiredOnlyExamples":false,"requestExampleType":"codeSamples","responseExampleType":"generated"},"dependencies":{"parameters":{"6fd0809f-c393-4394-a691-ba5b796566c7":{"name":"owner","in":"query","required":true,"schema":{"type":"string","title":"Owner","default":"0x06A9aF046187895AcFc7258450B15397CAc67400","isRequired":true,"description":"End-user EOA whose activity should be fetched.","uniqueKey":"","typeLabel":"string"},"description":"End-user EOA whose activity should be fetched."},"461aafe2-d802-410a-b78c-7094089b7939":{"name":"builder","in":"query","required":false,"schema":{"oneOf":[{"type":"string","title":"Builder","description":"Optional builder address. When provided, the response includes the current builder-fee approval state for this (owner, builder) pair.","uniqueKey":"oneOf.0","typeLabel":"string"},{"type":"null","title":"Builder","description":"Optional builder address. When provided, the response includes the current builder-fee approval state for this (owner, builder) pair.","uniqueKey":"oneOf.1","typeLabel":"null"}],"isRequired":false,"uniqueKey":"","typeLabel":"string | null"},"description":"Optional builder address. When provided, the response includes the current builder-fee approval state for this (owner, builder) pair."}},"responses":{"80c92068-6ae9-4dfe-8eaf-d99d9ce1f27f":{"description":"Successful Response","content":{"application/json":{"schema":{"properties":{"owner":{"type":"string","title":"Owner","description":"Owner address that was queried (checksummed)","isRequired":true,"uniqueKey":"owner","typeLabel":"string"},"positions":{"oneOf":[{"type":"array","items":{"properties":{"asset":{"type":"string","title":"Asset","description":"Asset ticker symbol","isRequired":true,"uniqueKey":"positions.oneOf.0.items.[INDEX].asset","typeLabel":"string"},"asset_id":{"type":"integer","title":"Asset Id","description":"Hyperliquid asset index","isRequired":true,"uniqueKey":"positions.oneOf.0.items.[INDEX].asset_id","typeLabel":"integer"},"side":{"type":"string","enum":["long","short"],"title":"Side","description":"Position side: 'long' or 'short'","isRequired":true,"uniqueKey":"positions.oneOf.0.items.[INDEX].side","typeLabel":"enum\u003cstring>"},"size":{"type":"string","title":"Size","description":"Position size in contracts","isRequired":true,"uniqueKey":"positions.oneOf.0.items.[INDEX].size","typeLabel":"string"},"entry_price":{"type":"string","title":"Entry Price","description":"Average entry price","isRequired":true,"uniqueKey":"positions.oneOf.0.items.[INDEX].entry_price","typeLabel":"string"},"mark_price":{"type":"string","title":"Mark Price","description":"Current mark price","isRequired":true,"uniqueKey":"positions.oneOf.0.items.[INDEX].mark_price","typeLabel":"string"},"unrealized_pnl":{"type":"string","title":"Unrealized Pnl","description":"Unrealized PnL in USD","isRequired":true,"uniqueKey":"positions.oneOf.0.items.[INDEX].unrealized_pnl","typeLabel":"string"},"leverage":{"type":"string","title":"Leverage","description":"Current leverage","isRequired":true,"uniqueKey":"positions.oneOf.0.items.[INDEX].leverage","typeLabel":"string"},"margin_used":{"type":"string","title":"Margin Used","description":"Margin used for this position in USD","isRequired":true,"uniqueKey":"positions.oneOf.0.items.[INDEX].margin_used","typeLabel":"string"},"funding_accrued":{"type":"string","title":"Funding Accrued","description":"Cumulative funding payments (negative = paid)","isRequired":true,"uniqueKey":"positions.oneOf.0.items.[INDEX].funding_accrued","typeLabel":"string"},"liquidation_price":{"oneOf":[{"type":"string","title":"Liquidation Price","description":"Estimated liquidation price","uniqueKey":"positions.oneOf.0.items.[INDEX].liquidation_price.oneOf.0","typeLabel":"string"},{"type":"null","title":"Liquidation Price","description":"Estimated liquidation price","uniqueKey":"positions.oneOf.0.items.[INDEX].liquidation_price.oneOf.1","typeLabel":"null"}],"uniqueKey":"positions.oneOf.0.items.[INDEX].liquidation_price","typeLabel":"string | null"}},"type":"object","required":["asset","asset_id","side","size","entry_price","mark_price","unrealized_pnl","leverage","margin_used","funding_accrued"],"title":"PerpetualTradingPosition","description":"A single open perpetual futures position.","uniqueKey":"positions.oneOf.0.items.[INDEX]","typeLabel":"PerpetualTradingPosition · object"},"title":"Positions","description":"Open positions (null if the upstream call failed)","isRequired":true,"uniqueKey":"positions.oneOf.0","typeLabel":"PerpetualTradingPosition · object[]"},{"type":"null","title":"Positions","description":"Open positions (null if the upstream call failed)","isRequired":true,"uniqueKey":"positions.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"positions","typeLabel":"PerpetualTradingPosition · object[] | null"},"account_value":{"oneOf":[{"type":"string","title":"Account Value","description":"Total account value in USDC (null if positions failed)","isRequired":true,"uniqueKey":"account_value.oneOf.0","typeLabel":"string"},{"type":"null","title":"Account Value","description":"Total account value in USDC (null if positions failed)","isRequired":true,"uniqueKey":"account_value.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"account_value","typeLabel":"string | null"},"withdrawable":{"oneOf":[{"type":"string","title":"Withdrawable","description":"Withdrawable USDC balance (null if positions failed)","isRequired":true,"uniqueKey":"withdrawable.oneOf.0","typeLabel":"string"},{"type":"null","title":"Withdrawable","description":"Withdrawable USDC balance (null if positions failed)","isRequired":true,"uniqueKey":"withdrawable.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"withdrawable","typeLabel":"string | null"},"fills":{"oneOf":[{"type":"array","items":{"properties":{"asset":{"type":"string","title":"Asset","description":"Asset ticker symbol (xyz prefix stripped)","isRequired":true,"uniqueKey":"fills.oneOf.0.items.[INDEX].asset","typeLabel":"string"},"side":{"type":"string","enum":["buy","sell"],"title":"Side","description":"Order side","isRequired":true,"uniqueKey":"fills.oneOf.0.items.[INDEX].side","typeLabel":"enum\u003cstring>"},"price":{"type":"string","title":"Price","description":"Fill price","isRequired":true,"uniqueKey":"fills.oneOf.0.items.[INDEX].price","typeLabel":"string"},"size":{"type":"string","title":"Size","description":"Fill size in contracts","isRequired":true,"uniqueKey":"fills.oneOf.0.items.[INDEX].size","typeLabel":"string"},"fee":{"type":"string","title":"Fee","description":"Total fee paid (USDC)","isRequired":true,"uniqueKey":"fills.oneOf.0.items.[INDEX].fee","typeLabel":"string"},"order_id":{"type":"integer","title":"Order Id","description":"HL order id (oid) this fill belongs to","isRequired":true,"uniqueKey":"fills.oneOf.0.items.[INDEX].order_id","typeLabel":"integer"},"time_ms":{"type":"integer","title":"Time Ms","description":"Fill timestamp (ms since epoch)","isRequired":true,"uniqueKey":"fills.oneOf.0.items.[INDEX].time_ms","typeLabel":"integer"},"builder_fee":{"oneOf":[{"type":"string","title":"Builder Fee","description":"Portion of fee routed to the builder address (USDC)","uniqueKey":"fills.oneOf.0.items.[INDEX].builder_fee.oneOf.0","typeLabel":"string"},{"type":"null","title":"Builder Fee","description":"Portion of fee routed to the builder address (USDC)","uniqueKey":"fills.oneOf.0.items.[INDEX].builder_fee.oneOf.1","typeLabel":"null"}],"uniqueKey":"fills.oneOf.0.items.[INDEX].builder_fee","typeLabel":"string | null"},"closed_pnl":{"oneOf":[{"type":"string","title":"Closed Pnl","description":"Realized PnL closed by this fill (USDC)","uniqueKey":"fills.oneOf.0.items.[INDEX].closed_pnl.oneOf.0","typeLabel":"string"},{"type":"null","title":"Closed Pnl","description":"Realized PnL closed by this fill (USDC)","uniqueKey":"fills.oneOf.0.items.[INDEX].closed_pnl.oneOf.1","typeLabel":"null"}],"uniqueKey":"fills.oneOf.0.items.[INDEX].closed_pnl","typeLabel":"string | null"}},"type":"object","required":["asset","side","price","size","fee","order_id","time_ms"],"title":"PerpetualTradingFill","description":"A single fill (executed trade) from HL `userFills`.","uniqueKey":"fills.oneOf.0.items.[INDEX]","typeLabel":"PerpetualTradingFill · object"},"title":"Fills","description":"Recent fills (null if the upstream call failed)","isRequired":true,"uniqueKey":"fills.oneOf.0","typeLabel":"PerpetualTradingFill · object[]"},{"type":"null","title":"Fills","description":"Recent fills (null if the upstream call failed)","isRequired":true,"uniqueKey":"fills.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"fills","typeLabel":"PerpetualTradingFill · object[] | null"},"open_orders":{"oneOf":[{"type":"array","items":{"properties":{"asset":{"type":"string","title":"Asset","description":"Asset ticker symbol (xyz prefix stripped)","isRequired":true,"uniqueKey":"open_orders.oneOf.0.items.[INDEX].asset","typeLabel":"string"},"side":{"type":"string","enum":["buy","sell"],"title":"Side","description":"Order side","isRequired":true,"uniqueKey":"open_orders.oneOf.0.items.[INDEX].side","typeLabel":"enum\u003cstring>"},"limit_price":{"type":"string","title":"Limit Price","description":"Limit price","isRequired":true,"uniqueKey":"open_orders.oneOf.0.items.[INDEX].limit_price","typeLabel":"string"},"size":{"type":"string","title":"Size","description":"Order size in contracts","isRequired":true,"uniqueKey":"open_orders.oneOf.0.items.[INDEX].size","typeLabel":"string"},"order_id":{"type":"integer","title":"Order Id","description":"HL order id (oid)","isRequired":true,"uniqueKey":"open_orders.oneOf.0.items.[INDEX].order_id","typeLabel":"integer"},"time_ms":{"type":"integer","title":"Time Ms","description":"Order timestamp (ms since epoch)","isRequired":true,"uniqueKey":"open_orders.oneOf.0.items.[INDEX].time_ms","typeLabel":"integer"},"reduce_only":{"type":"boolean","title":"Reduce Only","description":"True if order can only reduce position","isRequired":true,"uniqueKey":"open_orders.oneOf.0.items.[INDEX].reduce_only","typeLabel":"boolean"}},"type":"object","required":["asset","side","limit_price","size","order_id","time_ms","reduce_only"],"title":"PerpetualTradingOpenOrder","description":"A single resting order from HL `openOrders`.","uniqueKey":"open_orders.oneOf.0.items.[INDEX]","typeLabel":"PerpetualTradingOpenOrder · object"},"title":"Open Orders","description":"Resting orders (null if the upstream call failed)","isRequired":true,"uniqueKey":"open_orders.oneOf.0","typeLabel":"PerpetualTradingOpenOrder · object[]"},{"type":"null","title":"Open Orders","description":"Resting orders (null if the upstream call failed)","isRequired":true,"uniqueKey":"open_orders.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"open_orders","typeLabel":"PerpetualTradingOpenOrder · object[] | null"},"builder_approval":{"oneOf":[{"type":"object","title":"PerpetualTradingBuilderApproval","description":"Builder approval state — only present when the `builder` query parameter was supplied (null on upstream failure).","required":["builder","max_fee_tenth_bps","approved"],"properties":{"builder":{"type":"string","title":"Builder","description":"Builder address that was queried","isRequired":true,"uniqueKey":"builder_approval.oneOf.0.builder","typeLabel":"string"},"max_fee_tenth_bps":{"type":"integer","title":"Max Fee Tenth Bps","description":"Maximum fee rate the user has approved for this builder, in tenths of basis points (10 = 1bp = 0.01%). Zero means the user has not approved.","isRequired":true,"uniqueKey":"builder_approval.oneOf.0.max_fee_tenth_bps","typeLabel":"integer"},"approved":{"type":"boolean","title":"Approved","description":"Convenience flag — true when max_fee_tenth_bps > 0","isRequired":true,"uniqueKey":"builder_approval.oneOf.0.approved","typeLabel":"boolean"}},"uniqueKey":"builder_approval.oneOf.0","typeLabel":"PerpetualTradingBuilderApproval · object"},{"type":"null","description":"Builder approval state — only present when the `builder` query parameter was supplied (null on upstream failure).","uniqueKey":"builder_approval.oneOf.1","typeLabel":"null"}],"uniqueKey":"builder_approval","typeLabel":"PerpetualTradingBuilderApproval · object | null"},"partial_errors":{"items":{"properties":{"section":{"type":"string","enum":["positions","fills","open_orders","builder_approval"],"title":"Section","isRequired":true,"uniqueKey":"partial_errors.items.[INDEX].section","typeLabel":"enum\u003cstring>"},"message":{"type":"string","title":"Message","isRequired":true,"uniqueKey":"partial_errors.items.[INDEX].message","typeLabel":"string"}},"type":"object","required":["section","message"],"title":"PerpetualTradingActivityPartialError","description":"One section of /activity failed to load.","uniqueKey":"partial_errors.items.[INDEX]","typeLabel":"PerpetualTradingActivityPartialError · object"},"type":"array","title":"Partial Errors","description":"One entry per section that failed to load.","uniqueKey":"partial_errors","typeLabel":"PerpetualTradingActivityPartialError · object[]"}},"type":"object","required":["owner","positions","account_value","withdrawable","fills","open_orders"],"title":"PerpetualTradingActivityResponse","description":"Aggregated HL activity for a single end-user.\n\nAny section may be ``null`` if its upstream HL call failed — see\n``partial_errors`` for details. ``positions``/``fills``/``open_orders``\nare always either a populated list or ``null``; an empty list means the\nuser has no activity of that type, not a failure.","example":{"account_value":"1058.32","builder_approval":{"approved":true,"builder":"0x42e1A5b3F1a17d9B2bC0c5d3f3aFf0d27e1c3Fa0","max_fee_tenth_bps":50},"fills":[{"asset":"AAPL","builder_fee":"0.1062","closed_pnl":"0","fee":"0.5310","order_id":9182734102,"price":"212.40","side":"buy","size":"5.00","time_ms":1747010983250}],"open_orders":[{"asset":"GOLD","limit_price":"2450.00","order_id":9182734201,"reduce_only":false,"side":"sell","size":"0.500","time_ms":1747011100000}],"owner":"0x1F31bAad9e2adC1Dc8B0FF8B0c2cF7D0e7d1A8c9","partial_errors":[],"positions":[{"asset":"AAPL","asset_id":12,"entry_price":"212.40","funding_accrued":"-0.12","leverage":"3","liquidation_price":"180.12","margin_used":"354.00","mark_price":"213.88","side":"long","size":"5.00","unrealized_pnl":"7.40"}],"withdrawable":"704.32"},"uniqueKey":"","typeLabel":"PerpetualTradingActivityResponse · object"},"examples":{"Example":{"title":"Example","value":{"account_value":"1058.32","builder_approval":{"approved":true,"builder":"0x42e1A5b3F1a17d9B2bC0c5d3f3aFf0d27e1c3Fa0","max_fee_tenth_bps":50},"fills":[{"asset":"AAPL","builder_fee":"0.1062","closed_pnl":"0","fee":"0.5310","order_id":9182734102,"price":"212.40","side":"buy","size":"5.00","time_ms":1747010983250}],"open_orders":[{"asset":"GOLD","limit_price":"2450.00","order_id":9182734201,"reduce_only":false,"side":"sell","size":"0.500","time_ms":1747011100000}],"owner":"0x1F31bAad9e2adC1Dc8B0FF8B0c2cF7D0e7d1A8c9","partial_errors":[],"positions":[{"asset":"AAPL","asset_id":12,"entry_price":"212.40","funding_accrued":"-0.12","leverage":"3","liquidation_price":"180.12","margin_used":"354.00","mark_price":"213.88","side":"long","size":"5.00","unrealized_pnl":"7.40"}],"withdrawable":"704.32"}}},"exampleType":"generated"}},"exampleType":"generated"},"e3293bfc-a508-49d0-9d53-5416a5a6e7df":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"oneOf":[{"type":"string","uniqueKey":"detail.items.[INDEX].loc.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"integer","uniqueKey":"detail.items.[INDEX].loc.items.[INDEX].oneOf.1","typeLabel":"integer"}],"uniqueKey":"detail.items.[INDEX].loc.items.[INDEX]","typeLabel":"string | integer"},"type":"array","title":"Location","isRequired":true,"uniqueKey":"detail.items.[INDEX].loc","typeLabel":"(string | integer)[]"},"msg":{"type":"string","title":"Message","isRequired":true,"uniqueKey":"detail.items.[INDEX].msg","typeLabel":"string"},"type":{"type":"string","title":"Error Type","isRequired":true,"uniqueKey":"detail.items.[INDEX].type","typeLabel":"string"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError","uniqueKey":"detail.items.[INDEX]","typeLabel":"ValidationError · object"},"type":"array","title":"Detail","uniqueKey":"detail","typeLabel":"ValidationError · object[]"}},"type":"object","title":"HTTPValidationError","uniqueKey":"","typeLabel":"HTTPValidationError · object"},"examples":{"Example":{"title":"Example","value":{"detail":[{"loc":["\u003cstring>"],"msg":"\u003cstring>","type":"\u003cstring>"}]}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"eff03a3b-02d2-4605-ba22-1d398ee6cda2":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key","description":"Your Compass API Key. Get your key [here](https://www.compasslabs.ai/dashboard).","scopes":[],"schemeName":"ApiKeyAuth"}}},"servers":{"f38a9aa6-5bf5-4e43-8411-67293530b947":{"url":"https://api.compasslabs.ai","description":"Production server"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-api-key","description":"Your Compass API Key. Get your key [here](https://www.compasslabs.ai/dashboard).","scopes":[],"schemeName":"ApiKeyAuth"},"schema":{"title":"x-api-key","type":"string","description":"Your Compass API Key. Get your key [here](https://www.compasslabs.ai/dashboard).","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKeyAuth","name":"x-api-key"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"v2/combined_spec.json"},"subdomain":"compasslabs-f07467e0","siteName":"Compass API Docs","title":"Aggregated Hyperliquid activity for a user - Compass API Docs","navMaps":{"firstHrefInVersion":{"V2":{"href":"/v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user","matchLevel":0},"V1":{"href":"/v1/api-reference/aave-v3/aave-supported-tokens","matchLevel":2}},"firstHrefInLanguage":{}},"lastModified":"2026-10-27T13:28:45.654Z","originalFileLocation":"v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"light\";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=\"light\"}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=\"Return positions, fills, open orders, and (optionally) builder approval state for an end-user in one normalized payload. Each section is fetched in parallel from the Hyperliquid info API. If a single upstream call fails the corresponding section returns null and an entry is added to partial_errors; if every section fails the endpoint responds with 502. Pass builder to additionally include the user\u0026#x27;s current approved max fee rate for that builder (used by dashboards to decide whether to prompt the user to sign an approveBuilderFee action).\">\u003cmeta data-mint-head name=\"application-name\" content=\"Compass API Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/compasslabs-f07467e0/CejAEahS9T_GZmf_/_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/compasslabs-f07467e0/CejAEahS9T_GZmf_/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/compasslabs-f07467e0/CejAEahS9T_GZmf_/_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/compasslabs-f07467e0/CejAEahS9T_GZmf_/_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/compasslabs-f07467e0/CejAEahS9T_GZmf_/_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/compasslabs-f07467e0/CejAEahS9T_GZmf_/_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/compasslabs-f07467e0/CejAEahS9T_GZmf_/_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/compasslabs-f07467e0/CejAEahS9T_GZmf_/_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/compasslabs-f07467e0/CejAEahS9T_GZmf_/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Aggregated Hyperliquid activity for a user - Compass API Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Return positions, fills, open orders, and (optionally) builder approval state for an end-user in one normalized payload. Each section is fetched in parallel from the Hyperliquid info API. If a single upstream call fails the corresponding section returns null and an entry is added to partial_errors; if every section fails the endpoint responds with 502. Pass builder to additionally include the user\u0026#x27;s current approved max fee rate for that builder (used by dashboards to decide whether to prompt the user to sign an approveBuilderFee action).\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Compass API Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.compasslabs.ai/v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://compasslabs-f07467e0.mintlify.app/_mintlify/api/og/v2?division=Perpetual+Trading\u0026amp;title=Aggregated+Hyperliquid+activity+for+a+user\u0026amp;description=Return+positions%2C+fills%2C+open+orders%2C+and+%28optionally%29+builder+approval%0Astate+for+an+end-user+in+one+normalized+payload.%0A%0AEach+section+is+fetched+in+parallel+fr\u0026amp;theme=2e6095874381ba0da4ce66d4\u0026amp;signature=5537a66fd8d2ba1bc9d04c9fbd47f1c0b4ea90204d842eed3c2371a771c7a32e\">\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=\"Aggregated Hyperliquid activity for a user - Compass API Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Return positions, fills, open orders, and (optionally) builder approval state for an end-user in one normalized payload. Each section is fetched in parallel from the Hyperliquid info API. If a single upstream call fails the corresponding section returns null and an entry is added to partial_errors; if every section fails the endpoint responds with 502. Pass builder to additionally include the user\u0026#x27;s current approved max fee rate for that builder (used by dashboards to decide whether to prompt the user to sign an approveBuilderFee action).\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://compasslabs-f07467e0.mintlify.app/_mintlify/api/og/v2?division=Perpetual+Trading\u0026amp;title=Aggregated+Hyperliquid+activity+for+a+user\u0026amp;description=Return+positions%2C+fills%2C+open+orders%2C+and+%28optionally%29+builder+approval%0Astate+for+an+end-user+in+one+normalized+payload.%0A%0AEach+section+is+fetched+in+parallel+fr\u0026amp;theme=2e6095874381ba0da4ce66d4\u0026amp;signature=5537a66fd8d2ba1bc9d04c9fbd47f1c0b4ea90204d842eed3c2371a771c7a32e\">\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/compasslabs-f07467e0/CejAEahS9T_GZmf_/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Compass API Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0284c7\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.compasslabs.ai/v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.compasslabs.ai/#organization\",\"name\":\"Compass API Docs\",\"url\":\"https://docs.compasslabs.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/compasslabs-f07467e0/x2NrFgZ7soJbH6sc/logo/light.svg?fit=max\u0026auto=format\u0026n=x2NrFgZ7soJbH6sc\u0026q=85\u0026s=80a04b06674000990914306c6a833cb9\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.compasslabs.ai#website\",\"name\":\"Compass API Docs\",\"url\":\"https://docs.compasslabs.ai\",\"publisher\":{\"@id\":\"https://docs.compasslabs.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.compasslabs.ai/v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user#webpage\",\"url\":\"https://docs.compasslabs.ai/v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user\",\"name\":\"Aggregated Hyperliquid activity for a user\",\"description\":\"Return positions, fills, open orders, and (optionally) builder approval state for an end-user in one normalized payload. Each section is fetched in parallel from the Hyperliquid info API. If a single upstream call fails the corresponding section returns null and an entry is added to partial_errors; if every section fails the endpoint responds with 502. Pass builder to additionally include the user's current approved max fee rate for that builder (used by dashboards to decide whether to prompt the user to sign an approveBuilderFee action).\",\"dateModified\":\"2026-10-27T13:28:45.654Z\",\"isPartOf\":{\"@id\":\"https://docs.compasslabs.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.compasslabs.ai/v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.compasslabs.ai/v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"API Reference\",\"item\":\"https://docs.compasslabs.ai/v2/api-reference/gas-sponsorship/prepare-gas-sponsored-transaction\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Perpetual Trading\",\"item\":\"https://docs.compasslabs.ai/v2/api-reference/perpetual-trading/list-perpetual-trading-markets\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Aggregated Hyperliquid activity for a user\",\"item\":\"https://docs.compasslabs.ai/v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.compasslabs.ai/v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user#apireference\",\"headline\":\"Aggregated Hyperliquid activity for a user\",\"name\":\"Aggregated Hyperliquid activity for a user\",\"description\":\"Return positions, fills, open orders, and (optionally) builder approval state for an end-user in one normalized payload. Each section is fetched in parallel from the Hyperliquid info API. If a single upstream call fails the corresponding section returns null and an entry is added to partial_errors; if every section fails the endpoint responds with 502. Pass builder to additionally include the user's current approved max fee rate for that builder (used by dashboards to decide whether to prompt the user to sign an approveBuilderFee action).\",\"url\":\"https://docs.compasslabs.ai/v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user\",\"mainEntityOfPage\":{\"@id\":\"https://docs.compasslabs.ai/v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user#webpage\"},\"dateModified\":\"2026-10-27T13:28:45.654Z\",\"publisher\":{\"@id\":\"https://docs.compasslabs.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.compasslabs.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Compass API Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Compass API Docs","nav":{"global":{"tabs":[],"anchors":[]},"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/v2/get_started/overview"}]},{"tab":"API Reference","versions":[{"version":"V2","groups":[{"group":"API Reference","pages":[{"group":"Gas Sponsorship","pages":[{"title":"Prepare gas-sponsored transaction","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/gas_sponsorship/prepare","href":"/v2/api-reference/gas-sponsorship/prepare-gas-sponsored-transaction"},{"title":"Approve token transfer","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/gas_sponsorship/approve_transfer","href":"/v2/api-reference/gas-sponsorship/approve-token-transfer"}]},{"group":"Earn","pages":[{"title":"List earn positions","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/earn/positions","href":"/v2/api-reference/earn/list-earn-positions"},{"title":"List earn positions across all chains","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/earn/positions_all","href":"/v2/api-reference/earn/list-earn-positions-across-all-chains"},{"title":"List vaults","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/earn/vaults","href":"/v2/api-reference/earn/list-vaults"},{"title":"List aave markets","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/earn/aave_markets","href":"/v2/api-reference/earn/list-aave-markets"},{"title":"List pendle markets","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/earn/pendle_markets","href":"/v2/api-reference/earn/list-pendle-markets"},{"title":"List maple pools","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/earn/maple_pools","href":"/v2/api-reference/earn/list-maple-pools"},{"title":"Quote a swap","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/earn/swap_quote","href":"/v2/api-reference/earn/quote-a-swap"},{"title":"Get token balances","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/earn/balances","href":"/v2/api-reference/earn/get-token-balances"},{"title":"Create earn account","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/earn/create_account","href":"/v2/api-reference/earn/create-earn-account"},{"title":"Transfer tokens to/from account","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/earn/transfer","href":"/v2/api-reference/earn/transfer-tokens-tofrom-account"},{"title":"Manage earn position","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/earn/manage","href":"/v2/api-reference/earn/manage-earn-position"},{"title":"Swap tokens","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/earn/swap","href":"/v2/api-reference/earn/swap-tokens"},{"title":"Execute multiple earn actions","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/earn/bundle","href":"/v2/api-reference/earn/execute-multiple-earn-actions"}]},{"group":"Bridge","pages":[{"title":"Initiate USDC bridging","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/cctp/burn","href":"/v2/api-reference/bridge/initiate-usdc-bridging"},{"title":"Complete USDC bridging","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/cctp/mint","href":"/v2/api-reference/bridge/complete-usdc-bridging"}]},{"group":"Credit","pages":[{"title":"List credit positions","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/credit/positions","href":"/v2/api-reference/credit/list-credit-positions"},{"title":"Get credit account token balances","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/credit/balances","href":"/v2/api-reference/credit/get-credit-account-token-balances"},{"title":"List looped (leveraged) credit positions","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/credit/looped_positions","href":"/v2/api-reference/credit/list-looped-leveraged-credit-positions"},{"title":"List curated Euler markets","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/credit/euler_markets","href":"/v2/api-reference/credit/list-curated-euler-markets"},{"title":"List curated Morpho markets","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/credit/morpho_markets","href":"/v2/api-reference/credit/list-curated-morpho-markets"},{"title":"Create credit account","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/credit/create_account","href":"/v2/api-reference/credit/create-credit-account"},{"title":"Borrow against collateral","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/credit/borrow","href":"/v2/api-reference/credit/borrow-against-collateral"},{"title":"Open a leveraged loop","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/credit/loop","href":"/v2/api-reference/credit/open-a-leveraged-loop"},{"title":"Unwind a leveraged loop","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/credit/unloop","href":"/v2/api-reference/credit/unwind-a-leveraged-loop"},{"title":"Rebalance the leveraged credit book","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/credit/rebalance","href":"/v2/api-reference/credit/rebalance-the-leveraged-credit-book"},{"title":"Transfer tokens to/from Credit Account","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/credit/transfer","href":"/v2/api-reference/credit/transfer-tokens-tofrom-credit-account"},{"title":"Swap tokens","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/credit/swap","href":"/v2/api-reference/credit/swap-tokens"},{"title":"Repay debt and withdraw collateral","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/credit/repay","href":"/v2/api-reference/credit/repay-debt-and-withdraw-collateral"},{"title":"Execute multiple credit actions","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/credit/bundle","href":"/v2/api-reference/credit/execute-multiple-credit-actions"}]},{"group":"Perpetual Trading","pages":[{"title":"List perpetual trading markets","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/perpetual_trading/opportunities","href":"/v2/api-reference/perpetual-trading/list-perpetual-trading-markets"},{"title":"List perpetual trading positions","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/perpetual_trading/positions","href":"/v2/api-reference/perpetual-trading/list-perpetual-trading-positions"},{"title":"Get OHLCV candles","description":"Return OHLCV candles for a single asset and interval.\n\nWraps Hyperliquid's ``candleSnapshot`` info type and adds the xyz: HIP-3 DEX\nprefix server-side so the SDK only needs the bare ticker (e.g. ``AAPL``).\nCandle ``time`` is returned in unix seconds, ready for TradingView\nlightweight-charts. Cached for 15 seconds per (symbol, interval, window).","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/perpetual_trading/candles","href":"/v2/api-reference/perpetual-trading/get-ohlcv-candles"},{"title":"Aggregated Hyperliquid activity for a user","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/perpetual_trading/activity","href":"/v2/api-reference/perpetual-trading/aggregated-hyperliquid-activity-for-a-user"},{"title":"Deposit USDC to perpetual trading account","description":"Prepare a USDC deposit from Arbitrum via EIP-2612 Permit.\n\nReturns EIP-712 typed data for the user to sign off-chain (no gas needed).\nCompass does NOT broadcast the bridge tx — the integrator's own sponsor\nwallet calls batchedDepositWithPermit on the HL Bridge2 contract on\nArbitrum after the user signs. See api_docs/v2/Products/Perpetual-Trading.mdx\n\"Deposit USDC\" section for the bridge-broadcast code.","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/perpetual_trading/deposit","href":"/v2/api-reference/perpetual-trading/deposit-usdc-to-perpetual-trading-account"},{"title":"Build the Bridge2 deposit tx from a signed permit","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/perpetual_trading/deposit/sponsor_prepare","href":"/v2/api-reference/perpetual-trading/build-the-bridge2-deposit-tx-from-a-signed-permit"},{"title":"Withdraw USDC from perpetual trading account","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/perpetual_trading/withdraw","href":"/v2/api-reference/perpetual-trading/withdraw-usdc-from-perpetual-trading-account"},{"title":"Place market order","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/perpetual_trading/market_order","href":"/v2/api-reference/perpetual-trading/place-market-order"},{"title":"Place limit order","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/perpetual_trading/limit_order","href":"/v2/api-reference/perpetual-trading/place-limit-order"},{"title":"Cancel order","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/perpetual_trading/cancel_order","href":"/v2/api-reference/perpetual-trading/cancel-order"},{"title":"Execute signed action","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/perpetual_trading/execute","href":"/v2/api-reference/perpetual-trading/execute-signed-action"},{"title":"Approve builder fee","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/perpetual_trading/approve_builder_fee","href":"/v2/api-reference/perpetual-trading/approve-builder-fee"},{"title":"Enable unified account mode","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/perpetual_trading/enable_unified_account","href":"/v2/api-reference/perpetual-trading/enable-unified-account-mode"},{"title":"Ensure 1x cross leverage","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/perpetual_trading/ensure_leverage","href":"/v2/api-reference/perpetual-trading/ensure-1x-cross-leverage"},{"title":"Set leverage (defaults to market maximum)","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/perpetual_trading/set_leverage","href":"/v2/api-reference/perpetual-trading/set-leverage-defaults-to-market-maximum"}]},{"group":"Tokenized Assets","pages":[{"title":"List markets","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/tokenized_assets/markets","href":"/v2/api-reference/tokenized-assets/list-markets"},{"title":"Get a market","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/tokenized_assets/markets/{symbol}","href":"/v2/api-reference/tokenized-assets/get-a-market"},{"title":"List positions","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/tokenized_assets/positions","href":"/v2/api-reference/tokenized-assets/list-positions"},{"title":"Get token balances","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/tokenized_assets/balances","href":"/v2/api-reference/tokenized-assets/get-token-balances"},{"title":"Get order status","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/tokenized_assets/order/{order_hash}","href":"/v2/api-reference/tokenized-assets/get-order-status"},{"title":"List redemption requests","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json get /v2/tokenized_assets/redemptions","href":"/v2/api-reference/tokenized-assets/list-redemption-requests"},{"title":"Create account","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/tokenized_assets/create_account","href":"/v2/api-reference/tokenized-assets/create-account"},{"title":"Transfer tokens to/from account","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/tokenized_assets/transfer","href":"/v2/api-reference/tokenized-assets/transfer-tokens-tofrom-account"},{"title":"Quote an order","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/tokenized_assets/quote","href":"/v2/api-reference/tokenized-assets/quote-an-order"},{"title":"Build an order","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/tokenized_assets/order","href":"/v2/api-reference/tokenized-assets/build-an-order"},{"title":"Submit a signed order","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/tokenized_assets/order/submit","href":"/v2/api-reference/tokenized-assets/submit-a-signed-order"},{"title":"Cancel an order","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/tokenized_assets/order/{order_hash}/cancel","href":"/v2/api-reference/tokenized-assets/cancel-an-order"},{"title":"Charge a partner fee","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/tokenized_assets/order/{order_hash}/charge_fee","href":"/v2/api-reference/tokenized-assets/charge-a-partner-fee"},{"title":"Buy an RWA yield token","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/tokenized_assets/transact/buy","href":"/v2/api-reference/tokenized-assets/buy-an-rwa-yield-token"},{"title":"Sell an RWA yield token","deprecated":null,"version":null,"openapi":"/v2/combined_spec.json post /v2/tokenized_assets/transact/sell","href":"/v2/api-reference/tokenized-assets/sell-an-rwa-yield-token"}]}]}]},{"version":"V1","pages":[{"title":"V1","href":"/v1/api-reference/aave-v3/aave-supported-tokens"}]}]}]},"title":"Aggregated Hyperliquid activity for a user - Compass API Docs","buildId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","deploymentId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-WRhTSUDL.js","utils-ChMov4Kr.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-_REmC2bI.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Bp6nVRCu.js","snippetPresets-DZadmXoU.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CY2WdoTl.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-DwYG-Q4l.js","shallow-BXQIGwv4.js","getApiPlaygroundDisplay-CK5nK5B9.js","CodeSnippet-TH4a2aGW.js","CodeSnippets-DwsQiOFS.js","Page-R3M_BF4L.js","getPastedJson-DD7kUzi_.js","icon-holE3QoJ.js","MethodPill-DUW0T8us.js","DuplicateIcon-CI_p4be-.js","createIcon-BdbRvavb.js","DynamicMarkdown-DN96a4Ur.js","SectionHeading-SCu36A9d.js","axios-vUo_bRtp.js","Markdown-CCeGv-zI.js","clsx-BGBGWFTt.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-Cv_O2fky.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-2C5OB2eV.js"]}