diff --git a/nginx.conf b/nginx.conf index 4dbb4f3515e9..577930b78772 100644 --- a/nginx.conf +++ b/nginx.conf @@ -166,7 +166,6 @@ http { rewrite ^/docs/([a-zA-Z][a-zA-Z])/tap/$ $scheme://$http_host/docs/$1/indexing/tap/ permanent; rewrite ^/docs/([a-zA-Z][a-zA-Z])/tokenomics/$ $scheme://$http_host/docs/$1/resources/tokenomics/ permanent; rewrite ^/docs/([a-zA-Z][a-zA-Z])/token-api/$ $scheme://$http_host/docs/$1/token-api/quick-start/ permanent; - rewrite ^/docs/([a-zA-Z][a-zA-Z])/token-api/evm/get-transfers-evm-by-address/$ $scheme://$http_host/docs/$1/token-api/evm/get-transfers-evm/ permanent; rewrite ^/docs/([a-zA-Z][a-zA-Z])/token-api/mcp/cline/$ $scheme://$http_host/docs/$1/ai-suite/token-api-mcp/ permanent; rewrite ^/docs/([a-zA-Z][a-zA-Z])/token-api/mcp/cline/$ $scheme://$http_host/docs/$1/ai-suite/token-api-mcp/ permanent; rewrite ^/docs/([a-zA-Z][a-zA-Z])/token-api/mcp/cline/$ $scheme://$http_host/docs/$1/ai-suite/token-api-mcp/ permanent; diff --git a/package.json b/package.json index 9ccc5bed04dc..13519a9addaa 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "graph-docs", "private": true, "version": "1.0.0", - "packageManager": "pnpm@10.18.0", + "packageManager": "pnpm@10.18.3", "scripts": { "dev": "turbo run dev", "build": "NODE_OPTIONS='--max-old-space-size=8192' turbo run build", @@ -21,11 +21,11 @@ }, "devDependencies": { "@edgeandnode/eslint-config": "^2.0.3", - "@types/node": "^22.18.8", + "@types/node": "^22.18.10", "eslint": "^8.57.1", "eslint-plugin-mdx": "^3.6.2", "prettier": "^3.6.2", - "prettier-plugin-tailwindcss": "^0.6.14", + "prettier-plugin-tailwindcss": "^0.7.0", "remark-frontmatter": "^5.0.0", "remark-lint-first-heading-level": "^4.0.1", "remark-lint-heading-increment": "^4.0.1", diff --git a/packages/og-image/package.json b/packages/og-image/package.json index 9c12f44de073..b505c240d2e0 100644 --- a/packages/og-image/package.json +++ b/packages/og-image/package.json @@ -16,13 +16,13 @@ "yoga-wasm-web": "^0.3.3" }, "devDependencies": { - "@cloudflare/workers-types": "^4.20251001.0", - "@types/react": "^18.3.25", + "@cloudflare/workers-types": "^4.20251011.0", + "@types/react": "^18.3.26", "jest-image-snapshot": "^6.5.1", "tsx": "4.20.4", "typescript": "^5.9.3", "vitest": "^2.1.9", - "wrangler": "^3.114.14" + "wrangler": "^3.114.15" }, "sideEffects": false } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index effd90338cfe..013b75040f5b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -15,8 +15,8 @@ importers: specifier: ^2.0.3 version: 2.0.3(eslint@8.57.1)(typescript@5.9.3) '@types/node': - specifier: ^22.18.8 - version: 22.18.8 + specifier: ^22.18.10 + version: 22.18.10 eslint: specifier: ^8.57.1 version: 8.57.1 @@ -27,8 +27,8 @@ importers: specifier: ^3.6.2 version: 3.6.2 prettier-plugin-tailwindcss: - specifier: ^0.6.14 - version: 0.6.14(prettier@3.6.2) + specifier: ^0.7.0 + version: 0.7.0(prettier@3.6.2) remark-frontmatter: specifier: ^5.0.0 version: 5.0.0 @@ -67,11 +67,11 @@ importers: version: 0.3.3 devDependencies: '@cloudflare/workers-types': - specifier: ^4.20251001.0 - version: 4.20251001.0 + specifier: ^4.20251011.0 + version: 4.20251011.0 '@types/react': - specifier: ^18.3.25 - version: 18.3.25 + specifier: ^18.3.26 + version: 18.3.26 jest-image-snapshot: specifier: ^6.5.1 version: 6.5.1 @@ -83,10 +83,10 @@ importers: version: 5.9.3 vitest: specifier: ^2.1.9 - version: 2.1.9(@types/node@22.18.8)(jsdom@24.1.3) + version: 2.1.9(@types/node@22.18.10)(jsdom@24.1.3) wrangler: - specifier: ^3.114.14 - version: 3.114.14(@cloudflare/workers-types@4.20251001.0) + specifier: ^3.114.15 + version: 3.114.15(@cloudflare/workers-types@4.20251011.0) packages/remark-lint-restrict-elements: dependencies: @@ -101,19 +101,19 @@ importers: dependencies: '@docsearch/react': specifier: ^3.9.0 - version: 3.9.0(@algolia/client-search@5.39.0)(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3) + version: 3.9.0(@algolia/client-search@5.40.1)(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3) '@edgeandnode/common': specifier: ^7.0.4 version: 7.0.4(hardhat@2.26.3(typescript@5.9.3)) '@edgeandnode/gds': - specifier: ^6.7.4 - version: 6.7.4(@emotion/is-prop-valid@0.8.8)(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(dayjs@1.11.18)(hardhat@2.26.3(typescript@5.9.3))(next@14.2.33(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(theme-ui@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1))(tsx@4.20.4)(typescript@5.9.3)(yaml@2.8.1) + specifier: ^6.7.6 + version: 6.7.6(@emotion/is-prop-valid@0.8.8)(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(dayjs@1.11.18)(hardhat@2.26.3(typescript@5.9.3))(next@14.2.33(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(theme-ui@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(tsx@4.20.4)(typescript@5.9.3)(yaml@2.8.1) '@edgeandnode/go': - specifier: ^10.3.8 - version: 10.3.8(ad95ad6c6eb77b5eab3a50453c768c46) + specifier: ^10.3.10 + version: 10.3.10(356ef4223475a01a8e60ae0aaea97ba7) '@emotion/react': specifier: ^11.14.0 - version: 11.14.0(@types/react@18.3.25)(react@18.3.1) + version: 11.14.0(@types/react@18.3.26)(react@18.3.1) '@graphprotocol/contracts': specifier: ^7.3.0 version: 7.3.0 @@ -148,11 +148,11 @@ importers: specifier: ^13.2.0 version: 13.2.0 mixpanel-browser: - specifier: ^2.70.0 - version: 2.70.0 + specifier: ^2.71.0 + version: 2.71.0 motion: - specifier: ^12.23.22 - version: 12.23.22(@emotion/is-prop-valid@0.8.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: ^12.23.24 + version: 12.23.24(@emotion/is-prop-valid@0.8.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) next: specifier: ^14.2.33 version: 14.2.33(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -164,7 +164,7 @@ importers: version: 4.2.3(next@14.2.33(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) nextra: specifier: ^3.3.1 - version: 3.3.1(@types/react@18.3.25)(next@14.2.33(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.3) + version: 3.3.1(@types/react@18.3.26)(next@14.2.33(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.3) openapi-types: specifier: ^12.1.3 version: 12.1.3 @@ -185,7 +185,7 @@ importers: version: 3.0.1 theme-ui: specifier: ^0.17.2 - version: 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1) + version: 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) unist-util-visit: specifier: ^5.0.0 version: 5.0.0 @@ -209,14 +209,14 @@ importers: specifier: ^2.66.0 version: 2.66.0 '@types/node': - specifier: ^22.18.8 - version: 22.18.8 + specifier: ^22.18.10 + version: 22.18.10 '@types/react': - specifier: ^18.3.25 - version: 18.3.25 + specifier: ^18.3.26 + version: 18.3.26 '@types/react-dom': specifier: ^18.3.7 - version: 18.3.7(@types/react@18.3.25) + version: 18.3.7(@types/react@18.3.26) '@types/vfile': specifier: ^4.0.0 version: 4.0.0 @@ -224,8 +224,8 @@ importers: specifier: ^10.4.21 version: 10.4.21(postcss@8.5.6) fast-xml-parser: - specifier: ^5.2.5 - version: 5.2.5 + specifier: ^5.3.0 + version: 5.3.0 postcss: specifier: ^8.5.6 version: 8.5.6 @@ -247,8 +247,8 @@ packages: '@adraffy/ens-normalize@1.11.1': resolution: {integrity: sha512-nhCBV3quEgesuf7c7KYfperqSS14T8bYuvJ8PcLJp6znkZpFc0AuW4qBtr8eKVyPPe/8RSr7sglCWPU5eaxwKQ==} - '@algolia/abtesting@1.5.0': - resolution: {integrity: sha512-W/ohRkbKQsqDWALJg28X15KF7Tcyg53L1MfdOkLgvkcCcofdzGHSimHHeNG05ojjFw9HK8+VPhe/Vwq4MozIJg==} + '@algolia/abtesting@1.6.1': + resolution: {integrity: sha512-wV/gNRkzb7sI9vs1OneG129hwe3Q5zPj7zigz3Ps7M5Lpo2hSorrOnXNodHEOV+yXE/ks4Pd+G3CDFIjFTWhMQ==} engines: {node: '>= 14.0.0'} '@algolia/autocomplete-core@1.17.9': @@ -271,56 +271,56 @@ packages: '@algolia/client-search': '>= 4.9.1 < 6' algoliasearch: '>= 4.9.1 < 6' - '@algolia/client-abtesting@5.39.0': - resolution: {integrity: sha512-Vf0ZVe+qo3sHDrCinouJqlg8VoxM4Qo/KxNIqMYybkuctutfnp3kIY9OmESplOQ/9NGBthU9EG+4d5fBibWK/A==} + '@algolia/client-abtesting@5.40.1': + resolution: {integrity: sha512-cxKNATPY5t+Mv8XAVTI57altkaPH+DZi4uMrnexPxPHODMljhGYY+GDZyHwv9a+8CbZHcY372OkxXrDMZA4Lnw==} engines: {node: '>= 14.0.0'} - '@algolia/client-analytics@5.39.0': - resolution: {integrity: sha512-V16ITZxYIwcv1arNce65JZmn94Ft6vKlBZ//gXw8AvIH32glJz1KcbaVAUr9p7PYlGZ/XVHP6LxDgrpNdtwgcA==} + '@algolia/client-analytics@5.40.1': + resolution: {integrity: sha512-XP008aMffJCRGAY8/70t+hyEyvqqV7YKm502VPu0+Ji30oefrTn2al7LXkITz7CK6I4eYXWRhN6NaIUi65F1OA==} engines: {node: '>= 14.0.0'} - '@algolia/client-common@5.39.0': - resolution: {integrity: sha512-UCJTuwySEQeiKPWV3wruhuI/wHbDYenHzgL9pYsvh6r/u5Z+g61ip1iwdAlFp02CnywzI9O7+AQPh2ManYyHmQ==} + '@algolia/client-common@5.40.1': + resolution: {integrity: sha512-gWfQuQUBtzUboJv/apVGZMoxSaB0M4Imwl1c9Ap+HpCW7V0KhjBddqF2QQt5tJZCOFsfNIgBbZDGsEPaeKUosw==} engines: {node: '>= 14.0.0'} - '@algolia/client-insights@5.39.0': - resolution: {integrity: sha512-s0ia8M/ZZR+iO2uLNTBrlQdEb6ZMAMcKMHckp5mcoglxrf8gHifL4LmdhGKdAxAn3UIagtqIP0RCnIymHUbm7A==} + '@algolia/client-insights@5.40.1': + resolution: {integrity: sha512-RTLjST/t+lsLMouQ4zeLJq2Ss+UNkLGyNVu+yWHanx6kQ3LT5jv8UvPwyht9s7R6jCPnlSI77WnL80J32ZuyJg==} engines: {node: '>= 14.0.0'} - '@algolia/client-personalization@5.39.0': - resolution: {integrity: sha512-vZPIt7Lw+toNsHZUiPhNIc1Z3vUjDp7nzn6AMOaPC73gEuTq2iLPNvM06CSB6aHePo5eMeJIP5YEKBUQUA/PJA==} + '@algolia/client-personalization@5.40.1': + resolution: {integrity: sha512-2FEK6bUomBzEYkTKzD0iRs7Ljtjb45rKK/VSkyHqeJnG+77qx557IeSO0qVFE3SfzapNcoytTofnZum0BQ6r3Q==} engines: {node: '>= 14.0.0'} - '@algolia/client-query-suggestions@5.39.0': - resolution: {integrity: sha512-jcPQr3iKTWNVli2NYHPv02aNLwixDjPCpOgMp9CZTvEiPI6Ec4jHX+oFr3LDZagOFY9e1xJhc/JrgMGGW1sHnw==} + '@algolia/client-query-suggestions@5.40.1': + resolution: {integrity: sha512-Nju4NtxAvXjrV2hHZNLKVJLXjOlW6jAXHef/CwNzk1b2qIrCWDO589ELi5ZHH1uiWYoYyBXDQTtHmhaOVVoyXg==} engines: {node: '>= 14.0.0'} - '@algolia/client-search@5.39.0': - resolution: {integrity: sha512-/IYpF10BpthGZEJQZMhMqV4AqWr5avcWfZm/SIKK1RvUDmzGqLoW/+xeJVX9C8ZnNkIC8hivbIQFaNaRw0BFZQ==} + '@algolia/client-search@5.40.1': + resolution: {integrity: sha512-Mw6pAUF121MfngQtcUb5quZVqMC68pSYYjCRZkSITC085S3zdk+h/g7i6FxnVdbSU6OztxikSDMh1r7Z+4iPlA==} engines: {node: '>= 14.0.0'} - '@algolia/ingestion@1.39.0': - resolution: {integrity: sha512-IgSHKUiuecqLfBlXiuCSdRTdsO3/yvpmXrMFz8fAJ8M4QmDtHkOuD769dmybRYqsbYMHivw+lir4BgbRGMtOIQ==} + '@algolia/ingestion@1.40.1': + resolution: {integrity: sha512-z+BPlhs45VURKJIxsR99NNBWpUEEqIgwt10v/fATlNxc4UlXvALdOsWzaFfe89/lbP5Bu4+mbO59nqBC87ZM/g==} engines: {node: '>= 14.0.0'} - '@algolia/monitoring@1.39.0': - resolution: {integrity: sha512-8Xnd4+609SKC/hqVsuFc4evFBmvA2765/4NcH+Dpr756SKPbL1BY0X8kVxlmM3YBLNqnduSQxHxpDJUK58imCA==} + '@algolia/monitoring@1.40.1': + resolution: {integrity: sha512-VJMUMbO0wD8Rd2VVV/nlFtLJsOAQvjnVNGkMkspFiFhpBA7s/xJOb+fJvvqwKFUjbKTUA7DjiSi1ljSMYBasXg==} engines: {node: '>= 14.0.0'} - '@algolia/recommend@5.39.0': - resolution: {integrity: sha512-D7Ye2Ss/5xqUkQUxKm/VqEJLt5kARd9IMmjdzlxaKhGgNlOemTay0lwBmOVFuJRp7UODjp5c9+K+B8g0ORObIw==} + '@algolia/recommend@5.40.1': + resolution: {integrity: sha512-ehvJLadKVwTp9Scg9NfzVSlBKH34KoWOQNTaN8i1Ac64AnO6iH2apJVSP6GOxssaghZ/s8mFQsDH3QIZoluFHA==} engines: {node: '>= 14.0.0'} - '@algolia/requester-browser-xhr@5.39.0': - resolution: {integrity: sha512-mgPte1ZJqpk9dkVs44J3wKAbHATvHZNlSpzhMdjMLIg/3qTycSZyDiomLiSlxE8CLsxyBAOJWnyKRHfom+Z1rg==} + '@algolia/requester-browser-xhr@5.40.1': + resolution: {integrity: sha512-PbidVsPurUSQIr6X9/7s34mgOMdJnn0i6p+N6Ab+lsNhY5eiu+S33kZEpZwkITYBCIbhzDLOvb7xZD3gDi+USA==} engines: {node: '>= 14.0.0'} - '@algolia/requester-fetch@5.39.0': - resolution: {integrity: sha512-LIrCkrxu1WnO3ev1+w6NnZ12JZL/o+2H9w6oWnZAjQZIlA/Ym6M9QHkt+OQ/SwkuoiNkW3DAo+Pi4A2V9FPtqg==} + '@algolia/requester-fetch@5.40.1': + resolution: {integrity: sha512-ThZ5j6uOZCF11fMw9IBkhigjOYdXGXQpj6h4k+T9UkZrF2RlKcPynFzDeRgaLdpYk8Yn3/MnFbwUmib7yxj5Lw==} engines: {node: '>= 14.0.0'} - '@algolia/requester-node-http@5.39.0': - resolution: {integrity: sha512-6beG+egPwXmvhAg+m0STCj+ZssDcjrLzf4L05aKm2nGglMXSSPz0cH/rM+kVD9krNfldiMctURd4wjojW1fV0w==} + '@algolia/requester-node-http@5.40.1': + resolution: {integrity: sha512-H1gYPojO6krWHnUXu/T44DrEun/Wl95PJzMXRcM/szstNQczSbwq6wIFJPI9nyE95tarZfUNU3rgorT+wZ6iCQ==} engines: {node: '>= 14.0.0'} '@alloc/quick-lru@5.2.0': @@ -330,8 +330,8 @@ packages: '@antfu/install-pkg@1.1.0': resolution: {integrity: sha512-MGQsmw10ZyI+EJo45CdSER4zEb+p31LpDAFp2Z3gkSd1yqVZGi0Ebx++YTEMonJy4oChEMLsxZ64j8FH6sSqtQ==} - '@antfu/utils@9.2.1': - resolution: {integrity: sha512-TMilPqXyii1AsiEii6l6ubRzbo76p6oshUSYPaKsmXDavyMLqjzVDkcp3pHp5ELMUNJHATcEOGxKTTsX9yYhGg==} + '@antfu/utils@9.3.0': + resolution: {integrity: sha512-9hFT4RauhcUzqOE4f1+frMKLZrgNog5b06I7VmZQV1BkvwvqrbC8EBZf3L1eEL2AKb6rNKjER0sEvJiSP1FXEA==} '@apidevtools/json-schema-ref-parser@13.0.5': resolution: {integrity: sha512-xfh4xVJD62gG6spIc7lwxoWT+l16nZu1ELyU8FkjaP/oD2yP09EvLAU6KhtudN9aML2Khhs9pY6Slr7KGTES3w==} @@ -461,8 +461,8 @@ packages: cpu: [x64] os: [win32] - '@cloudflare/workers-types@4.20251001.0': - resolution: {integrity: sha512-MXseDjmqL1hIdQCqwHDMG8SE60W4FdwqLsofZjo/KtLH9zFcoQfZkCYyQrdfEJINiSoNJjrup7WR6KsqiFUSsg==} + '@cloudflare/workers-types@4.20251011.0': + resolution: {integrity: sha512-gQpih+pbq3sP4uXltUeCSbPgZxTNp2gQd8639SaIbQMwgA6oJNHLhIART1fWy6DQACngiRzDVULA2x0ohmkGTQ==} '@corex/deepmerge@4.0.43': resolution: {integrity: sha512-N8uEMrMPL0cu/bdboEWpQYb/0i2K5Qn8eCsxzOmxSggJbbQte7ljMRoXm917AbntqTGOzdTu+vP3KOOzoC70HQ==} @@ -536,8 +536,8 @@ packages: typescript: optional: true - '@edgeandnode/gds@6.7.4': - resolution: {integrity: sha512-NkmGUpuYhK6UEbtPqfdCmryT9f3FPUwYaWlLxxeSd4znjsKUQjcXac3ZqXpgTCXfGBGe2PmMH4hKFE8VLDbtow==} + '@edgeandnode/gds@6.7.6': + resolution: {integrity: sha512-y2WK0ly4bnFC0BYZPJnVbMyPxheHTM8KoPGa3Q6ZmOs9kXnjgId3zZYLX6id0cKrAqXSOBiaP5599I5HvVNzww==} peerDependencies: '@emotion/react': ^11 dayjs: ^1.11 @@ -549,12 +549,12 @@ packages: next: optional: true - '@edgeandnode/go@10.3.8': - resolution: {integrity: sha512-0Ue0XwnYBS2xtiQmmEW3kTwECgkDvEivEAqQgnjkDIIU4YIuGvTxrVw5z36DcKezROOCTTsh+6FmiDnxB49y+A==} + '@edgeandnode/go@10.3.10': + resolution: {integrity: sha512-ORO9MnjLyaMQemB9fHfXCxI4gbw1PxIo+0bLXlOqqGFLkUnH6boYrSBnlYWguJYQ7c+ZuaDxZb/fJRXkgovZTQ==} peerDependencies: '@edgeandnode/common': ^7.0.4 '@edgeandnode/ens': ^2.3.1 - '@edgeandnode/gds': ^6.7.4 + '@edgeandnode/gds': ^6.7.6 '@emotion/react': ^11 '@tanstack/react-query': ^5 graphql: '>=16.9' @@ -660,8 +660,8 @@ packages: cpu: [ppc64] os: [aix] - '@esbuild/aix-ppc64@0.25.10': - resolution: {integrity: sha512-0NFWnA+7l41irNuaSVlLfgNT12caWJVLzp5eAVhZ0z1qpxbockccEt3s+149rE64VUI3Ml2zt8Nv5JVc4QXTsw==} + '@esbuild/aix-ppc64@0.25.11': + resolution: {integrity: sha512-Xt1dOL13m8u0WE8iplx9Ibbm+hFAO0GsU2P34UNoDGvZYkY8ifSiy6Zuc1lYxfG7svWE2fzqCUmFp5HCn51gJg==} engines: {node: '>=18'} cpu: [ppc64] os: [aix] @@ -678,8 +678,8 @@ packages: cpu: [arm64] os: [android] - '@esbuild/android-arm64@0.25.10': - resolution: {integrity: sha512-LSQa7eDahypv/VO6WKohZGPSJDq5OVOo3UoFR1E4t4Gj1W7zEQMUhI+lo81H+DtB+kP+tDgBp+M4oNCwp6kffg==} + '@esbuild/android-arm64@0.25.11': + resolution: {integrity: sha512-9slpyFBc4FPPz48+f6jyiXOx/Y4v34TUeDDXJpZqAWQn/08lKGeD8aDp9TMn9jDz2CiEuHwfhRmGBvpnd/PWIQ==} engines: {node: '>=18'} cpu: [arm64] os: [android] @@ -696,8 +696,8 @@ packages: cpu: [arm] os: [android] - '@esbuild/android-arm@0.25.10': - resolution: {integrity: sha512-dQAxF1dW1C3zpeCDc5KqIYuZ1tgAdRXNoZP7vkBIRtKZPYe2xVr/d3SkirklCHudW1B45tGiUlz2pUWDfbDD4w==} + '@esbuild/android-arm@0.25.11': + resolution: {integrity: sha512-uoa7dU+Dt3HYsethkJ1k6Z9YdcHjTrSb5NUy66ZfZaSV8hEYGD5ZHbEMXnqLFlbBflLsl89Zke7CAdDJ4JI+Gg==} engines: {node: '>=18'} cpu: [arm] os: [android] @@ -714,8 +714,8 @@ packages: cpu: [x64] os: [android] - '@esbuild/android-x64@0.25.10': - resolution: {integrity: sha512-MiC9CWdPrfhibcXwr39p9ha1x0lZJ9KaVfvzA0Wxwz9ETX4v5CHfF09bx935nHlhi+MxhA63dKRRQLiVgSUtEg==} + '@esbuild/android-x64@0.25.11': + resolution: {integrity: sha512-Sgiab4xBjPU1QoPEIqS3Xx+R2lezu0LKIEcYe6pftr56PqPygbB7+szVnzoShbx64MUupqoE0KyRlN7gezbl8g==} engines: {node: '>=18'} cpu: [x64] os: [android] @@ -732,8 +732,8 @@ packages: cpu: [arm64] os: [darwin] - '@esbuild/darwin-arm64@0.25.10': - resolution: {integrity: sha512-JC74bdXcQEpW9KkV326WpZZjLguSZ3DfS8wrrvPMHgQOIEIG/sPXEN/V8IssoJhbefLRcRqw6RQH2NnpdprtMA==} + '@esbuild/darwin-arm64@0.25.11': + resolution: {integrity: sha512-VekY0PBCukppoQrycFxUqkCojnTQhdec0vevUL/EDOCnXd9LKWqD/bHwMPzigIJXPhC59Vd1WFIL57SKs2mg4w==} engines: {node: '>=18'} cpu: [arm64] os: [darwin] @@ -750,8 +750,8 @@ packages: cpu: [x64] os: [darwin] - '@esbuild/darwin-x64@0.25.10': - resolution: {integrity: sha512-tguWg1olF6DGqzws97pKZ8G2L7Ig1vjDmGTwcTuYHbuU6TTjJe5FXbgs5C1BBzHbJ2bo1m3WkQDbWO2PvamRcg==} + '@esbuild/darwin-x64@0.25.11': + resolution: {integrity: sha512-+hfp3yfBalNEpTGp9loYgbknjR695HkqtY3d3/JjSRUyPg/xd6q+mQqIb5qdywnDxRZykIHs3axEqU6l1+oWEQ==} engines: {node: '>=18'} cpu: [x64] os: [darwin] @@ -768,8 +768,8 @@ packages: cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-arm64@0.25.10': - resolution: {integrity: sha512-3ZioSQSg1HT2N05YxeJWYR+Libe3bREVSdWhEEgExWaDtyFbbXWb49QgPvFH8u03vUPX10JhJPcz7s9t9+boWg==} + '@esbuild/freebsd-arm64@0.25.11': + resolution: {integrity: sha512-CmKjrnayyTJF2eVuO//uSjl/K3KsMIeYeyN7FyDBjsR3lnSJHaXlVoAK8DZa7lXWChbuOk7NjAc7ygAwrnPBhA==} engines: {node: '>=18'} cpu: [arm64] os: [freebsd] @@ -786,8 +786,8 @@ packages: cpu: [x64] os: [freebsd] - '@esbuild/freebsd-x64@0.25.10': - resolution: {integrity: sha512-LLgJfHJk014Aa4anGDbh8bmI5Lk+QidDmGzuC2D+vP7mv/GeSN+H39zOf7pN5N8p059FcOfs2bVlrRr4SK9WxA==} + '@esbuild/freebsd-x64@0.25.11': + resolution: {integrity: sha512-Dyq+5oscTJvMaYPvW3x3FLpi2+gSZTCE/1ffdwuM6G1ARang/mb3jvjxs0mw6n3Lsw84ocfo9CrNMqc5lTfGOw==} engines: {node: '>=18'} cpu: [x64] os: [freebsd] @@ -804,8 +804,8 @@ packages: cpu: [arm64] os: [linux] - '@esbuild/linux-arm64@0.25.10': - resolution: {integrity: sha512-5luJWN6YKBsawd5f9i4+c+geYiVEw20FVW5x0v1kEMWNq8UctFjDiMATBxLvmmHA4bf7F6hTRaJgtghFr9iziQ==} + '@esbuild/linux-arm64@0.25.11': + resolution: {integrity: sha512-Qr8AzcplUhGvdyUF08A1kHU3Vr2O88xxP0Tm8GcdVOUm25XYcMPp2YqSVHbLuXzYQMf9Bh/iKx7YPqECs6ffLA==} engines: {node: '>=18'} cpu: [arm64] os: [linux] @@ -822,8 +822,8 @@ packages: cpu: [arm] os: [linux] - '@esbuild/linux-arm@0.25.10': - resolution: {integrity: sha512-oR31GtBTFYCqEBALI9r6WxoU/ZofZl962pouZRTEYECvNF/dtXKku8YXcJkhgK/beU+zedXfIzHijSRapJY3vg==} + '@esbuild/linux-arm@0.25.11': + resolution: {integrity: sha512-TBMv6B4kCfrGJ8cUPo7vd6NECZH/8hPpBHHlYI3qzoYFvWu2AdTvZNuU/7hsbKWqu/COU7NIK12dHAAqBLLXgw==} engines: {node: '>=18'} cpu: [arm] os: [linux] @@ -840,8 +840,8 @@ packages: cpu: [ia32] os: [linux] - '@esbuild/linux-ia32@0.25.10': - resolution: {integrity: sha512-NrSCx2Kim3EnnWgS4Txn0QGt0Xipoumb6z6sUtl5bOEZIVKhzfyp/Lyw4C1DIYvzeW/5mWYPBFJU3a/8Yr75DQ==} + '@esbuild/linux-ia32@0.25.11': + resolution: {integrity: sha512-TmnJg8BMGPehs5JKrCLqyWTVAvielc615jbkOirATQvWWB1NMXY77oLMzsUjRLa0+ngecEmDGqt5jiDC6bfvOw==} engines: {node: '>=18'} cpu: [ia32] os: [linux] @@ -858,8 +858,8 @@ packages: cpu: [loong64] os: [linux] - '@esbuild/linux-loong64@0.25.10': - resolution: {integrity: sha512-xoSphrd4AZda8+rUDDfD9J6FUMjrkTz8itpTITM4/xgerAZZcFW7Dv+sun7333IfKxGG8gAq+3NbfEMJfiY+Eg==} + '@esbuild/linux-loong64@0.25.11': + resolution: {integrity: sha512-DIGXL2+gvDaXlaq8xruNXUJdT5tF+SBbJQKbWy/0J7OhU8gOHOzKmGIlfTTl6nHaCOoipxQbuJi7O++ldrxgMw==} engines: {node: '>=18'} cpu: [loong64] os: [linux] @@ -876,8 +876,8 @@ packages: cpu: [mips64el] os: [linux] - '@esbuild/linux-mips64el@0.25.10': - resolution: {integrity: sha512-ab6eiuCwoMmYDyTnyptoKkVS3k8fy/1Uvq7Dj5czXI6DF2GqD2ToInBI0SHOp5/X1BdZ26RKc5+qjQNGRBelRA==} + '@esbuild/linux-mips64el@0.25.11': + resolution: {integrity: sha512-Osx1nALUJu4pU43o9OyjSCXokFkFbyzjXb6VhGIJZQ5JZi8ylCQ9/LFagolPsHtgw6himDSyb5ETSfmp4rpiKQ==} engines: {node: '>=18'} cpu: [mips64el] os: [linux] @@ -894,8 +894,8 @@ packages: cpu: [ppc64] os: [linux] - '@esbuild/linux-ppc64@0.25.10': - resolution: {integrity: sha512-NLinzzOgZQsGpsTkEbdJTCanwA5/wozN9dSgEl12haXJBzMTpssebuXR42bthOF3z7zXFWH1AmvWunUCkBE4EA==} + '@esbuild/linux-ppc64@0.25.11': + resolution: {integrity: sha512-nbLFgsQQEsBa8XSgSTSlrnBSrpoWh7ioFDUmwo158gIm5NNP+17IYmNWzaIzWmgCxq56vfr34xGkOcZ7jX6CPw==} engines: {node: '>=18'} cpu: [ppc64] os: [linux] @@ -912,8 +912,8 @@ packages: cpu: [riscv64] os: [linux] - '@esbuild/linux-riscv64@0.25.10': - resolution: {integrity: sha512-FE557XdZDrtX8NMIeA8LBJX3dC2M8VGXwfrQWU7LB5SLOajfJIxmSdyL/gU1m64Zs9CBKvm4UAuBp5aJ8OgnrA==} + '@esbuild/linux-riscv64@0.25.11': + resolution: {integrity: sha512-HfyAmqZi9uBAbgKYP1yGuI7tSREXwIb438q0nqvlpxAOs3XnZ8RsisRfmVsgV486NdjD7Mw2UrFSw51lzUk1ww==} engines: {node: '>=18'} cpu: [riscv64] os: [linux] @@ -930,8 +930,8 @@ packages: cpu: [s390x] os: [linux] - '@esbuild/linux-s390x@0.25.10': - resolution: {integrity: sha512-3BBSbgzuB9ajLoVZk0mGu+EHlBwkusRmeNYdqmznmMc9zGASFjSsxgkNsqmXugpPk00gJ0JNKh/97nxmjctdew==} + '@esbuild/linux-s390x@0.25.11': + resolution: {integrity: sha512-HjLqVgSSYnVXRisyfmzsH6mXqyvj0SA7pG5g+9W7ESgwA70AXYNpfKBqh1KbTxmQVaYxpzA/SvlB9oclGPbApw==} engines: {node: '>=18'} cpu: [s390x] os: [linux] @@ -948,14 +948,14 @@ packages: cpu: [x64] os: [linux] - '@esbuild/linux-x64@0.25.10': - resolution: {integrity: sha512-QSX81KhFoZGwenVyPoberggdW1nrQZSvfVDAIUXr3WqLRZGZqWk/P4T8p2SP+de2Sr5HPcvjhcJzEiulKgnxtA==} + '@esbuild/linux-x64@0.25.11': + resolution: {integrity: sha512-HSFAT4+WYjIhrHxKBwGmOOSpphjYkcswF449j6EjsjbinTZbp8PJtjsVK1XFJStdzXdy/jaddAep2FGY+wyFAQ==} engines: {node: '>=18'} cpu: [x64] os: [linux] - '@esbuild/netbsd-arm64@0.25.10': - resolution: {integrity: sha512-AKQM3gfYfSW8XRk8DdMCzaLUFB15dTrZfnX8WXQoOUpUBQ+NaAFCP1kPS/ykbbGYz7rxn0WS48/81l9hFl3u4A==} + '@esbuild/netbsd-arm64@0.25.11': + resolution: {integrity: sha512-hr9Oxj1Fa4r04dNpWr3P8QKVVsjQhqrMSUzZzf+LZcYjZNqhA3IAfPQdEh1FLVUJSiu6sgAwp3OmwBfbFgG2Xg==} engines: {node: '>=18'} cpu: [arm64] os: [netbsd] @@ -972,14 +972,14 @@ packages: cpu: [x64] os: [netbsd] - '@esbuild/netbsd-x64@0.25.10': - resolution: {integrity: sha512-7RTytDPGU6fek/hWuN9qQpeGPBZFfB4zZgcz2VK2Z5VpdUxEI8JKYsg3JfO0n/Z1E/6l05n0unDCNc4HnhQGig==} + '@esbuild/netbsd-x64@0.25.11': + resolution: {integrity: sha512-u7tKA+qbzBydyj0vgpu+5h5AeudxOAGncb8N6C9Kh1N4n7wU1Xw1JDApsRjpShRpXRQlJLb9wY28ELpwdPcZ7A==} engines: {node: '>=18'} cpu: [x64] os: [netbsd] - '@esbuild/openbsd-arm64@0.25.10': - resolution: {integrity: sha512-5Se0VM9Wtq797YFn+dLimf2Zx6McttsH2olUBsDml+lm0GOCRVebRWUvDtkY4BWYv/3NgzS8b/UM3jQNh5hYyw==} + '@esbuild/openbsd-arm64@0.25.11': + resolution: {integrity: sha512-Qq6YHhayieor3DxFOoYM1q0q1uMFYb7cSpLD2qzDSvK1NAvqFi8Xgivv0cFC6J+hWVw2teCYltyy9/m/14ryHg==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] @@ -996,14 +996,14 @@ packages: cpu: [x64] os: [openbsd] - '@esbuild/openbsd-x64@0.25.10': - resolution: {integrity: sha512-XkA4frq1TLj4bEMB+2HnI0+4RnjbuGZfet2gs/LNs5Hc7D89ZQBHQ0gL2ND6Lzu1+QVkjp3x1gIcPKzRNP8bXw==} + '@esbuild/openbsd-x64@0.25.11': + resolution: {integrity: sha512-CN+7c++kkbrckTOz5hrehxWN7uIhFFlmS/hqziSFVWpAzpWrQoAG4chH+nN3Be+Kzv/uuo7zhX716x3Sn2Jduw==} engines: {node: '>=18'} cpu: [x64] os: [openbsd] - '@esbuild/openharmony-arm64@0.25.10': - resolution: {integrity: sha512-AVTSBhTX8Y/Fz6OmIVBip9tJzZEUcY8WLh7I59+upa5/GPhh2/aM6bvOMQySspnCCHvFi79kMtdJS1w0DXAeag==} + '@esbuild/openharmony-arm64@0.25.11': + resolution: {integrity: sha512-rOREuNIQgaiR+9QuNkbkxubbp8MSO9rONmwP5nKncnWJ9v5jQ4JxFnLu4zDSRPf3x4u+2VN4pM4RdyIzDty/wQ==} engines: {node: '>=18'} cpu: [arm64] os: [openharmony] @@ -1020,8 +1020,8 @@ packages: cpu: [x64] os: [sunos] - '@esbuild/sunos-x64@0.25.10': - resolution: {integrity: sha512-fswk3XT0Uf2pGJmOpDB7yknqhVkJQkAQOcW/ccVOtfx05LkbWOaRAtn5SaqXypeKQra1QaEa841PgrSL9ubSPQ==} + '@esbuild/sunos-x64@0.25.11': + resolution: {integrity: sha512-nq2xdYaWxyg9DcIyXkZhcYulC6pQ2FuCgem3LI92IwMgIZ69KHeY8T4Y88pcwoLIjbed8n36CyKoYRDygNSGhA==} engines: {node: '>=18'} cpu: [x64] os: [sunos] @@ -1038,8 +1038,8 @@ packages: cpu: [arm64] os: [win32] - '@esbuild/win32-arm64@0.25.10': - resolution: {integrity: sha512-ah+9b59KDTSfpaCg6VdJoOQvKjI33nTaQr4UluQwW7aEwZQsbMCfTmfEO4VyewOxx4RaDT/xCy9ra2GPWmO7Kw==} + '@esbuild/win32-arm64@0.25.11': + resolution: {integrity: sha512-3XxECOWJq1qMZ3MN8srCJ/QfoLpL+VaxD/WfNRm1O3B4+AZ/BnLVgFbUV3eiRYDMXetciH16dwPbbHqwe1uU0Q==} engines: {node: '>=18'} cpu: [arm64] os: [win32] @@ -1056,8 +1056,8 @@ packages: cpu: [ia32] os: [win32] - '@esbuild/win32-ia32@0.25.10': - resolution: {integrity: sha512-QHPDbKkrGO8/cz9LKVnJU22HOi4pxZnZhhA2HYHez5Pz4JeffhDjf85E57Oyco163GnzNCVkZK0b/n4Y0UHcSw==} + '@esbuild/win32-ia32@0.25.11': + resolution: {integrity: sha512-3ukss6gb9XZ8TlRyJlgLn17ecsK4NSQTmdIXRASVsiS2sQ6zPPZklNJT5GR5tE/MUarymmy8kCEf5xPCNCqVOA==} engines: {node: '>=18'} cpu: [ia32] os: [win32] @@ -1074,8 +1074,8 @@ packages: cpu: [x64] os: [win32] - '@esbuild/win32-x64@0.25.10': - resolution: {integrity: sha512-9KpxSVFCu0iK1owoez6aC/s/EdUQLDN3adTxGCqxMVhrPDj6bt5dbrHDXUuq+Bs2vATFBBrQS5vdQ/Ed2P+nbw==} + '@esbuild/win32-x64@0.25.11': + resolution: {integrity: sha512-D7Hpz6A2L4hzsRpPaCYkQnGOotdUpDzSGRIv9I+1ITdHROSFUWW95ZPZWQmGka1Fg7W3zFJowyn9WGwMJ0+KPA==} engines: {node: '>=18'} cpu: [x64] os: [win32] @@ -1239,23 +1239,23 @@ packages: '@floating-ui/utils@0.2.10': resolution: {integrity: sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ==} - '@formatjs/ecma402-abstract@2.3.4': - resolution: {integrity: sha512-qrycXDeaORzIqNhBOx0btnhpD1c+/qFIHAN9znofuMJX6QBwtbrmlpWfD4oiUUD2vJUOIYFA/gYtg2KAMGG7sA==} + '@formatjs/ecma402-abstract@2.3.6': + resolution: {integrity: sha512-HJnTFeRM2kVFVr5gr5kH1XP6K0JcJtE7Lzvtr3FS/so5f1kpsqqqxy5JF+FRaO6H2qmcMfAUIox7AJteieRtVw==} '@formatjs/fast-memoize@2.2.7': resolution: {integrity: sha512-Yabmi9nSvyOMrlSeGGWDiH7rf3a7sIwplbvo/dlz9WCIjzIQAfy1RMf4S0X3yG724n5Ghu2GmEl5NJIV6O9sZQ==} - '@formatjs/icu-messageformat-parser@2.11.2': - resolution: {integrity: sha512-AfiMi5NOSo2TQImsYAg8UYddsNJ/vUEv/HaNqiFjnI3ZFfWihUtD5QtuX6kHl8+H+d3qvnE/3HZrfzgdWpsLNA==} + '@formatjs/icu-messageformat-parser@2.11.4': + resolution: {integrity: sha512-7kR78cRrPNB4fjGFZg3Rmj5aah8rQj9KPzuLsmcSn4ipLXQvC04keycTI1F7kJYDwIXtT2+7IDEto842CfZBtw==} - '@formatjs/icu-skeleton-parser@1.8.14': - resolution: {integrity: sha512-i4q4V4qslThK4Ig8SxyD76cp3+QJ3sAqr7f6q9VVfeGtxG9OhiAk3y9XF6Q41OymsKzsGQ6OQQoJNY4/lI8TcQ==} + '@formatjs/icu-skeleton-parser@1.8.16': + resolution: {integrity: sha512-H13E9Xl+PxBd8D5/6TVUluSpxGNvFSlN/b3coUp0e0JpuWXXnQDiavIpY3NnvSp4xhEMoXyyBvVfdFX8jglOHQ==} '@formatjs/intl-localematcher@0.5.10': resolution: {integrity: sha512-af3qATX+m4Rnd9+wHcjJ4w2ijq+rAVP3CCinJQvFv1kgSu1W6jypUmvleJxcewdxmutM8dmIRZFxO/IQBZmP2Q==} - '@formatjs/intl-localematcher@0.6.1': - resolution: {integrity: sha512-ePEgLgVCqi2BBFnTMWPfIghu6FkbZnnBVhO2sSxvLfrdFw7wCHAHiDoM2h4NRgjbaY7+B7HgOLZGkK187pZTZg==} + '@formatjs/intl-localematcher@0.6.2': + resolution: {integrity: sha512-XOMO2Hupl0wdd172Y06h6kLpBz6Dv+J4okPLl4LPtzbr8f66WbIoy4ev98EBuZ6ZK4h5ydTN6XneT4QVpD7cdA==} '@graphprotocol/contracts@7.3.0': resolution: {integrity: sha512-uEjgrBN4WCkJhSrUi5O64cNbU5OWI7iwy/03Er9n+J7o3WEspizpLJvSGXql8E0XtI0ygBaHBTwJfPo7SUphkg==} @@ -1403,8 +1403,8 @@ packages: cpu: [x64] os: [win32] - '@internationalized/date@3.9.0': - resolution: {integrity: sha512-yaN3brAnHRD+4KyyOsJyk49XUvj2wtbNACSqg0bz3u8t2VuzhC8Q5dfRnrSxjnnbDb+ienBnkn1TzQfE154vyg==} + '@internationalized/date@3.10.0': + resolution: {integrity: sha512-oxDR/NTEJ1k+UFVQElaNIk65E/Z83HK1z1WI3lQyhTtnNg4R5oVXaPzK3jcpKG8UHKDVuDQHzn+wsxSz8RP3aw==} '@internationalized/message@3.1.8': resolution: {integrity: sha512-Rwk3j/TlYZhn3HQ6PyXUV0XP9Uv42jqZGNegt0BXlxjE6G3+LwHjbQZAGHhCnCPdaA6Tvd3ma/7QzLlLkJxAWA==} @@ -1455,8 +1455,8 @@ packages: '@types/react': '>=16' react: '>=16' - '@mermaid-js/parser@0.6.2': - resolution: {integrity: sha512-+PO02uGF6L6Cs0Bw8RpGhikVvMWEysfAyl27qTlroUB8jSWr1lL0Sf6zi78ZxlSnmgSY2AMMKVgghnN9jTtwkQ==} + '@mermaid-js/parser@0.6.3': + resolution: {integrity: sha512-lnjOhe7zyHjc+If7yT4zoedx2vo4sHaTmtkl1+or8BRTnCtDmcTpAjpzDSfCZrshM5bCoz0GyidzadJAH1xobA==} '@mixpanel/rrdom@2.0.0-alpha.18.2': resolution: {integrity: sha512-vX/tbnS14ZzzatC7vOyvAm9tOLU8tof0BuppBlphzEx1YHTSw8DQiAmyAc0AmXidchLV0W+cUHV/WsehPLh2hQ==} @@ -1470,8 +1470,8 @@ packages: '@mixpanel/rrweb-utils@2.0.0-alpha.18.2': resolution: {integrity: sha512-OomKIB6GTx5xvCLJ7iic2khT/t/tnCJUex13aEqsbSqIT/UzUUsqf+LTrgUK5ex+f6odmkCNjre2y5jvpNqn+g==} - '@mixpanel/rrweb@2.0.0-alpha.18.1': - resolution: {integrity: sha512-LH2wmwLPSAtq7j3iqxm32cFwDCp0xqLiXKDJq1B7WWGowNfrGOfVjqZ4ftf5dXMm0w2UNpx8tWfi+9Tt4YMt0g==} + '@mixpanel/rrweb@2.0.0-alpha.18.2': + resolution: {integrity: sha512-J3dVTEu6Z4p8di7y9KKvUooNuBjX97DdG6XGWoPEPi07A9512h9M8MEtvlY3mK0PGfuC0Mz5Pv/Ws6gjGYfKQg==} '@napi-rs/simple-git-android-arm-eabi@0.1.22': resolution: {integrity: sha512-JQZdnDNm8o43A5GOzwN/0Tz3CDBQtBUNqzVwEopm32uayjdjxev1Csp1JeaqF3v9djLDIvsSE39ecsN2LhCKKQ==} @@ -2235,122 +2235,122 @@ packages: '@radix-ui/rect@1.1.1': resolution: {integrity: sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==} - '@react-aria/breadcrumbs@3.5.28': - resolution: {integrity: sha512-6S3QelpajodEzN7bm49XXW5gGoZksK++cl191W0sexq/E5hZHAEA9+CFC8pL3px13ji7qHGqKAxOP4IUVBdVpQ==} + '@react-aria/breadcrumbs@3.5.29': + resolution: {integrity: sha512-rKS0dryllaZJqrr3f/EAf2liz8CBEfmL5XACj+Z1TAig6GIYe1QuA3BtkX0cV9OkMugXdX8e3cbA7nD10ORRqg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/button@3.14.1': - resolution: {integrity: sha512-Ug06unKEYVG3OF6zKmpVR7VfLzpj7eJVuFo3TCUxwFJG7DI28pZi2TaGWnhm7qjkxfl1oz0avQiHVfDC99gSuw==} + '@react-aria/button@3.14.2': + resolution: {integrity: sha512-VbLIA+Kd6f/MDjd+TJBUg2+vNDw66pnvsj2E4RLomjI9dfBuN7d+Yo2UnsqKVyhePjCUZ6xxa2yDuD63IOSIYA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/calendar@3.9.1': - resolution: {integrity: sha512-dCJliRIi3x3VmAZkJDNTZddq0+QoUX9NS7GgdqPPYcJIMbVPbyLWL61//0SrcCr3MuSRCoI1eQZ8PkQe/2PJZQ==} + '@react-aria/calendar@3.9.2': + resolution: {integrity: sha512-uSLxLgOPRnEU4Jg59lAhUVA+uDx/55NBg4lpfsP2ynazyiJ5LCXmYceJi+VuOqMml7d9W0dB87OldOeLdIxYVA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/checkbox@3.16.1': - resolution: {integrity: sha512-YcG3QhuGIwqPHo4GVGVmwxPM5Ayq9CqYfZjla/KTfJILPquAJ12J7LSMpqS/Z5TlMNgIIqZ3ZdrYmjQlUY7eUg==} + '@react-aria/checkbox@3.16.2': + resolution: {integrity: sha512-29Mj9ZqXioJ0bcMnNGooHztnTau5pikZqX3qCRj5bYR3by/ZFFavYoMroh9F7s/MbFm/tsKX+Sf02lYFEdXRjA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/color@3.1.1': - resolution: {integrity: sha512-4+woybtn4kh5ytggWQ06bqqWsoucOrxwNrwW1XP6EmvcjIcsfVW+VwFwM5ZYa2LGF+fHiW3dM4bjRqVa7i9PVg==} + '@react-aria/color@3.1.2': + resolution: {integrity: sha512-jCC+Q7rAQGLQBkHjkPAeDuGYuMbc4neifjlNRiyZ9as1z4gg63H8MteoWYYk6K4vCKKxSixgt8MfI29XWMOWPQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/combobox@3.13.2': - resolution: {integrity: sha512-PNyqlaM19A+lKX9hwqkKTXvWDilCKaRH2RdrB/C5AfmGi3bh/IKsu66c8ohgadXB2AIdJB36EOOm3hNh8G9DqQ==} + '@react-aria/combobox@3.14.0': + resolution: {integrity: sha512-z4ro0Hma//p4nL2IJx5iUa7NwxeXbzSoZ0se5uTYjG1rUUMszg+wqQh/AQoL+eiULn7rs18JY9wwNbVIkRNKWA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/datepicker@3.15.1': - resolution: {integrity: sha512-RfUOvsupON6E5ZELpBgb9qxsilkbqwzsZ78iqCDTVio+5kc5G9jVeHEIQOyHnavi/TmJoAnbmmVpEbE6M9lYJQ==} + '@react-aria/datepicker@3.15.2': + resolution: {integrity: sha512-th078hyNqPf4P2K10su/y32zPDjs3lOYVdHvsL9/+5K1dnTvLHCK5vgUyLuyn8FchhF7cmHV49D+LZVv65PEpQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/dialog@3.5.30': - resolution: {integrity: sha512-fiodaeMSTiC4qKNwnCLbNykyvfcxuz/PiU/pBNhWYd4lUrX1TauBQb0++o5/K6OHt8iB+A7/LSHRbPtyOSWE9g==} + '@react-aria/dialog@3.5.31': + resolution: {integrity: sha512-inxQMyrzX0UBW9Mhraq0nZ4HjHdygQvllzloT1E/RlDd61lr3RbmJR6pLsrbKOTtSvDIBJpCso1xEdHCFNmA0Q==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/disclosure@3.0.8': - resolution: {integrity: sha512-Q2v6czm3ViMTw7J+GCWdXw3rZ5Fgmy97gpSQjpEoxSyqA1UfpRRvNa+XYoXmbpaY1MGhtUX3m2GgZ4IuhhMHVQ==} + '@react-aria/disclosure@3.1.0': + resolution: {integrity: sha512-5996BeBpnj+yKXYysz+UuhFQxGFPvaZZ3zNBd052wz/i+TVFVGSqqYJ6cwZyO1AfBR8zOT0ZIiK4EC3ETwSvtQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/dnd@3.11.2': - resolution: {integrity: sha512-xaIUV0zPtUTLIBoE7qlGFPfRTfyDJT78fDzawYq6FwZcjgrl8X408UDCUaKk6xSJRh9UjNn78hil1WDYTLFNWA==} + '@react-aria/dnd@3.11.3': + resolution: {integrity: sha512-MyTziciik1Owz3rqDghu0K3ZtTFvmj/R2ZsLDwbU9N4hKqGX/BKnrI8SytTn8RDqVv5LmA/GhApLngiupTAsXw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/focus@3.21.1': - resolution: {integrity: sha512-hmH1IhHlcQ2lSIxmki1biWzMbGgnhdxJUM0MFfzc71Rv6YAzhlx4kX3GYn4VNcjCeb6cdPv4RZ5vunV4kgMZYQ==} + '@react-aria/focus@3.21.2': + resolution: {integrity: sha512-JWaCR7wJVggj+ldmM/cb/DXFg47CXR55lznJhZBh4XVqJjMKwaOOqpT5vNN7kpC1wUpXicGNuDnJDN1S/+6dhQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/form@3.1.1': - resolution: {integrity: sha512-PjZC25UgH5orit9p56Ymbbo288F3eaDd3JUvD8SG+xgx302HhlFAOYsQLLAb4k4H03bp0gWtlUEkfX6KYcE1Tw==} + '@react-aria/form@3.1.2': + resolution: {integrity: sha512-R3i7L7Ci61PqZQvOrnL9xJeWEbh28UkTVgkj72EvBBn39y4h7ReH++0stv7rRs8p5ozETSKezBbGfu4UsBewWw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/grid@3.14.4': - resolution: {integrity: sha512-l1FLQNKnoHpY4UClUTPUV0AqJ5bfAULEE0ErY86KznWLd+Hqzo7mHLqqDV02CDa/8mIUcdoax/MrYYIbPDlOZA==} + '@react-aria/grid@3.14.5': + resolution: {integrity: sha512-XHw6rgjlTqc85e3zjsWo3U0EVwjN5MOYtrolCKc/lc2ItNdcY3OlMhpsU9+6jHwg/U3VCSWkGvwAz9hg7krd8Q==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/gridlist@3.14.0': - resolution: {integrity: sha512-8NWDaUbPe6ujI+kSvDqr2onPYWlBXiaLCQ6nfYOo+GFKxeVCsv4a2I5HAAoGf9THNQ5b8b8kJa+M0xyL1Z71XA==} + '@react-aria/gridlist@3.14.1': + resolution: {integrity: sha512-keS03Am07aOn7RuNaRsMOyh0jscyhDn95asCVy4lxhl9A9TFk1Jw0o2L6q6cWRj1gFiKeacj/otG5H8ZKQQ2Wg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/i18n@3.12.12': - resolution: {integrity: sha512-JN6p+Xc6Pu/qddGRoeYY6ARsrk2Oz7UiQc9nLEPOt3Ch+blJZKWwDjcpo/p6/wVZdD/2BgXS7El6q6+eMg7ibw==} + '@react-aria/i18n@3.12.13': + resolution: {integrity: sha512-YTM2BPg0v1RvmP8keHenJBmlx8FXUKsdYIEX7x6QWRd1hKlcDwphfjzvt0InX9wiLiPHsT5EoBTpuUk8SXc0Mg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/interactions@3.25.5': - resolution: {integrity: sha512-EweYHOEvMwef/wsiEqV73KurX/OqnmbzKQa2fLxdULbec5+yDj6wVGaRHIzM4NiijIDe+bldEl5DG05CAKOAHA==} + '@react-aria/interactions@3.25.6': + resolution: {integrity: sha512-5UgwZmohpixwNMVkMvn9K1ceJe6TzlRlAfuYoQDUuOkk62/JVJNDLAPKIf5YMRc7d2B0rmfgaZLMtbREb0Zvkw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/label@3.7.21': - resolution: {integrity: sha512-8G+059/GZahgQbrhMcCcVcrjm7W+pfzrypH/Qkjo7C1yqPGt6geeFwWeOIbiUZoI0HD9t9QvQPryd6m46UC7Tg==} + '@react-aria/label@3.7.22': + resolution: {integrity: sha512-jLquJeA5ZNqDT64UpTc9XJ7kQYltUlNcgxZ37/v4mHe0UZ7QohCKdKQhXHONb0h2jjNUpp2HOZI8J9++jOpzxA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/landmark@3.0.6': - resolution: {integrity: sha512-dMPBqJWTDAr3Lj5hA+XYDH2PWqtFghYy+y7iq7K5sK/96cub8hZEUjhwn+HGgHsLerPp0dWt293nKupAJnf4Vw==} + '@react-aria/landmark@3.0.7': + resolution: {integrity: sha512-t8c610b8hPLS6Vwv+rbuSyljZosI1s5+Tosfa0Fk4q7d+Ex6Yj7hLfUFy59GxZAufhUYfGX396fT0gPqAbU1tg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/link@3.8.5': - resolution: {integrity: sha512-klhV4roPp5MLRXJv1N+7SXOj82vx4gzVpuwQa3vouA+YI1my46oNzwgtkLGSTvE9OvDqYzPDj2YxFYhMywrkuw==} + '@react-aria/link@3.8.6': + resolution: {integrity: sha512-7F7UDJnwbU9IjfoAdl6f3Hho5/WB7rwcydUOjUux0p7YVWh/fTjIFjfAGyIir7MJhPapun1D0t97QQ3+8jXVcg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/listbox@3.14.8': - resolution: {integrity: sha512-uRgbuD9afFv0PDhQ/VXCmAwlYctIyKRzxztkqp1p/1yz/tn/hs+bG9kew9AI02PtlRO1mSc+32O+mMDXDer8hA==} + '@react-aria/listbox@3.15.0': + resolution: {integrity: sha512-Ub1Wu79R9sgxM7h4HeEdjOgOKDHwduvYcnDqsSddGXgpkL8ADjsy2YUQ0hHY5VnzA4BxK36bLp4mzSna8Qvj1w==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -2358,74 +2358,74 @@ packages: '@react-aria/live-announcer@3.4.4': resolution: {integrity: sha512-PTTBIjNRnrdJOIRTDGNifY2d//kA7GUAwRFJNOEwSNG4FW+Bq9awqLiflw0JkpyB0VNIwou6lqKPHZVLsGWOXA==} - '@react-aria/menu@3.19.2': - resolution: {integrity: sha512-WzDLW2MotL0L5/LEwc5oGgISf2ODuw4FnRpF0Zk+J4tKFfC88odvKz848ubBvThRXuXEvL0BHY+WqtM+j9fn3g==} + '@react-aria/menu@3.19.3': + resolution: {integrity: sha512-52fh8y8b2776R2VrfZPpUBJYC9oTP7XDy+zZuZTxPEd7Ywk0JNUl5F92y6ru22yPkS13sdhrNM/Op+V/KulmAg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/meter@3.4.26': - resolution: {integrity: sha512-BI+Ri0dkhx9jjf6yPbOLl69M6808Fi08KNEmserMEapy++5usB/8krh9ARuR0GZYUPFOcny0Ml0or/HqamyFvw==} + '@react-aria/meter@3.4.27': + resolution: {integrity: sha512-andOOdJkgRJF9vBi5VWRmFodK+GT+5X1lLeNUmb4qOX8/MVfX/RbK72LDeIhd7xC7rSCFHj3WvZ198rK4q0k3w==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/numberfield@3.12.1': - resolution: {integrity: sha512-3KjxGgWiF4GRvIyqrE3nCndkkEJ68v86y0nx89TpAjdzg7gCgdXgU2Lr4BhC/xImrmlqCusw0IBUMhsEq9EQWA==} + '@react-aria/numberfield@3.12.2': + resolution: {integrity: sha512-M2b+z0HIXiXpGAWOQkO2kpIjaLNUXJ5Q3/GMa3Fkr+B1piFX0VuOynYrtddKVrmXCe+r5t+XcGb0KS29uqv7nQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/overlays@3.29.1': - resolution: {integrity: sha512-Yz92XNPnbrTnxrvNrY/fXJ3iWaYNrj0q24ddvZNNKDcWak0S1/mQeUwNb+PwS2AryhFU5VQqKz5rNsM96TKmPQ==} + '@react-aria/overlays@3.30.0': + resolution: {integrity: sha512-UpjqSjYZx5FAhceWCRVsW6fX1sEwya1fQ/TKkL53FAlLFR8QKuoKqFlmiL43YUFTcGK3UdEOy3cWTleLQwdSmQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/progress@3.4.26': - resolution: {integrity: sha512-EJBzbE0IjXrJ19ofSyNKDnqC70flUM0Z+9heMRPLi6Uz01o6Uuz9tjyzmoPnd9Q1jnTT7dCl7ydhdYTGsWFcUg==} + '@react-aria/progress@3.4.27': + resolution: {integrity: sha512-0OA1shs1575g1zmO8+rWozdbTnxThFFhOfuoL1m7UV5Dley6FHpueoKB1ECv7B+Qm4dQt6DoEqLg7wsbbQDhmg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/radio@3.12.1': - resolution: {integrity: sha512-feZdMJyNp+UX03seIX0W6gdUk8xayTY+U0Ct61eci6YXzyyZoL2PVh49ojkbyZ2UZA/eXeygpdF5sgQrKILHCA==} + '@react-aria/radio@3.12.2': + resolution: {integrity: sha512-I11f6I90neCh56rT/6ieAs3XyDKvEfbj/QmbU5cX3p+SJpRRPN0vxQi5D1hkh0uxDpeClxygSr31NmZsd4sqfg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/searchfield@3.8.8': - resolution: {integrity: sha512-Yn6esCYEym3Cwrh/OZt6o/RFzsG2zyCAEZf7BhWk6NWUvP6aPwHgoSDVSjDN6YnnPn4yMqkqPnZulHV4+MvE/w==} + '@react-aria/searchfield@3.8.9': + resolution: {integrity: sha512-Yt2pj8Wb5/XsUr2T0DQqFv+DlFpzzWIWnNr9cJATUcWV/xw6ok7YFEg9+7EHtBmsCQxFFJtock1QfZzBw6qLtQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/select@3.16.2': - resolution: {integrity: sha512-MwsOJ6FfPxzrLP6spnYg2SUeGKNm4m5vyH6GebecLxTO1ee7/YyTNP1xkrQTqPMP9xx6uqhzFLFuCym2b6ripA==} + '@react-aria/select@3.17.0': + resolution: {integrity: sha512-q5ZuyAn5jSOeI0Ys99951TaGcF4O7u1SSBVxPMwVVXOU8ZhToCNx+WG3n/JDYHEjqdo7sbsVRaPA7LkBzBGf5w==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/selection@3.25.1': - resolution: {integrity: sha512-HG+k3rDjuhnXPdVyv9CKiebee2XNkFYeYZBxEGlK3/pFVBzndnc8BXNVrXSgtCHLs2d090JBVKl1k912BPbj0Q==} + '@react-aria/selection@3.26.0': + resolution: {integrity: sha512-ZBH3EfWZ+RfhTj01dH8L17uT7iNbXWS8u77/fUpHgtrm0pwNVhx0TYVnLU1YpazQ/3WVpvWhmBB8sWwD1FlD/g==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/separator@3.4.12': - resolution: {integrity: sha512-rvFCPdOPMQKY/Bpv2jNzXtetCuBLYSRCvpzam1LpMaEgwau5yECbId66+M2UX/cscPccKNU537SM6ei2j7RGog==} + '@react-aria/separator@3.4.13': + resolution: {integrity: sha512-0NlcrdBfQbcjWEXdHl3+uSY1272n2ljT1gWL2RIf6aQsQWTZ0gz0rTgRHy0MTXN+y+tICItUERJT4vmTLtIzVg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/slider@3.8.1': - resolution: {integrity: sha512-uPgwZQrcuqHaLU2prJtPEPIyN9ugZ7qGgi0SB2U8tvoODNVwuPvOaSsvR98Mn6jiAzMFNoWMydeIi+J1OjvWsQ==} + '@react-aria/slider@3.8.2': + resolution: {integrity: sha512-6KyUGaVzRE4xAz1LKHbNh1q5wzxe58pdTHFSnxNe6nk1SCoHw7NfI4h2s2m6LgJ0megFxsT0Ir8aHaFyyxmbgg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/spinbutton@3.6.18': - resolution: {integrity: sha512-dnmh7sNsprhYTpqCJhcuc9QJ9C/IG/o9TkgW5a9qcd2vS+dzEgqAiJKIMbJFG9kiJymv2NwIPysF12IWix+J3A==} + '@react-aria/spinbutton@3.6.19': + resolution: {integrity: sha512-xOIXegDpts9t3RSHdIN0iYQpdts0FZ3LbpYJIYVvdEHo9OpDS+ElnDzCGtwZLguvZlwc5s1LAKuKopDUsAEMkw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -2436,74 +2436,74 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/switch@3.7.7': - resolution: {integrity: sha512-auV3g1qh+d/AZk7Idw2BOcYeXfCD9iDaiGmlcLJb9Eaz4nkq8vOkQxIXQFrn9Xhb+PfQzmQYKkt5N6P2ZNsw/g==} + '@react-aria/switch@3.7.8': + resolution: {integrity: sha512-AfsUq1/YiuoprhcBUD9vDPyWaigAwctQNW1fMb8dROL+i/12B+Zekj8Ml+jbU69/kIVtfL0Jl7/0Bo9KK3X0xQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/table@3.17.7': - resolution: {integrity: sha512-FxXryGTxePgh8plIxlOMwXdleGWjK52vsmbRoqz66lTIHMUMLTmmm+Y0V3lBOIoaW1rxvKcolYgS79ROnbDYBw==} + '@react-aria/table@3.17.8': + resolution: {integrity: sha512-bXiZoxTMbsqUJsYDhHPzKc3jw0HFJ/xMsJ49a0f7mp5r9zACxNLeIU0wJ4Uvx37dnYOHKzGliG+rj5l4sph7MA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/tabs@3.10.7': - resolution: {integrity: sha512-iA1M6H+N+9GggsEy/6MmxpMpeOocwYgFy2EoEl3it24RVccY6iZT4AweJq96s5IYga5PILpn7VVcpssvhkPgeA==} + '@react-aria/tabs@3.10.8': + resolution: {integrity: sha512-sPPJyTyoAqsBh76JinBAxStOcbjZvyWFYKpJ9Uqw+XT0ObshAPPFSGeh8DiQemPs02RwJdrfARPMhyqiX8t59A==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/tag@3.7.1': - resolution: {integrity: sha512-VpF26ez+QmEzTK8E9tXZ4cofa1wocjnIo/Bd1LCXgLCytnHAkYGxeIRm5QbznJ0aF/9UgR1QtMqhyRrCZg9QqA==} + '@react-aria/tag@3.7.2': + resolution: {integrity: sha512-JV679P5r4DftbqyNBRt7Nw9mP7dxaKPfikjyQuvUoEOa06wBLbM/hU9RJUPRvqK+Un6lgBDAmXD9NNf4N2xpdw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/textfield@3.18.1': - resolution: {integrity: sha512-8yCoirnQzbbQgdk5J5bqimEu3GhHZ9FXeMHez1OF+H+lpTwyTYQ9XgioEN3HKnVUBNEufG4lYkQMxTKJdq1v9g==} + '@react-aria/textfield@3.18.2': + resolution: {integrity: sha512-G+lM8VYSor6g9Yptc6hLZ6BF+0cq0pYol1z6wdQUQgJN8tg4HPtzq75lsZtlCSIznL3amgRAxJtd0dUrsAnvaQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/toast@3.0.7': - resolution: {integrity: sha512-nuxPQ7wcSTg9UNMhXl9Uwyc5you/D1RfwymI3VDa5OGTZdJOmV2j94nyjBfMO2168EYMZjw+wEovvOZphs2Pbw==} + '@react-aria/toast@3.0.8': + resolution: {integrity: sha512-rfJIms6AkMyQ7ZgKrMZgGfPwGcB/t1JoEwbc1PAmXcAvFI/hzF6YF7ZFDXiq38ucFsP9PnHmbXIzM9w4ccl18A==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/toggle@3.12.1': - resolution: {integrity: sha512-XaFiRs1KEcIT6bTtVY/KTQxw4kinemj/UwXw2iJTu9XS43hhJ/9cvj8KzNGrKGqaxTpOYj62TnSHZbSiFViHDA==} + '@react-aria/toggle@3.12.2': + resolution: {integrity: sha512-g25XLYqJuJpt0/YoYz2Rab8ax+hBfbssllcEFh0v0jiwfk2gwTWfRU9KAZUvxIqbV8Nm8EBmrYychDpDcvW1kw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/toolbar@3.0.0-beta.20': - resolution: {integrity: sha512-Kxvqw+TpVOE/eSi8RAQ9xjBQ2uXe8KkRvlRNQWQsrzkZDkXhzqGfQuJnBmozFxqpzSLwaVqQajHFUSvPAScT8Q==} + '@react-aria/toolbar@3.0.0-beta.21': + resolution: {integrity: sha512-yRCk/GD8g+BhdDgxd3I0a0c8Ni4Wyo6ERzfSoBkPkwQ4X2E2nkopmraM9D0fXw4UcIr4bnmvADzkHXtBN0XrBg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/tooltip@3.8.7': - resolution: {integrity: sha512-Aj7DPJYGZ9/+2ZfhkvbN7YMeA5qu4oy4LVQiMCpqNwcFzvhTAVhN7J7cS6KjA64fhd1shKm3BZ693Ez6lSpqwg==} + '@react-aria/tooltip@3.8.8': + resolution: {integrity: sha512-CmHUqtXtFWmG4AHMEr9hIVex+oscK6xcM2V47gq9ijNInxe3M6UBu/dBdkgGP/jYv9N7tzCAjTR8nNIHQXwvWw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/tree@3.1.3': - resolution: {integrity: sha512-CWjIvJS540Kzzxs1f4fF0ajPUfYoeptcA6MmXHBlCKE2euRSvKW6F1ZhvLVq81YsYWuAfBKnG2/JsTgBZnGPVQ==} + '@react-aria/tree@3.1.4': + resolution: {integrity: sha512-6pbFeN0dAsCOrFGUKU39CNjft20zCAjLfMqfkRWisL+JkUHI2nq6odUJF5jJTsU1C+1951+3oFOmVxPX+K+akQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/utils@3.30.1': - resolution: {integrity: sha512-zETcbDd6Vf9GbLndO6RiWJadIZsBU2MMm23rBACXLmpRztkrIqPEb2RVdlLaq1+GklDx0Ii6PfveVjx+8S5U6A==} + '@react-aria/utils@3.31.0': + resolution: {integrity: sha512-ABOzCsZrWzf78ysswmguJbx3McQUja7yeGj6/vZo4JVsZNlxAN+E9rs381ExBRI0KzVo6iBTeX5De8eMZPJXig==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/visually-hidden@3.8.27': - resolution: {integrity: sha512-hD1DbL3WnjPnCdlQjwe19bQVRAGJyN0Aaup+s7NNtvZUn7AjoEH78jo8TE+L8yM7z/OZUQF26laCfYqeIwWn4g==} + '@react-aria/visually-hidden@3.8.28': + resolution: {integrity: sha512-KRRjbVVob2CeBidF24dzufMxBveEUtUu7IM+hpdZKB+gxVROoh4XRLPv9SFmaH89Z7D9To3QoykVZoWD0lan6Q==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -2519,111 +2519,111 @@ packages: js-cookie: optional: true - '@react-stately/calendar@3.8.4': - resolution: {integrity: sha512-q9mq0ydOLS5vJoHLnYfSCS/vppfjbg0XHJlAoPR+w+WpYZF4wPP453SrlX9T1DbxCEYFTpcxcMk/O8SDW3miAw==} + '@react-stately/calendar@3.9.0': + resolution: {integrity: sha512-U5Nf2kx9gDhJRxdDUm5gjfyUlt/uUfOvM1vDW2UA62cA6+2k2cavMLc2wNlXOb/twFtl6p0joYKHG7T4xnEFkg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/checkbox@3.7.1': - resolution: {integrity: sha512-ezfKRJsDuRCLtNoNOi9JXCp6PjffZWLZ/vENW/gbRDL8i46RKC/HpfJrJhvTPmsLYazxPC99Me9iq3v0VoNCsw==} + '@react-stately/checkbox@3.7.2': + resolution: {integrity: sha512-j1ycUVz5JmqhaL6mDZgDNZqBilOB8PBW096sDPFaTtuYreDx2HOd1igxiIvwlvPESZwsJP7FVM3mYnaoXtpKPA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/collections@3.12.7': - resolution: {integrity: sha512-0kQc0mI986GOCQHvRy4L0JQiotIK/KmEhR9Mu/6V0GoSdqg5QeUe4kyoNWj3bl03uQXme80v0L2jLHt+fOHHjA==} + '@react-stately/collections@3.12.8': + resolution: {integrity: sha512-AceJYLLXt1Y2XIcOPi6LEJSs4G/ubeYW3LqOCQbhfIgMaNqKfQMIfagDnPeJX9FVmPFSlgoCBxb1pTJW2vjCAQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/color@3.9.1': - resolution: {integrity: sha512-fCj7fFamyuQbL++MOcf4W4d4aFWXYWJ2UI1dKhrXdqVz/ly9CBVjy/MHKQ6xZX2tEiuoPX5NexfxzKKiozE50Q==} + '@react-stately/color@3.9.2': + resolution: {integrity: sha512-F+6Do8W3yu/4n7MpzZtbXwVukcLTFYYDIUtpoR+Jl52UmAr9Hf1CQgkyTI2azv1ZMzj1mVrTBhpBL0q27kFZig==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/combobox@3.11.1': - resolution: {integrity: sha512-ZZh+SaAmddoY+MeJr470oDYA0nGaJm4xoHCBapaBA0JNakGC/wTzF/IRz3tKQT2VYK4rumr1BJLZQydGp7zzeg==} + '@react-stately/combobox@3.12.0': + resolution: {integrity: sha512-A6q9R/7cEa/qoQsBkdslXWvD7ztNLLQ9AhBhVN9QvzrmrH5B4ymUwcTU8lWl22ykH7RRwfonLeLXJL4C+/L2oQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/datepicker@3.15.1': - resolution: {integrity: sha512-t64iYPms9y+MEQgOAu0XUHccbEXWVUWBHJWnYvAmILCHY8ZAOeSPAT1g4v9nzyiApcflSNXgpsvbs9BBEsrWww==} + '@react-stately/datepicker@3.15.2': + resolution: {integrity: sha512-S5GL+W37chvV8knv9v0JRv0L6hKo732qqabCCHXzOpYxkLIkV4f/y3cHdEzFWzpZ0O0Gkg7WgeYo160xOdBKYg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/disclosure@3.0.7': - resolution: {integrity: sha512-ogM2y02uhpGfSOaBKIDz+hEha8qBH6WIRHRkoqdF4sEaR1kfq8LvBWdP1e/OcqHAhuRr28P2Rf0TDicnAnN7uA==} + '@react-stately/disclosure@3.0.8': + resolution: {integrity: sha512-/Ce/Z76y85eSBZiemfU/uEyXkBBa1RdfLRaKD13rnfUV7/nS3ae1VtNlsXgmwQjWv2pmAiSuEKYMbZfVL7q/lQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/dnd@3.7.0': - resolution: {integrity: sha512-DddpCVkqt6vUPHLqe/2FHxW/gkR4tEt7W0MbFcCeCLbc9lmvzOClPwNpjmU/3UnU+vPQnwGGUeF3HvaxduUq2Q==} + '@react-stately/dnd@3.7.1': + resolution: {integrity: sha512-O1JBJ4HI1rVNKuoa5NXiC5FCrCEkr9KVBoKNlTZU8/cnQselhbEsUfMglAakO2EuwIaM1tIXoNF5J/N5P+6lTA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 '@react-stately/flags@3.1.2': resolution: {integrity: sha512-2HjFcZx1MyQXoPqcBGALwWWmgFVUk2TuKVIQxCbRq7fPyWXIl6VHcakCLurdtYC2Iks7zizvz0Idv48MQ38DWg==} - '@react-stately/form@3.2.1': - resolution: {integrity: sha512-btgOPXkwvd6fdWKoepy5Ue43o2932OSkQxozsR7US1ffFLcQc3SNlADHaRChIXSG8ffPo9t0/Sl4eRzaKu3RgQ==} + '@react-stately/form@3.2.2': + resolution: {integrity: sha512-soAheOd7oaTO6eNs6LXnfn0tTqvOoe3zN9FvtIhhrErKz9XPc5sUmh3QWwR45+zKbitOi1HOjfA/gifKhZcfWw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/grid@3.11.5': - resolution: {integrity: sha512-4cNjGYaNkcVS2wZoNHUrMRICBpkHStYw57EVemP7MjiWEVu53kzPgR1Iwmti2WFCpi1Lwu0qWNeCfzKpXW4BTg==} + '@react-stately/grid@3.11.6': + resolution: {integrity: sha512-vWPAkzpeTIsrurHfMubzMuqEw7vKzFhIJeEK5sEcLunyr1rlADwTzeWrHNbPMl66NAIAi70Dr1yNq+kahQyvMA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/list@3.13.0': - resolution: {integrity: sha512-Panv8TmaY8lAl3R7CRhyUadhf2yid6VKsRDBCBB1FHQOOeL7lqIraz/oskvpabZincuaIUWqQhqYslC4a6dvuA==} + '@react-stately/list@3.13.1': + resolution: {integrity: sha512-eHaoauh21twbcl0kkwULhVJ+CzYcy1jUjMikNVMHOQdhr4WIBdExf7PmSgKHKqsSPhpGg6IpTCY2dUX3RycjDg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/menu@3.9.7': - resolution: {integrity: sha512-mfz1YoCgtje61AGxVdQaAFLlOXt9vV5dd1lQljYUPRafA/qu5Ursz4fNVlcavWW9GscebzFQErx+y0oSP7EUtQ==} + '@react-stately/menu@3.9.8': + resolution: {integrity: sha512-bo0NOhofnTHLESiYfsSSw6gyXiPVJJ0UlN2igUXtJk5PmyhWjFzUzTzcnd7B028OB0si9w3LIWM3stqz5271Eg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/numberfield@3.10.1': - resolution: {integrity: sha512-lXABmcTneVvXYMGTgZvTCr4E+upOi7VRLL50ZzTMJqHwB/qlEQPAam3dmddQRwIsuCM3MEnL7bSZFFlSYAtkEw==} + '@react-stately/numberfield@3.10.2': + resolution: {integrity: sha512-jlKVFYaH3RX5KvQ7a+SAMQuPccZCzxLkeYkBE64u1Zvi7YhJ8hkTMHG/fmZMbk1rHlseE2wfBdk0Rlya3MvoNQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/overlays@3.6.19': - resolution: {integrity: sha512-swZXfDvxTYd7tKEpijEHBFFaEmbbnCvEhGlmrAz4K72cuRR9O5u+lcla8y1veGBbBSzrIdKNdBoIIJ+qQH+1TQ==} + '@react-stately/overlays@3.6.20': + resolution: {integrity: sha512-YAIe+uI8GUXX8F/0Pzr53YeC5c/bjqbzDFlV8NKfdlCPa6+Jp4B/IlYVjIooBj9+94QvbQdjylegvYWK/iPwlg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/radio@3.11.1': - resolution: {integrity: sha512-ld9KWztI64gssg7zSZi9li21sG85Exb+wFPXtCim1TtpnEpmRtB05pXDDS3xkkIU/qOL4eMEnnLO7xlNm0CRIA==} + '@react-stately/radio@3.11.2': + resolution: {integrity: sha512-UM7L6AW+k8edhSBUEPZAqiWNRNadfOKK7BrCXyBiG79zTz0zPcXRR+N+gzkDn7EMSawDeyK1SHYUuoSltTactg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/searchfield@3.5.15': - resolution: {integrity: sha512-6LVVvm6Z60fetYLLa4B2Q/BIY+fSSknLTw8sjlV+iDEPAknj7MqWtoLz2gSQRTFKvyO7ZCjJoar8ZU/JEqcm+w==} + '@react-stately/searchfield@3.5.16': + resolution: {integrity: sha512-MRfqT1lZ24r94GuFNcGJXsfijZoWjSMySCT60T6NXtbOzVPuAF3K+pL70Rayq/EWLJjS2NPHND11VTs0VdcE0Q==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/select@3.7.1': - resolution: {integrity: sha512-vZt4j9yVyOTWWJoP9plXmYaPZH2uMxbjcGMDbiShwsFiK8C2m9b3Cvy44TZehfzCWzpMVR/DYxEYuonEIGA82Q==} + '@react-stately/select@3.8.0': + resolution: {integrity: sha512-A721nlt0DSCDit0wKvhcrXFTG5Vv1qkEVkeKvobmETZy6piKvwh0aaN8iQno5AFuZaj1iOZeNjZ/20TsDJR/4A==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/selection@3.20.5': - resolution: {integrity: sha512-YezWUNEn2pz5mQlbhmngiX9HqQsruLSXlkrAzB1DD6aliGrUvPKufTTGCixOaB8KVeCamdiFAgx1WomNplzdQA==} + '@react-stately/selection@3.20.6': + resolution: {integrity: sha512-a0bjuP2pJYPKEiedz2Us1W1aSz0iHRuyeQEdBOyL6Z6VUa6hIMq9H60kvseir2T85cOa4QggizuRV7mcO6bU5w==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/slider@3.7.1': - resolution: {integrity: sha512-J+G18m1bZBCNQSXhxGd4GNGDUVonv4Sg7fZL+uLhXUy1x71xeJfFdKaviVvZcggtl0/q5InW41PXho7EouMDEg==} + '@react-stately/slider@3.7.2': + resolution: {integrity: sha512-EVBHUdUYwj++XqAEiQg2fGi8Reccznba0uyQ3gPejF0pAc390Q/J5aqiTEDfiCM7uJ6WHxTM6lcCqHQBISk2dQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/table@3.15.0': - resolution: {integrity: sha512-KbvkrVF3sb25IPwyte9JcG5/4J7TgjHSsw7D61d/T/oUFMYPYVeolW9/2y+6u48WPkDJE8HJsurme+HbTN0FQA==} + '@react-stately/table@3.15.1': + resolution: {integrity: sha512-MhMAgE/LgAzHcAn1P3p/nQErzJ6DiixSJ1AOt2JlnAKEb5YJg4ATKWCb2IjBLwywt9ZCzfm3KMUzkctZqAoxwA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/tabs@3.8.5': - resolution: {integrity: sha512-gdeI+NUH3hfqrxkJQSZkt+Zw4G2DrYJRloq/SGxu/9Bu5QD/U0psU2uqxQNtavW5qTChFK+D30rCPXpKlslWAA==} + '@react-stately/tabs@3.8.6': + resolution: {integrity: sha512-9RYxmgjVIxUpIsGKPIF7uRoHWOEz8muwaYiStCVeyiYBPmarvZoIYtTXcwSMN/vEs7heVN5uGCL6/bfdY4+WiA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -2632,18 +2632,18 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/toggle@3.9.1': - resolution: {integrity: sha512-L6yUdE8xZfQhw4aEFZduF8u4v0VrpYrwWEA4Tu/4qwGIPukH0wd2W21Zpw+vAiLOaDKnxel1nXX68MWnm4QXpw==} + '@react-stately/toggle@3.9.2': + resolution: {integrity: sha512-dOxs9wrVXHUmA7lc8l+N9NbTJMAaXcYsnNGsMwfXIXQ3rdq+IjWGNYJ52UmNQyRYFcg0jrzRrU16TyGbNjOdNQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/tooltip@3.5.7': - resolution: {integrity: sha512-GYh764BcYZz+Lclyutyir5I3elNo+vVNYzeNOKmPGZCE3p5B+/8lgZAHKxnRc9qmBlxvofnhMcuQxAPlBhoEkw==} + '@react-stately/tooltip@3.5.8': + resolution: {integrity: sha512-gkcUx2ROhCiGNAYd2BaTejakXUUNLPnnoJ5+V/mN480pN+OrO8/2V9pqb/IQmpqxLsso93zkM3A4wFHHLBBmPQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/tree@3.9.2': - resolution: {integrity: sha512-jsT1WZZhb7GRmg1iqoib9bULsilIK5KhbE8WrcfIml8NYr4usP4DJMcIYfRuiRtPLhKtUvHSoZ5CMbinPp8PUQ==} + '@react-stately/tree@3.9.3': + resolution: {integrity: sha512-ZngG79nLFxE/GYmpwX6E/Rma2MMkzdoJPRI3iWk3dgqnGMMzpPnUp/cvjDsU3UHF7xDVusC5BT6pjWN0uxCIFQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -2652,133 +2652,133 @@ packages: peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/breadcrumbs@3.7.16': - resolution: {integrity: sha512-4J+7b9y6z8QGZqvsBSWQfebx6aIbc+1unQqnZCAlJl9EGzlI6SGdXRsURGkOUGJCV2GqY8bSocc8AZbRXpQ0XQ==} + '@react-types/breadcrumbs@3.7.17': + resolution: {integrity: sha512-IhvVTcfli5o/UDlGACXxjlor2afGlMQA8pNR3faH0bBUay1Fmm3IWktVw9Xwmk+KraV2RTAg9e+E6p8DOQZfiw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/button@3.14.0': - resolution: {integrity: sha512-pXt1a+ElxiZyWpX0uznyjy5Z6EHhYxPcaXpccZXyn6coUo9jmCbgg14xR7Odo+JcbfaaISzZTDO7oGLVTcHnpA==} + '@react-types/button@3.14.1': + resolution: {integrity: sha512-D8C4IEwKB7zEtiWYVJ3WE/5HDcWlze9mLWQ5hfsBfpePyWCgO3bT/+wjb/7pJvcAocrkXo90QrMm85LcpBtrpg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/calendar@3.7.4': - resolution: {integrity: sha512-MZDyXtvdHl8CKQGYBkjYwc4ABBq6Mb4Fu7k/4boQAmMQ5Rtz29ouBCJrAs0BpR14B8ZMGzoNIolxS5RLKBmFSA==} + '@react-types/calendar@3.8.0': + resolution: {integrity: sha512-ZDZgfZgbz1ydWOFs1mH7QFfX3ioJrmb3Y/lkoubQE0HWXLZzyYNvhhKyFJRS1QJ40IofLSBHriwbQb/tsUnGlw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/checkbox@3.10.1': - resolution: {integrity: sha512-8ZqBoGBxtn6U/znpmyutGtBBaafUzcZnbuvYjwyRSONTrqQ0IhUq6jI/jbnE9r9SslIkbMB8IS1xRh2e63qmEQ==} + '@react-types/checkbox@3.10.2': + resolution: {integrity: sha512-ktPkl6ZfIdGS1tIaGSU/2S5Agf2NvXI9qAgtdMDNva0oLyAZ4RLQb6WecPvofw1J7YKXu0VA5Mu7nlX+FM2weQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/color@3.1.1': - resolution: {integrity: sha512-zBF1Op4AO3mlygUq2gFhEoK3gZp2HgwCMUKkCzoDbrvcaahhVbDbfhRxgXKM/2dg7WkgsqhokdkjYV2mGQadRQ==} + '@react-types/color@3.1.2': + resolution: {integrity: sha512-NP0TAY3j4tlMztOp/bBfMlPwC9AQKTjSiTFmc2oQNkx5M4sl3QpPqFPosdt7jZ8M4nItvfCWZrlZGjST4SB83A==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/combobox@3.13.8': - resolution: {integrity: sha512-HGC3X9hmDRsjSZcFiflvJ7vbIgQ2gX/ZDxo1HVtvQqUDbgQCVakCcCdrB44aYgHFnyDiO6hyp7Y7jXtDBaEIIA==} + '@react-types/combobox@3.13.9': + resolution: {integrity: sha512-G6GmLbzVkLW6VScxPAr/RtliEyPhBClfYaIllK1IZv+Z42SVnOpKzhnoe79BpmiFqy1AaC3+LjZX783mrsHCwA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/datepicker@3.13.1': - resolution: {integrity: sha512-ub+g5pS3WOo5P/3FRNsQSwvlb9CuLl2m6v6KBkRXc5xqKhFd7UjvVpL6Oi/1zwwfow4itvD1t7l1XxgCo7wZ6Q==} + '@react-types/datepicker@3.13.2': + resolution: {integrity: sha512-+M6UZxJnejYY8kz0spbY/hP08QJ5rsZ3aNarRQQHc48xV2oelFLX5MhAqizfLEsvyfb0JYrhWoh4z1xZtAmYCg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/dialog@3.5.21': - resolution: {integrity: sha512-jF1gN4bvwYamsLjefaFDnaSKxTa3Wtvn5f7WLjNVZ8ICVoiMBMdUJXTlPQHAL4YWqtCj4hK/3uimR1E+Pwd7Xw==} + '@react-types/dialog@3.5.22': + resolution: {integrity: sha512-smSvzOcqKE196rWk0oqJDnz+ox5JM5+OT0PmmJXiUD4q7P5g32O6W5Bg7hMIFUI9clBtngo8kLaX2iMg+GqAzg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/grid@3.3.5': - resolution: {integrity: sha512-hG6J2KDfmOHitkWoCa/9DvY1nTO2wgMIApcFoqLv7AWJr9CzvVqo5tIhZZCXiT1AvU2kafJxu9e7sr5GxAT2YA==} + '@react-types/grid@3.3.6': + resolution: {integrity: sha512-vIZJlYTii2n1We9nAugXwM2wpcpsC6JigJFBd6vGhStRdRWRoU4yv1Gc98Usbx0FQ/J7GLVIgeG8+1VMTKBdxw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/link@3.6.4': - resolution: {integrity: sha512-eLpIgOPf7GW4DpdMq8UqiRJkriend1kWglz5O9qU+/FM6COtvRnQkEeRhHICUaU2NZUvMRQ30KaGUo3eeZ6b+g==} + '@react-types/link@3.6.5': + resolution: {integrity: sha512-+I2s3XWBEvLrzts0GnNeA84mUkwo+a7kLUWoaJkW0TOBDG7my95HFYxF9WnqKye7NgpOkCqz4s3oW96xPdIniQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/listbox@3.7.3': - resolution: {integrity: sha512-ONgror9uyGmIer5XxpRRNcc8QFVWiOzINrMKyaS8G4l3aP52ZwYpRfwMAVtra8lkVNvXDmO7hthPZkB6RYdNOA==} + '@react-types/listbox@3.7.4': + resolution: {integrity: sha512-p4YEpTl/VQGrqVE8GIfqTS5LkT5jtjDTbVeZgrkPnX/fiPhsfbTPiZ6g0FNap4+aOGJFGEEZUv2q4vx+rCORww==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/menu@3.10.4': - resolution: {integrity: sha512-jCFVShLq3eASiuznenjoKBv3j0Jy2KQilAjBxdEp56WkZ5D338y/oY5zR6d25u9M0QslpI0DgwC8BwU7MCsPnw==} + '@react-types/menu@3.10.5': + resolution: {integrity: sha512-HBTrKll2hm0VKJNM4ubIv1L9MNo8JuOnm2G3M+wXvb6EYIyDNxxJkhjsqsGpUXJdAOSkacHBDcNh2HsZABNX4A==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/meter@3.4.12': - resolution: {integrity: sha512-rx+yrwdesSabPworWRMpQnuT69gm8xt58cAfTDV9eSY1Jo+lO5OPp0OIyKb+U0q/whf60wnn2hsVnXm2fBXKhA==} + '@react-types/meter@3.4.13': + resolution: {integrity: sha512-EiarfbpHcvmeyXvXcr6XLaHkNHuGc4g7fBVEiDPwssFJKKfbUzqnnknDxPjyspqUVRcXC08CokS98J1jYobqDg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/numberfield@3.8.14': - resolution: {integrity: sha512-tlGEHJyeQSMlUoO4g9ekoELGJcqsjc/+/FAxo6YQMhQSkuIdkUKZg3UEBKzif4hLw787u80e1D0SxPUi3KO2oA==} + '@react-types/numberfield@3.8.15': + resolution: {integrity: sha512-97r92D23GKCOjGIGMeW9nt+/KlfM3GeWH39Czcmd2/D5y3k6z4j0avbsfx2OttCtJszrnENjw3GraYGYI2KosQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/overlays@3.9.1': - resolution: {integrity: sha512-UCG3TOu8FLk4j0Pr1nlhv0opcwMoqbGEOUvsSr6ITN6Qs2y0j+KYSYQ7a4+04m3dN//8+9Wjkkid8k+V1dV2CA==} + '@react-types/overlays@3.9.2': + resolution: {integrity: sha512-Q0cRPcBGzNGmC8dBuHyoPR7N3057KTS5g+vZfQ53k8WwmilXBtemFJPLsogJbspuewQ/QJ3o2HYsp2pne7/iNw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/progress@3.5.15': - resolution: {integrity: sha512-3SYvEyRt7vq7w0sc6wBYmkPqLMZbhH8FI3Lrnn9r3y8+69/efRjVmmJvwjm1z+c6rukszc2gCjUGTsMPQxVk2w==} + '@react-types/progress@3.5.16': + resolution: {integrity: sha512-I9tSdCFfvQ7gHJtm90VAKgwdTWXQgVNvLRStEc0z9h+bXBxdvZb+QuiRPERChwFQ9VkK4p4rDqaFo69nDqWkpw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/radio@3.9.1': - resolution: {integrity: sha512-DUCN3msm8QZ0MJrP55FmqMONaadYq6JTxihYFGMLP+NoKRnkxvXqNZ2PlkAOLGy3y4RHOnOF8O1LuJqFCCuxDw==} + '@react-types/radio@3.9.2': + resolution: {integrity: sha512-3UcJXu37JrTkRyP4GJPDBU7NmDTInrEdOe+bVzA1j4EegzdkJmLBkLg5cLDAbpiEHB+xIsvbJdx6dxeMuc+H3g==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/searchfield@3.6.5': - resolution: {integrity: sha512-5hI+Hb1U0bSxrJLvEwFEQfk7n3S+GO4c5W/0WZBG00YlYDY9asr1V0oU1WRmKPJJlRpyfG6PkMHDC3jhdj89ew==} + '@react-types/searchfield@3.6.6': + resolution: {integrity: sha512-cl3itr/fk7wbIQc2Gz5Ie8aVeUmPjVX/mRGS5/EXlmzycAKNYTvqf2mlxwObLndtLISmt7IgNjRRhbUUDI8Ang==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/select@3.10.1': - resolution: {integrity: sha512-teANUr1byOzGsS/r2j7PatV470JrOhKP8En9lscfnqW5CeUghr+0NxkALnPkiEhCObi/Vu8GIcPareD0HNhtFA==} + '@react-types/select@3.11.0': + resolution: {integrity: sha512-SzIsMFVPCbXE1Z1TLfpdfiwJ1xnIkcL1/CjGilmUKkNk5uT7rYX1xCJqWCjXI0vAU1xM4Qn+T3n8de4fw6HRBg==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/shared@3.32.0': - resolution: {integrity: sha512-t+cligIJsZYFMSPFMvsJMjzlzde06tZMOIOFa1OV5Z0BcMowrb2g4mB57j/9nP28iJIRYn10xCniQts+qadrqQ==} + '@react-types/shared@3.32.1': + resolution: {integrity: sha512-famxyD5emrGGpFuUlgOP6fVW2h/ZaF405G5KDi3zPHzyjAWys/8W6NAVJtNbkCkhedmvL0xOhvt8feGXyXaw5w==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/slider@3.8.1': - resolution: {integrity: sha512-WxiQWj6iQr5Uft0/KcB9XSr361XnyTmL6eREZZacngA9CjPhRWYP3BRDPcCTuP7fj9Yi4QKMrryyjHqMHP8OKQ==} + '@react-types/slider@3.8.2': + resolution: {integrity: sha512-MQYZP76OEOYe7/yA2To+Dl0LNb0cKKnvh5JtvNvDnAvEprn1RuLiay8Oi/rTtXmc2KmBa4VdTcsXsmkbbkeN2Q==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/switch@3.5.14': - resolution: {integrity: sha512-M8kIv97i+ejCel4Ho+Y7tDbpOehymGwPA4ChxibeyD32+deyxu5B6BXxgKiL3l+oTLQ8ihLo3sRESdPFw8vpQg==} + '@react-types/switch@3.5.15': + resolution: {integrity: sha512-r/ouGWQmIeHyYSP1e5luET+oiR7N7cLrAlWsrAfYRWHxqXOSNQloQnZJ3PLHrKFT02fsrQhx2rHaK2LfKeyN3A==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/table@3.13.3': - resolution: {integrity: sha512-/kY/VlXN+8l9saySd6igcsDQ3x8pOVFJAWyMh6gOaOVN7HOJkTMIchmqS+ATa4nege8jZqcdzyGeAmv7mN655A==} + '@react-types/table@3.13.4': + resolution: {integrity: sha512-I/DYiZQl6aNbMmjk90J9SOhkzVDZvyA3Vn3wMWCiajkMNjvubFhTfda5DDf2SgFP5l0Yh6TGGH5XumRv9LqL5Q==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/tabs@3.3.18': - resolution: {integrity: sha512-yX/AVlGS7VXCuy2LSm8y8nxUrKVBgnLv+FrtkLqf6jUMtD4KP3k1c4+GPHeScR0HcYzCQF7gCF3Skba1RdYoug==} + '@react-types/tabs@3.3.19': + resolution: {integrity: sha512-fE+qI43yR5pAMpeqPxGqQq9jDHXEPqXskuxNHERMW0PYMdPyem2Cw6goc5F4qeZO3Hf6uPZgHkvJz2OAq7TbBw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/textfield@3.12.5': - resolution: {integrity: sha512-VXez8KIcop87EgIy00r+tb30xokA309TfJ32Qv5qOYB5SMqoHnb6SYvWL8Ih2PDqCo5eBiiGesSaWYrHnRIL8Q==} + '@react-types/textfield@3.12.6': + resolution: {integrity: sha512-hpEVKE+M3uUkTjw2WrX1NrH/B3rqDJFUa+ViNK2eVranLY4ZwFqbqaYXSzHupOF3ecSjJJv2C103JrwFvx6TPQ==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/tooltip@3.4.20': - resolution: {integrity: sha512-tF1yThwvgSgW8Gu/CLL0p92AUldHR6szlwhwW+ewT318sQlfabMGO4xlCNFdxJYtqTpEXk2rlaVrBuaC//du0w==} + '@react-types/tooltip@3.4.21': + resolution: {integrity: sha512-ugGHOZU6WbOdeTdbjnaEc+Ms7/WhsUCg+T3PCOIeOT9FG02Ce189yJ/+hd7oqL/tVwIhEMYJIqSCgSELFox+QA==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -2810,121 +2810,121 @@ packages: resolution: {integrity: sha512-FqALmHI8D4o6lk/LRWDnhw95z5eO+eAa6ORjVg09YRR7BkcM6oPHU9uyC0gtQG5vpFLvgpeU4+zEAz2H8APHNw==} engines: {node: '>= 10'} - '@rollup/rollup-android-arm-eabi@4.52.3': - resolution: {integrity: sha512-h6cqHGZ6VdnwliFG1NXvMPTy/9PS3h8oLh7ImwR+kl+oYnQizgjxsONmmPSb2C66RksfkfIxEVtDSEcJiO0tqw==} + '@rollup/rollup-android-arm-eabi@4.52.4': + resolution: {integrity: sha512-BTm2qKNnWIQ5auf4deoetINJm2JzvihvGb9R6K/ETwKLql/Bb3Eg2H1FBp1gUb4YGbydMA3jcmQTR73q7J+GAA==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.52.3': - resolution: {integrity: sha512-wd+u7SLT/u6knklV/ifG7gr5Qy4GUbH2hMWcDauPFJzmCZUAJ8L2bTkVXC2niOIxp8lk3iH/QX8kSrUxVZrOVw==} + '@rollup/rollup-android-arm64@4.52.4': + resolution: {integrity: sha512-P9LDQiC5vpgGFgz7GSM6dKPCiqR3XYN1WwJKA4/BUVDjHpYsf3iBEmVz62uyq20NGYbiGPR5cNHI7T1HqxNs2w==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.52.3': - resolution: {integrity: sha512-lj9ViATR1SsqycwFkJCtYfQTheBdvlWJqzqxwc9f2qrcVrQaF/gCuBRTiTolkRWS6KvNxSk4KHZWG7tDktLgjg==} + '@rollup/rollup-darwin-arm64@4.52.4': + resolution: {integrity: sha512-QRWSW+bVccAvZF6cbNZBJwAehmvG9NwfWHwMy4GbWi/BQIA/laTIktebT2ipVjNncqE6GLPxOok5hsECgAxGZg==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.52.3': - resolution: {integrity: sha512-+Dyo7O1KUmIsbzx1l+4V4tvEVnVQqMOIYtrxK7ncLSknl1xnMHLgn7gddJVrYPNZfEB8CIi3hK8gq8bDhb3h5A==} + '@rollup/rollup-darwin-x64@4.52.4': + resolution: {integrity: sha512-hZgP05pResAkRJxL1b+7yxCnXPGsXU0fG9Yfd6dUaoGk+FhdPKCJ5L1Sumyxn8kvw8Qi5PvQ8ulenUbRjzeCTw==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.52.3': - resolution: {integrity: sha512-u9Xg2FavYbD30g3DSfNhxgNrxhi6xVG4Y6i9Ur1C7xUuGDW3banRbXj+qgnIrwRN4KeJ396jchwy9bCIzbyBEQ==} + '@rollup/rollup-freebsd-arm64@4.52.4': + resolution: {integrity: sha512-xmc30VshuBNUd58Xk4TKAEcRZHaXlV+tCxIXELiE9sQuK3kG8ZFgSPi57UBJt8/ogfhAF5Oz4ZSUBN77weM+mQ==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.52.3': - resolution: {integrity: sha512-5M8kyi/OX96wtD5qJR89a/3x5x8x5inXBZO04JWhkQb2JWavOWfjgkdvUqibGJeNNaz1/Z1PPza5/tAPXICI6A==} + '@rollup/rollup-freebsd-x64@4.52.4': + resolution: {integrity: sha512-WdSLpZFjOEqNZGmHflxyifolwAiZmDQzuOzIq9L27ButpCVpD7KzTRtEG1I0wMPFyiyUdOO+4t8GvrnBLQSwpw==} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.52.3': - resolution: {integrity: sha512-IoerZJ4l1wRMopEHRKOO16e04iXRDyZFZnNZKrWeNquh5d6bucjezgd+OxG03mOMTnS1x7hilzb3uURPkJ0OfA==} + '@rollup/rollup-linux-arm-gnueabihf@4.52.4': + resolution: {integrity: sha512-xRiOu9Of1FZ4SxVbB0iEDXc4ddIcjCv2aj03dmW8UrZIW7aIQ9jVJdLBIhxBI+MaTnGAKyvMwPwQnoOEvP7FgQ==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.52.3': - resolution: {integrity: sha512-ZYdtqgHTDfvrJHSh3W22TvjWxwOgc3ThK/XjgcNGP2DIwFIPeAPNsQxrJO5XqleSlgDux2VAoWQ5iJrtaC1TbA==} + '@rollup/rollup-linux-arm-musleabihf@4.52.4': + resolution: {integrity: sha512-FbhM2p9TJAmEIEhIgzR4soUcsW49e9veAQCziwbR+XWB2zqJ12b4i/+hel9yLiD8pLncDH4fKIPIbt5238341Q==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.52.3': - resolution: {integrity: sha512-NcViG7A0YtuFDA6xWSgmFb6iPFzHlf5vcqb2p0lGEbT+gjrEEz8nC/EeDHvx6mnGXnGCC1SeVV+8u+smj0CeGQ==} + '@rollup/rollup-linux-arm64-gnu@4.52.4': + resolution: {integrity: sha512-4n4gVwhPHR9q/g8lKCyz0yuaD0MvDf7dV4f9tHt0C73Mp8h38UCtSCSE6R9iBlTbXlmA8CjpsZoujhszefqueg==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.52.3': - resolution: {integrity: sha512-d3pY7LWno6SYNXRm6Ebsq0DJGoiLXTb83AIPCXl9fmtIQs/rXoS8SJxxUNtFbJ5MiOvs+7y34np77+9l4nfFMw==} + '@rollup/rollup-linux-arm64-musl@4.52.4': + resolution: {integrity: sha512-u0n17nGA0nvi/11gcZKsjkLj1QIpAuPFQbR48Subo7SmZJnGxDpspyw2kbpuoQnyK+9pwf3pAoEXerJs/8Mi9g==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-loong64-gnu@4.52.3': - resolution: {integrity: sha512-3y5GA0JkBuirLqmjwAKwB0keDlI6JfGYduMlJD/Rl7fvb4Ni8iKdQs1eiunMZJhwDWdCvrcqXRY++VEBbvk6Eg==} + '@rollup/rollup-linux-loong64-gnu@4.52.4': + resolution: {integrity: sha512-0G2c2lpYtbTuXo8KEJkDkClE/+/2AFPdPAbmaHoE870foRFs4pBrDehilMcrSScrN/fB/1HTaWO4bqw+ewBzMQ==} cpu: [loong64] os: [linux] - '@rollup/rollup-linux-ppc64-gnu@4.52.3': - resolution: {integrity: sha512-AUUH65a0p3Q0Yfm5oD2KVgzTKgwPyp9DSXc3UA7DtxhEb/WSPfbG4wqXeSN62OG5gSo18em4xv6dbfcUGXcagw==} + '@rollup/rollup-linux-ppc64-gnu@4.52.4': + resolution: {integrity: sha512-teSACug1GyZHmPDv14VNbvZFX779UqWTsd7KtTM9JIZRDI5NUwYSIS30kzI8m06gOPB//jtpqlhmraQ68b5X2g==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.52.3': - resolution: {integrity: sha512-1makPhFFVBqZE+XFg3Dkq+IkQ7JvmUrwwqaYBL2CE+ZpxPaqkGaiWFEWVGyvTwZace6WLJHwjVh/+CXbKDGPmg==} + '@rollup/rollup-linux-riscv64-gnu@4.52.4': + resolution: {integrity: sha512-/MOEW3aHjjs1p4Pw1Xk4+3egRevx8Ji9N6HUIA1Ifh8Q+cg9dremvFCUbOX2Zebz80BwJIgCBUemjqhU5XI5Eg==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-riscv64-musl@4.52.3': - resolution: {integrity: sha512-OOFJa28dxfl8kLOPMUOQBCO6z3X2SAfzIE276fwT52uXDWUS178KWq0pL7d6p1kz7pkzA0yQwtqL0dEPoVcRWg==} + '@rollup/rollup-linux-riscv64-musl@4.52.4': + resolution: {integrity: sha512-1HHmsRyh845QDpEWzOFtMCph5Ts+9+yllCrREuBR/vg2RogAQGGBRC8lDPrPOMnrdOJ+mt1WLMOC2Kao/UwcvA==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.52.3': - resolution: {integrity: sha512-jMdsML2VI5l+V7cKfZx3ak+SLlJ8fKvLJ0Eoa4b9/vCUrzXKgoKxvHqvJ/mkWhFiyp88nCkM5S2v6nIwRtPcgg==} + '@rollup/rollup-linux-s390x-gnu@4.52.4': + resolution: {integrity: sha512-seoeZp4L/6D1MUyjWkOMRU6/iLmCU2EjbMTyAG4oIOs1/I82Y5lTeaxW0KBfkUdHAWN7j25bpkt0rjnOgAcQcA==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.52.3': - resolution: {integrity: sha512-tPgGd6bY2M2LJTA1uGq8fkSPK8ZLYjDjY+ZLK9WHncCnfIz29LIXIqUgzCR0hIefzy6Hpbe8Th5WOSwTM8E7LA==} + '@rollup/rollup-linux-x64-gnu@4.52.4': + resolution: {integrity: sha512-Wi6AXf0k0L7E2gteNsNHUs7UMwCIhsCTs6+tqQ5GPwVRWMaflqGec4Sd8n6+FNFDw9vGcReqk2KzBDhCa1DLYg==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.52.3': - resolution: {integrity: sha512-BCFkJjgk+WFzP+tcSMXq77ymAPIxsX9lFJWs+2JzuZTLtksJ2o5hvgTdIcZ5+oKzUDMwI0PfWzRBYAydAHF2Mw==} + '@rollup/rollup-linux-x64-musl@4.52.4': + resolution: {integrity: sha512-dtBZYjDmCQ9hW+WgEkaffvRRCKm767wWhxsFW3Lw86VXz/uJRuD438/XvbZT//B96Vs8oTA8Q4A0AfHbrxP9zw==} cpu: [x64] os: [linux] - '@rollup/rollup-openharmony-arm64@4.52.3': - resolution: {integrity: sha512-KTD/EqjZF3yvRaWUJdD1cW+IQBk4fbQaHYJUmP8N4XoKFZilVL8cobFSTDnjTtxWJQ3JYaMgF4nObY/+nYkumA==} + '@rollup/rollup-openharmony-arm64@4.52.4': + resolution: {integrity: sha512-1ox+GqgRWqaB1RnyZXL8PD6E5f7YyRUJYnCqKpNzxzP0TkaUh112NDrR9Tt+C8rJ4x5G9Mk8PQR3o7Ku2RKqKA==} cpu: [arm64] os: [openharmony] - '@rollup/rollup-win32-arm64-msvc@4.52.3': - resolution: {integrity: sha512-+zteHZdoUYLkyYKObGHieibUFLbttX2r+58l27XZauq0tcWYYuKUwY2wjeCN9oK1Um2YgH2ibd6cnX/wFD7DuA==} + '@rollup/rollup-win32-arm64-msvc@4.52.4': + resolution: {integrity: sha512-8GKr640PdFNXwzIE0IrkMWUNUomILLkfeHjXBi/nUvFlpZP+FA8BKGKpacjW6OUUHaNI6sUURxR2U2g78FOHWQ==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.52.3': - resolution: {integrity: sha512-of1iHkTQSo3kr6dTIRX6t81uj/c/b15HXVsPcEElN5sS859qHrOepM5p9G41Hah+CTqSh2r8Bm56dL2z9UQQ7g==} + '@rollup/rollup-win32-ia32-msvc@4.52.4': + resolution: {integrity: sha512-AIy/jdJ7WtJ/F6EcfOb2GjR9UweO0n43jNObQMb6oGxkYTfLcnN7vYYpG+CN3lLxrQkzWnMOoNSHTW54pgbVxw==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-gnu@4.52.3': - resolution: {integrity: sha512-s0hybmlHb56mWVZQj8ra9048/WZTPLILKxcvcq+8awSZmyiSUZjjem1AhU3Tf4ZKpYhK4mg36HtHDOe8QJS5PQ==} + '@rollup/rollup-win32-x64-gnu@4.52.4': + resolution: {integrity: sha512-UF9KfsH9yEam0UjTwAgdK0anlQ7c8/pWPU2yVjyWcF1I1thABt6WXE47cI71pGiZ8wGvxohBoLnxM04L/wj8mQ==} cpu: [x64] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.52.3': - resolution: {integrity: sha512-zGIbEVVXVtauFgl3MRwGWEN36P5ZGenHRMgNw88X5wEhEBpq0XrMEZwOn07+ICrwM17XO5xfMZqh0OldCH5VTA==} + '@rollup/rollup-win32-x64-msvc@4.52.4': + resolution: {integrity: sha512-bf9PtUa0u8IXDVxzRToFQKsNCRz9qLYfR/MpECxl4mRoWYjAeFjgxj1XdZr2M/GNVpT05p+LgQOHopYDlUu6/w==} cpu: [x64] os: [win32] '@rtsao/scc@1.1.0': resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} - '@rushstack/eslint-patch@1.12.0': - resolution: {integrity: sha512-5EwMtOqvJMMa3HbmxLlF74e+3/HhwBTMcvt3nqVJgGCozO6hzIPOBlwm8mGVNR9SN2IJpxSnlxczyDjcn7qIyw==} + '@rushstack/eslint-patch@1.14.0': + resolution: {integrity: sha512-WJFej426qe4RWOm9MMtP4V3CV4AucXolQty+GRgAWLgQXmpCuwzs7hEpxxhSc/znXUSxum9d/P/32MW0FlAAlA==} '@scure/base@1.1.9': resolution: {integrity: sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==} @@ -3081,17 +3081,17 @@ packages: peerDependencies: tailwindcss: '>=3.2.0' - '@tanem/react-nprogress@5.0.55': - resolution: {integrity: sha512-Y9Ywyr/5T7P8PB19DOoIHmTfDAFJ07lEo/KsGBAuHnWMP6XGgAnxzakfLR9j+mxPP3aFP464Hl4/WQsY0MfIgg==} + '@tanem/react-nprogress@5.0.56': + resolution: {integrity: sha512-OI5rXB6jxC/RLJqnIuaKNXu3qQ6Lf3+g1HqkqGz01E25iV3pZFYBihMdGsEeg/4pAm0O7xo/umcAA3jsdeibHA==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 - '@tanstack/query-core@5.90.2': - resolution: {integrity: sha512-k/TcR3YalnzibscALLwxeiLUub6jN5EDLwKDiO7q5f4ICEoptJ+n9+7vcEFy5/x/i6Q+Lb/tXrsKCggf5uQJXQ==} + '@tanstack/query-core@5.90.4': + resolution: {integrity: sha512-+IbzYym9wonJss2+ZXrQqdGhPozHV8BzgZRRHxkLtL2Oq+/wAuwkLMKXk6NbAbbj+Ipgd/kMjUenjGWfwKYDwA==} - '@tanstack/react-query@5.90.2': - resolution: {integrity: sha512-CLABiR+h5PYfOWr/z+vWFt5VsOA2ekQeRQBFSKlcoW6Ndx/f8rfyVmq4LbgOM4GG2qtxAxjLYLOpCNTYm4uKzw==} + '@tanstack/react-query@5.90.4': + resolution: {integrity: sha512-0XU3puEd6J/EFVc/myHKDyp5s0NpEP4xa8k1t4rXPxg/rDIM9EdSDfNdukwgPxxnAjzaMunF1Bhx4I4MaJdWVA==} peerDependencies: react: ^18 || ^19 @@ -3312,8 +3312,8 @@ packages: '@types/nlcst@2.0.3': resolution: {integrity: sha512-vSYNSDe6Ix3q+6Z7ri9lyWqgGhJTmzRjZRqyq15N0Z/1/UnVsno9G/N40NBijoYx2seFDIl0+B2mgAb9mezUCA==} - '@types/node@22.18.8': - resolution: {integrity: sha512-pAZSHMiagDR7cARo/cch1f3rXy0AEXwsVsVH09FcyeJVAzCnGgmYis7P3JidtTUjyadhTeSo8TgRPswstghDaw==} + '@types/node@22.18.10': + resolution: {integrity: sha512-anNG/V/Efn/YZY4pRzbACnKxNKoBng2VTFydVu8RRs5hQjikP8CQfaeAV59VFSCzKNp90mXiVXW2QzV56rwMrg==} '@types/parse-json@4.0.2': resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==} @@ -3329,8 +3329,8 @@ packages: peerDependencies: '@types/react': ^18.0.0 - '@types/react@18.3.25': - resolution: {integrity: sha512-oSVZmGtDPmRZtVDqvdKUi/qgCsWp5IDY29wp8na8Bj4B3cc99hfNzvNhlMkVVxctkAOGUA3Km7MMpBHAnWfcIA==} + '@types/react@18.3.26': + resolution: {integrity: sha512-RFA/bURkcKzx/X9oumPG9Vp3D3JUgus/d0b67KB0t5S/raciymilkOa66olh78MUI92QLbEJevO7rvqU/kjwKA==} '@types/semver@7.7.1': resolution: {integrity: sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA==} @@ -3424,8 +3424,8 @@ packages: resolution: {integrity: sha512-f6UIliwBbRsgVLxIaBANF6w09tYqc6Y/qXdsrbEmXHyFA7ILiKrIwRFXe1yOg8M3cksgVsO9N7yuL2DdCGQKBA==} engines: {node: '>=10'} - '@uniswap/sdk-core@7.7.2': - resolution: {integrity: sha512-0KqXw+y0opBo6eoPAEoLHEkNpOu0NG9gEk7GAYIGok+SHX89WlykWsRYeJKTg9tOwhLpcG9oHg8xZgQ390iOrA==} + '@uniswap/sdk-core@7.7.3': + resolution: {integrity: sha512-UjB/LAM+ToNrPcp+msV27p+LmU0Cz6fMrMsij6ODEM16p95rMl7MrYEJYQFeBT8gYFxPon/Z9CWEAVipq02JwA==} engines: {node: '>=10'} '@uniswap/swap-router-contracts@1.3.1': @@ -3585,13 +3585,13 @@ packages: '@vitest/utils@2.1.9': resolution: {integrity: sha512-v0psaMSkNJ3A2NMrUEHFRzJtDPFn+/VWZ5WxImB21T9fjucJRmS7xCS3ppEnARb9y11OAzaD+P2Ps+b+BGX5iQ==} - '@web3icons/common@0.11.19': - resolution: {integrity: sha512-V+pSW/w0Vr6AOM4XwGQZO1HCaJkCABq3oQcssQ1APLxA7HyyQGTy+eeAYHYyyWx6g8uEEocXqxBGBLCAArHwPw==} + '@web3icons/common@0.11.20': + resolution: {integrity: sha512-MTWgyHg6qzq9NfUcLnRvKqI5zNbEWUYjDTQmfDncJGXFruQrVGOyE+qDvj95Kq6+VJCfKyUBkQhQ9LUMmCK3pA==} peerDependencies: typescript: ^5.0.0 - '@web3icons/react@4.0.25': - resolution: {integrity: sha512-Ol0TcjiQ7PvWwUFzUm1XOQHQVwqJLMjgFBEzmUYI81VjT+jp5DcKLgBTZVvz4uGmiZ7rKWf7uuCOAdduz+JjaA==} + '@web3icons/react@4.0.26': + resolution: {integrity: sha512-Xu/PrV5IxRk/Emqn8JsooaU8Aeq56r74kO0pPMJBvVCDUs7OIcQyhKQONeD/RJfZbyUEbKyv6aHFefM+7/OGaw==} peerDependencies: react: ^18.2.0 @@ -3692,8 +3692,8 @@ packages: ajv@8.17.1: resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} - algoliasearch@5.39.0: - resolution: {integrity: sha512-DzTfhUxzg9QBNGzU/0kZkxEV72TeA4MmPJ7RVfLnQwHNhhliPo7ynglEWJS791rNlLFoTyrKvkapwr/P3EXV9A==} + algoliasearch@5.40.1: + resolution: {integrity: sha512-iUNxcXUNg9085TJx0HJLjqtDE0r1RZ0GOGrt8KNQqQT5ugu8lZsHuMUYW/e0lHhq6xBvmktU9Bw4CXP9VQeKrg==} engines: {node: '>= 14.0.0'} ansi-align@3.0.1: @@ -3822,8 +3822,8 @@ packages: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} - axe-core@4.10.3: - resolution: {integrity: sha512-Xm7bpRXnDSX2YE2YFfBk2FnF0ep6tmG7xPh8iHee8MIcrgq762Nkce856dYtJYLkuIoYZvGfTs/PbZhideTcEg==} + axe-core@4.11.0: + resolution: {integrity: sha512-ilYanEU8vxxBexpJd8cWM4ElSQq4QctCLKih0TSfjIfCQTeyH/6zVrmIJfLPrKTKJRbiG+cfnZbQIjAlJmF1jQ==} engines: {node: '>=4'} axobject-query@4.1.0: @@ -3854,8 +3854,8 @@ packages: base64-sol@1.0.1: resolution: {integrity: sha512-ld3cCNMeXt4uJXmLZBHFGMvVpK9KsLVEhPpFRXnvSVAqABKbuNZg/+dsq3NuM+wxFLb/UrVkz7m1ciWmkMfTbg==} - baseline-browser-mapping@2.8.10: - resolution: {integrity: sha512-uLfgBi+7IBNay8ECBO2mVMGZAc1VgZWEChxm4lv+TobGdG82LnXMjuNGo/BSSZZL4UmkWhxEHP2f5ziLNwGWMA==} + baseline-browser-mapping@2.8.16: + resolution: {integrity: sha512-OMu3BGQ4E7P1ErFsIPpbJh0qvDudM/UuJeHgkAvfWe+0HFJCXh+t/l8L6fVLR55RI/UbKrVLnAXZSVwd9ysWYw==} hasBin: true bech32@1.1.4: @@ -3965,8 +3965,8 @@ packages: camelize@1.0.1: resolution: {integrity: sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==} - caniuse-lite@1.0.30001746: - resolution: {integrity: sha512-eA7Ys/DGw+pnkWWSE/id29f2IcPHVoE8wxtvE5JdvD2V28VTDPy1yEeo11Guz0sJ4ZeGRcm3uaTcAqK1LXaphA==} + caniuse-lite@1.0.30001751: + resolution: {integrity: sha512-A0QJhug0Ly64Ii3eIqHu5X51ebln3k4yTUkY1j8drqpWHVreg/VLijN48cZ1bYPiqOQuqpkIKnzr/Ul8V+p6Cw==} ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} @@ -4021,8 +4021,8 @@ packages: ci-info@2.0.0: resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} - ci-info@4.3.0: - resolution: {integrity: sha512-l+2bNRMiQgcfILUi33labAZYIWlH1kWDp+ecNo5iisRKrbm0xcRyCww71/YU0Fkw0mAFpz9bJayXPjey6vkmaQ==} + ci-info@4.3.1: + resolution: {integrity: sha512-Wdy2Igu8OcBpI2pZePZ5oWjPC38tmDVx5WKUXKwlLYkA0ozo85sLsLvkBbBn/sZaSCMFOGZJ14fvW9t5/d7kdA==} engines: {node: '>=8'} clean-stack@2.2.0: @@ -4459,8 +4459,8 @@ packages: resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} engines: {node: '>=6'} - detect-libc@2.1.1: - resolution: {integrity: sha512-ecqj/sy1jcK1uWrwpR67UhYrIFQ+5WlGxth34WquCbamhFA6hkkwiu37o6J5xCHdo1oixJRfVRw+ywV+Hq/0Aw==} + detect-libc@2.1.2: + resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==} engines: {node: '>=8'} detect-node-es@1.1.0: @@ -4498,8 +4498,8 @@ packages: dom-helpers@5.2.1: resolution: {integrity: sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==} - dompurify@3.2.7: - resolution: {integrity: sha512-WhL/YuveyGXJaerVlMYGWhvQswa7myDG17P7Vu65EWC05o8vfeNbvNf4d/BOvH99+ZW+LlQsc1GDKMa1vNK6dw==} + dompurify@3.3.0: + resolution: {integrity: sha512-r+f6MYR1gGN1eJv0TVQbhA7if/U7P87cdPl3HN5rikqaBSBxLiCb/b9O+2eG0cxz0ghyU+mU1QkbsOwERMYlWQ==} dotenv@14.3.2: resolution: {integrity: sha512-vwEppIphpFdvaMCaHfCEv9IgwcxMljMw2TnAQBB4VWPvzXQLTb82jwmdOKzlEVUL3gNFT4l4TPKO+Bn+sqcrVQ==} @@ -4516,8 +4516,8 @@ packages: eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - electron-to-chromium@1.5.228: - resolution: {integrity: sha512-nxkiyuqAn4MJ1QbobwqJILiDtu/jk14hEAWaMiJmNPh1Z+jqoFlBFZjdXwLWGeVSeu9hGLg6+2G9yJaW8rBIFA==} + electron-to-chromium@1.5.237: + resolution: {integrity: sha512-icUt1NvfhGLar5lSWH3tHNzablaA5js3HVHacQimfP8ViEBOQv+L7DKEuHdbTZ0SKCO1ogTJTIL1Gwk9S6Qvcg==} elliptic@6.6.1: resolution: {integrity: sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==} @@ -4529,8 +4529,8 @@ packages: resolution: {integrity: sha512-1QFuh8l7LqUcKe24LsPUNzjrzJQ7pgRwp1QMcZ5MX6mFplk2zQ08NVCM84++1cveaUUYtcCYHmeFEuNg16sU4g==} engines: {node: '>=10.0.0'} - emoji-regex@10.5.0: - resolution: {integrity: sha512-lb49vf1Xzfx080OKA0o6l8DQQpV+6Vg95zyCJX9VB/BqKYlhG7N4wgROUUHRA+ZPUefLnteQOad7z1kT2bV7bg==} + emoji-regex@10.6.0: + resolution: {integrity: sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==} emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} @@ -4610,8 +4610,8 @@ packages: engines: {node: '>=12'} hasBin: true - esbuild@0.25.10: - resolution: {integrity: sha512-9RiGKvCwaqxO2owP61uQ4BgNborAQskMR6QusfWzQqv7AZOg5oGehdY2pRJMTKuwxd1IDBP4rSbI5lHzU7SMsQ==} + esbuild@0.25.11: + resolution: {integrity: sha512-KohQwyzrKTQmhXDW1PjCv3Tyspn9n5GcY2RTDqeORIdIJY8yKIF7sTSopFmn/wpMPW4rdPXI0UE5LJLuq3bx0Q==} engines: {node: '>=18'} hasBin: true @@ -4863,8 +4863,8 @@ packages: fast-uri@3.1.0: resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} - fast-xml-parser@5.2.5: - resolution: {integrity: sha512-pfX9uG9Ki0yekDHx2SiuRIyFdyAr1kMIMitPvb0YBo8SUfKvia7w7FIyd/l6av85pFYRhZscS75MwMnbvY+hcQ==} + fast-xml-parser@5.3.0: + resolution: {integrity: sha512-gkWGshjYcQCF+6qtlrqBqELqNqnt4CxruY6UVAWWnqb3DQ6qaNFEIKqzYep1XzHLM/QtrHVCxyPOtTk4LTQ7Aw==} hasBin: true fastq@1.19.1: @@ -4953,8 +4953,8 @@ packages: fraction.js@4.3.7: resolution: {integrity: sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==} - framer-motion@12.23.22: - resolution: {integrity: sha512-ZgGvdxXCw55ZYvhoZChTlG6pUuehecgvEAJz0BHoC5pQKW1EC5xf1Mul1ej5+ai+pVY0pylyFfdl45qnM1/GsA==} + framer-motion@12.23.24: + resolution: {integrity: sha512-HMi5HRoRCTou+3fb3h9oTLyJGBxHfW+HnNE25tAXOvVx/IvwMHK0cx7IR4a2ZU6sh3IX1Z+4ts32PcYBOqka8w==} peerDependencies: '@emotion/is-prop-valid': '*' react: ^18.0.0 || ^19.0.0 @@ -5027,8 +5027,8 @@ packages: resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} engines: {node: '>= 0.4'} - get-tsconfig@4.10.1: - resolution: {integrity: sha512-auHyJ4AgMz7vgS8Hp3N6HXSmlMdUyhSUrfBF16w153rxtLIEOE+HGqaBppczZvnHLqQJfiHotCYpNhl0lUROFQ==} + get-tsconfig@4.12.0: + resolution: {integrity: sha512-LScr2aNr2FbjAjZh2C6X6BxRx1/x+aTDExct/xyq2XKbYOiG5c0aK7pMsSuyc0brz3ibr/lbQiHD9jzt4lccJw==} github-slugger@2.0.0: resolution: {integrity: sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==} @@ -5098,8 +5098,8 @@ packages: peerDependencies: graphql: 14 - 16 - graphql-request@7.2.0: - resolution: {integrity: sha512-0GR7eQHBFYz372u9lxS16cOtEekFlZYB2qOyq8wDvzRmdRSJ0mgUVX1tzNcIzk3G+4NY+mGtSz411wZdeDF/+A==} + graphql-request@7.3.0: + resolution: {integrity: sha512-cxmQfa/ZknSNtuJpgPpr4CQTwPjSP57EYzOyNoyhPakXqr1yvTtOXNFbxQYaz4DMQ801i2DjnwUkifGLjtXhSQ==} peerDependencies: graphql: 14 - 16 @@ -5326,8 +5326,8 @@ packages: resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==} engines: {node: '>=12'} - intl-messageformat@10.7.16: - resolution: {integrity: sha512-UmdmHUmp5CIKKjSoE10la5yfU+AYJAaiYLsodbjL4lji83JNvgOQUjGaGhGrpFCb0Uh7sl7qfP1IyILa8Z40ug==} + intl-messageformat@10.7.18: + resolution: {integrity: sha512-m3Ofv/X/tV8Y3tHXLohcuVuhWKo7BBq62cqY15etqmLxg2DZ34AGGgQDeR+SCta2+zICb1NX83af0GJmbQ1++g==} io-ts@1.10.4: resolution: {integrity: sha512-b23PteSnYXSONJ6JQXRAlvJhuw8KOtkqa87W4wDtvMrud/DTJd5X+NpOOI+O/zZwVq6v0VLAaJ+1EDViKEuN9g==} @@ -5635,8 +5635,8 @@ packages: resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} engines: {node: '>=4.0'} - katex@0.16.22: - resolution: {integrity: sha512-XCHRdUw4lf3SKBaJe4EvgqIuWwkPSo9XoeO8GjQW94Bp7TWv9hNhzZjZ+OH9yf1UmLygb7DIT5GSFQiyt16zYg==} + katex@0.16.25: + resolution: {integrity: sha512-woHRUZ/iF23GBP1dkDQMh1QBad9dmr8/PAwNA54VrSOVYgI12MAcE14TqnDdQOdzyEonGzMepYnqBMYdsoAr8Q==} hasBin: true keccak@3.0.4: @@ -5763,8 +5763,8 @@ packages: markdown-table@3.0.4: resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==} - marked@16.3.0: - resolution: {integrity: sha512-K3UxuKu6l6bmA5FUwYho8CfJBlsUWAooKtdGgMcERSpF7gcBUrCGsLH7wDaaNOzwq18JzSUDyoEb/YsrqMac3w==} + marked@16.4.0: + resolution: {integrity: sha512-CTPAcRBq57cn3R8n3hwc2REddc28hjR7RzDXQ+lXLmMJYqn20BaI2cGw6QjgZGIgVfp2Wdfw4aMzgNteQ6qJgQ==} engines: {node: '>= 20'} hasBin: true @@ -5991,8 +5991,8 @@ packages: resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} engines: {node: '>=12'} - miniflare@3.20250718.1: - resolution: {integrity: sha512-9QAOHVKIVHmnQ1dJT9Fls8aVA8R5JjEizzV889Dinq/+bEPltqIepCvm9Z+fbNUgLvV7D/H1NUk8VdlLRgp9Wg==} + miniflare@3.20250718.2: + resolution: {integrity: sha512-cW/NQPBKc+fb0FwcEu+z/v93DZd+/6q/AF0iR0VFELtNPOsCvLalq6ndO743A7wfZtFxMxvuDQUXNx3aKQhOwA==} engines: {node: '>=16.13'} hasBin: true @@ -6031,8 +6031,8 @@ packages: mitt@3.0.1: resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==} - mixpanel-browser@2.70.0: - resolution: {integrity: sha512-iXSD6t9iNTHd1cHbBlP4LrJACgAKfFrssttGKAy4sNu+BodVccTlJQJeBxINZUBsP/WbWMFSuDo2xHRUr3OG/A==} + mixpanel-browser@2.71.0: + resolution: {integrity: sha512-jKmDXe68/oQFgk/9ns9Z36bA0CJ31PH8Y77XTLLGfJvhsUPbvu+7Se9e281NejZF6+OMqx7cE+zFxToozYyNrA==} mj-context-menu@0.6.1: resolution: {integrity: sha512-7NO5s6n10TIV96d4g2uDpG7ZDpIhMh0QNfGdJw/W47JswFcosz457wqz/b5sAKvl12sxINGFCn80NZHKwxQEXA==} @@ -6048,14 +6048,14 @@ packages: engines: {node: '>= 14.0.0'} hasBin: true - motion-dom@12.23.21: - resolution: {integrity: sha512-5xDXx/AbhrfgsQmSE7YESMn4Dpo6x5/DTZ4Iyy4xqDvVHWvFVoV+V2Ri2S/ksx+D40wrZ7gPYiMWshkdoqNgNQ==} + motion-dom@12.23.23: + resolution: {integrity: sha512-n5yolOs0TQQBRUFImrRfs/+6X4p3Q4n1dUEqt/H58Vx7OW6RF+foWEgmTVDhIWJIMXOuNNL0apKH2S16en9eiA==} motion-utils@12.23.6: resolution: {integrity: sha512-eAWoPgr4eFEOFfg2WjIsMoqJTW6Z8MTUCgn/GZ3VRpClWBdnbjryiA3ZSNLyxCTmCQx4RmYX6jX1iWHbenUPNQ==} - motion@12.23.22: - resolution: {integrity: sha512-iSq6X9vLHbeYwmHvhK//+U74ROaPnZmBuy60XZzqNl0QtZkWfoZyMDHYnpKuWFv0sNMqHgED8aCXk94LCoQPGg==} + motion@12.23.24: + resolution: {integrity: sha512-Rc5E7oe2YZ72N//S3QXGzbnXgqNrTESv8KKxABR20q2FLch9gHLo0JLyYo2hZ238bZ9Gx6cWhj9VO0IgwbMjCw==} peerDependencies: '@emotion/is-prop-valid': '*' react: ^18.0.0 || ^19.0.0 @@ -6087,8 +6087,8 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - napi-postinstall@0.3.3: - resolution: {integrity: sha512-uTp172LLXSxuSYHv/kou+f6KW3SMppU9ivthaVTXian9sOt3XM/zHYHpRZiLgQoxeWfYUnslNWQHF1+G71xcow==} + napi-postinstall@0.3.4: + resolution: {integrity: sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==} engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} hasBin: true @@ -6158,8 +6158,8 @@ packages: resolution: {integrity: sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==} hasBin: true - node-releases@2.0.21: - resolution: {integrity: sha512-5b0pgg78U3hwXkCM8Z9b2FJdPZlr9Psr9V2gQPESdGHqbntyFJKFW4r5TeWGFzafGY3hzs1JC62VEQMbl1JFkw==} + node-releases@2.0.25: + resolution: {integrity: sha512-4auku8B/vw5psvTiiN9j1dAOsXvMoGqJuKJcR+dTdqiXEK20mMTk1UEo3HS16LeGQsVG6+qKTPM9u/qQ2LqATA==} nopt@7.2.1: resolution: {integrity: sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==} @@ -6316,8 +6316,8 @@ packages: package-json-from-dist@1.0.1: resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} - package-manager-detector@1.3.0: - resolution: {integrity: sha512-ZsEbbZORsyHuO00lY1kV3/t72yp6Ysay6Pd17ZAlNGuGwmWDLCJxFpRs0IzfXfj1o4icJOkUEioexFHzyPurSQ==} + package-manager-detector@1.4.1: + resolution: {integrity: sha512-dSMiVLBEA4XaNJ0PRb4N5cV/SEP4BWrWZKBmfF+OUm2pQTiZ6DDkKeWaltwu3JRhLoy59ayIkJ00cx9K9CaYTg==} pako@0.2.9: resolution: {integrity: sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==} @@ -6504,9 +6504,9 @@ packages: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} - prettier-plugin-tailwindcss@0.6.14: - resolution: {integrity: sha512-pi2e/+ZygeIqntN+vC573BcW5Cve8zUB0SSAGxqpB4f96boZF4M3phPVoOFCeypwkpRYdi7+jQ5YJJUwrkGUAg==} - engines: {node: '>=14.21.3'} + prettier-plugin-tailwindcss@0.7.0: + resolution: {integrity: sha512-zpRZhkfwq1cNmbKhmKzXKuKFdkgXZXlf6p+KttD75v6pGz1FxmcKMc4RKdw97GYBKBbout4113HSLaBJAomFDw==} + engines: {node: '>=20.19'} peerDependencies: '@ianvs/prettier-plugin-sort-imports': '*' '@prettier/plugin-hermes': '*' @@ -6518,14 +6518,12 @@ packages: prettier: ^3.0 prettier-plugin-astro: '*' prettier-plugin-css-order: '*' - prettier-plugin-import-sort: '*' prettier-plugin-jsdoc: '*' prettier-plugin-marko: '*' prettier-plugin-multiline-arrays: '*' prettier-plugin-organize-attributes: '*' prettier-plugin-organize-imports: '*' prettier-plugin-sort-imports: '*' - prettier-plugin-style-order: '*' prettier-plugin-svelte: '*' peerDependenciesMeta: '@ianvs/prettier-plugin-sort-imports': @@ -6546,8 +6544,6 @@ packages: optional: true prettier-plugin-css-order: optional: true - prettier-plugin-import-sort: - optional: true prettier-plugin-jsdoc: optional: true prettier-plugin-marko: @@ -6560,8 +6556,6 @@ packages: optional: true prettier-plugin-sort-imports: optional: true - prettier-plugin-style-order: - optional: true prettier-plugin-svelte: optional: true @@ -6643,8 +6637,8 @@ packages: resolution: {integrity: sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==} engines: {node: '>= 0.8'} - react-aria@3.43.2: - resolution: {integrity: sha512-CfaXi3S69SeOkpp6pGc1w5FH8OvGPFphiMrO2tNSlqpYIecgk3gKoXjkqaAr6N+O1gasLMfAAF9sxtvS141qWg==} + react-aria@3.44.0: + resolution: {integrity: sha512-2Pq3GQxBgM4/2BlpKYXeaZ47a3tdIcYSW/AYvKgypE3XipxOdQMDG5Sr/NBn7zuJq+thzmtfRb0lB9bTbsmaRw==} peerDependencies: react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 react-dom: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 @@ -6956,8 +6950,8 @@ packages: rollup-pluginutils@2.8.2: resolution: {integrity: sha512-EEp9NhnUkwY8aif6bxgovPHMoMoNr2FulJziTndpt5H9RdwC47GSGuII9XxpSdzVGM0GWrNPHV6ie1LTNJPaLQ==} - rollup@4.52.3: - resolution: {integrity: sha512-RIDh866U8agLgiIcdpB+COKnlCreHJLfIhWC3LVflku5YHfpnsIKigRZeFfMfCc4dVcqNVfQQ5gO/afOck064A==} + rollup@4.52.4: + resolution: {integrity: sha512-CLEVl+MnPAiKh5pl4dEWSyMTpuflgNQiLGhMv8ezD5W/qP8AKvmYpCOKRRNOh7oRKnauBZ4SyeYkMS+1VSyKwQ==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -7027,8 +7021,8 @@ packages: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true - semver@7.7.2: - resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==} + semver@7.7.3: + resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==} engines: {node: '>=10'} hasBin: true @@ -7202,8 +7196,8 @@ packages: resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} engines: {node: '>= 0.8'} - std-env@3.9.0: - resolution: {integrity: sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw==} + std-env@3.10.0: + resolution: {integrity: sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==} stop-iteration-iterator@1.1.0: resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} @@ -7292,11 +7286,11 @@ packages: strnum@2.1.1: resolution: {integrity: sha512-7ZvoFTiCnGxBtDqJ//Cu6fWtZtc7Y3x+QOirG15wztbdngGSkht27o2pyGWrVy0b4WAy3jbKmnoK6g5VlVNUUw==} - style-to-js@1.1.17: - resolution: {integrity: sha512-xQcBGDxJb6jjFCTzvQtfiPn6YvvP2O8U1MDIPNfJQlWMYfktPy+iGsHE7cssjs7y84d9fQaK4UF3RIJaAHSoYA==} + style-to-js@1.1.18: + resolution: {integrity: sha512-JFPn62D4kJaPTnhFUI244MThx+FEGbi+9dw1b9yBBQ+1CZpV7QAT8kUtJ7b7EUNdHajjF/0x8fT+16oLJoojLg==} - style-to-object@1.0.9: - resolution: {integrity: sha512-G4qppLgKu/k6FwRpHiGiKPaPTFcG3g4wNVX/Qsfu+RqQM30E7Tyu/TEgxcL9PNLF5pdRLwQdE3YKKf+KF2Dzlw==} + style-to-object@1.0.11: + resolution: {integrity: sha512-5A560JmXr7wDyGLK12Nq/EYS38VkGlglVzkis1JEdbGWSnbQIEhZzTJhzURXN5/8WwwFCs/f/VVcmkTppbXLow==} styled-jsx@5.1.1: resolution: {integrity: sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==} @@ -7791,8 +7785,8 @@ packages: victory-vendor@36.9.2: resolution: {integrity: sha512-PnpQQMuxlwYdocC8fIJqVXvkeViHYzotI+NJrCuav0ZYFoq912ZHBk3mCeuj+5/VpodOjPe1z0Fk2ihgzlXqjQ==} - viem@2.37.11: - resolution: {integrity: sha512-JEwUftUmJin3RUSbluKj2yR6M7Ye0AxqowhyTz396RkPlg1wwImkHocKtuvkzEa51EdSGsOCHf/qxAfqSowRTQ==} + viem@2.38.2: + resolution: {integrity: sha512-MJDiTDD9gfOT7lPQRimdmw+g46hU/aWJ3loqb+tN6UBOO00XEd0O4LJx+Kp5/uCRnMlJr8zJ1bNzCK7eG6gMjg==} peerDependencies: typescript: '>=5.0.4' peerDependenciesMeta: @@ -7971,8 +7965,8 @@ packages: workerpool@6.5.1: resolution: {integrity: sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==} - wrangler@3.114.14: - resolution: {integrity: sha512-zytHJn5+S47sqgUHi71ieSSP44yj9mKsj0sTUCsY+Tw5zbH8EzB1d9JbRk2KHg7HFM1WpoTI7518EExPGenAmg==} + wrangler@3.114.15: + resolution: {integrity: sha512-OpGikaV6t7AGXZImtGnVXI8WUnqBMFBCQcZzqKmQi0T/pZ5h8iSKhEZf7ItVB8bAG56yswHnWWYyANWF/Jj/JA==} engines: {node: '>=16.17.0'} hasBin: true peerDependencies: @@ -8095,8 +8089,8 @@ packages: zod@3.25.76: resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==} - zod@4.1.11: - resolution: {integrity: sha512-WPsqwxITS2tzx1bzhIKsEs19ABD5vmCVa4xBo2tq/SrV4RNZtfws1EnCWQXM6yh8bD08a1idvkB5MZSBiZsjwg==} + zod@4.1.12: + resolution: {integrity: sha512-JInaHOamG8pt5+Ey8kGmdcAcg3OL9reK8ltczgHTAwNhMys/6ThXHityHxVV2p3fkw/c+MAvBHFVYHFZDmjMCQ==} zwitch@2.0.4: resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} @@ -8107,126 +8101,126 @@ snapshots: '@adraffy/ens-normalize@1.11.1': {} - '@algolia/abtesting@1.5.0': + '@algolia/abtesting@1.6.1': dependencies: - '@algolia/client-common': 5.39.0 - '@algolia/requester-browser-xhr': 5.39.0 - '@algolia/requester-fetch': 5.39.0 - '@algolia/requester-node-http': 5.39.0 + '@algolia/client-common': 5.40.1 + '@algolia/requester-browser-xhr': 5.40.1 + '@algolia/requester-fetch': 5.40.1 + '@algolia/requester-node-http': 5.40.1 - '@algolia/autocomplete-core@1.17.9(@algolia/client-search@5.39.0)(algoliasearch@5.39.0)(search-insights@2.17.3)': + '@algolia/autocomplete-core@1.17.9(@algolia/client-search@5.40.1)(algoliasearch@5.40.1)(search-insights@2.17.3)': dependencies: - '@algolia/autocomplete-plugin-algolia-insights': 1.17.9(@algolia/client-search@5.39.0)(algoliasearch@5.39.0)(search-insights@2.17.3) - '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.39.0)(algoliasearch@5.39.0) + '@algolia/autocomplete-plugin-algolia-insights': 1.17.9(@algolia/client-search@5.40.1)(algoliasearch@5.40.1)(search-insights@2.17.3) + '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.40.1)(algoliasearch@5.40.1) transitivePeerDependencies: - '@algolia/client-search' - algoliasearch - search-insights - '@algolia/autocomplete-plugin-algolia-insights@1.17.9(@algolia/client-search@5.39.0)(algoliasearch@5.39.0)(search-insights@2.17.3)': + '@algolia/autocomplete-plugin-algolia-insights@1.17.9(@algolia/client-search@5.40.1)(algoliasearch@5.40.1)(search-insights@2.17.3)': dependencies: - '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.39.0)(algoliasearch@5.39.0) + '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.40.1)(algoliasearch@5.40.1) search-insights: 2.17.3 transitivePeerDependencies: - '@algolia/client-search' - algoliasearch - '@algolia/autocomplete-preset-algolia@1.17.9(@algolia/client-search@5.39.0)(algoliasearch@5.39.0)': + '@algolia/autocomplete-preset-algolia@1.17.9(@algolia/client-search@5.40.1)(algoliasearch@5.40.1)': dependencies: - '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.39.0)(algoliasearch@5.39.0) - '@algolia/client-search': 5.39.0 - algoliasearch: 5.39.0 + '@algolia/autocomplete-shared': 1.17.9(@algolia/client-search@5.40.1)(algoliasearch@5.40.1) + '@algolia/client-search': 5.40.1 + algoliasearch: 5.40.1 - '@algolia/autocomplete-shared@1.17.9(@algolia/client-search@5.39.0)(algoliasearch@5.39.0)': + '@algolia/autocomplete-shared@1.17.9(@algolia/client-search@5.40.1)(algoliasearch@5.40.1)': dependencies: - '@algolia/client-search': 5.39.0 - algoliasearch: 5.39.0 + '@algolia/client-search': 5.40.1 + algoliasearch: 5.40.1 - '@algolia/client-abtesting@5.39.0': + '@algolia/client-abtesting@5.40.1': dependencies: - '@algolia/client-common': 5.39.0 - '@algolia/requester-browser-xhr': 5.39.0 - '@algolia/requester-fetch': 5.39.0 - '@algolia/requester-node-http': 5.39.0 + '@algolia/client-common': 5.40.1 + '@algolia/requester-browser-xhr': 5.40.1 + '@algolia/requester-fetch': 5.40.1 + '@algolia/requester-node-http': 5.40.1 - '@algolia/client-analytics@5.39.0': + '@algolia/client-analytics@5.40.1': dependencies: - '@algolia/client-common': 5.39.0 - '@algolia/requester-browser-xhr': 5.39.0 - '@algolia/requester-fetch': 5.39.0 - '@algolia/requester-node-http': 5.39.0 + '@algolia/client-common': 5.40.1 + '@algolia/requester-browser-xhr': 5.40.1 + '@algolia/requester-fetch': 5.40.1 + '@algolia/requester-node-http': 5.40.1 - '@algolia/client-common@5.39.0': {} + '@algolia/client-common@5.40.1': {} - '@algolia/client-insights@5.39.0': + '@algolia/client-insights@5.40.1': dependencies: - '@algolia/client-common': 5.39.0 - '@algolia/requester-browser-xhr': 5.39.0 - '@algolia/requester-fetch': 5.39.0 - '@algolia/requester-node-http': 5.39.0 + '@algolia/client-common': 5.40.1 + '@algolia/requester-browser-xhr': 5.40.1 + '@algolia/requester-fetch': 5.40.1 + '@algolia/requester-node-http': 5.40.1 - '@algolia/client-personalization@5.39.0': + '@algolia/client-personalization@5.40.1': dependencies: - '@algolia/client-common': 5.39.0 - '@algolia/requester-browser-xhr': 5.39.0 - '@algolia/requester-fetch': 5.39.0 - '@algolia/requester-node-http': 5.39.0 + '@algolia/client-common': 5.40.1 + '@algolia/requester-browser-xhr': 5.40.1 + '@algolia/requester-fetch': 5.40.1 + '@algolia/requester-node-http': 5.40.1 - '@algolia/client-query-suggestions@5.39.0': + '@algolia/client-query-suggestions@5.40.1': dependencies: - '@algolia/client-common': 5.39.0 - '@algolia/requester-browser-xhr': 5.39.0 - '@algolia/requester-fetch': 5.39.0 - '@algolia/requester-node-http': 5.39.0 + '@algolia/client-common': 5.40.1 + '@algolia/requester-browser-xhr': 5.40.1 + '@algolia/requester-fetch': 5.40.1 + '@algolia/requester-node-http': 5.40.1 - '@algolia/client-search@5.39.0': + '@algolia/client-search@5.40.1': dependencies: - '@algolia/client-common': 5.39.0 - '@algolia/requester-browser-xhr': 5.39.0 - '@algolia/requester-fetch': 5.39.0 - '@algolia/requester-node-http': 5.39.0 + '@algolia/client-common': 5.40.1 + '@algolia/requester-browser-xhr': 5.40.1 + '@algolia/requester-fetch': 5.40.1 + '@algolia/requester-node-http': 5.40.1 - '@algolia/ingestion@1.39.0': + '@algolia/ingestion@1.40.1': dependencies: - '@algolia/client-common': 5.39.0 - '@algolia/requester-browser-xhr': 5.39.0 - '@algolia/requester-fetch': 5.39.0 - '@algolia/requester-node-http': 5.39.0 + '@algolia/client-common': 5.40.1 + '@algolia/requester-browser-xhr': 5.40.1 + '@algolia/requester-fetch': 5.40.1 + '@algolia/requester-node-http': 5.40.1 - '@algolia/monitoring@1.39.0': + '@algolia/monitoring@1.40.1': dependencies: - '@algolia/client-common': 5.39.0 - '@algolia/requester-browser-xhr': 5.39.0 - '@algolia/requester-fetch': 5.39.0 - '@algolia/requester-node-http': 5.39.0 + '@algolia/client-common': 5.40.1 + '@algolia/requester-browser-xhr': 5.40.1 + '@algolia/requester-fetch': 5.40.1 + '@algolia/requester-node-http': 5.40.1 - '@algolia/recommend@5.39.0': + '@algolia/recommend@5.40.1': dependencies: - '@algolia/client-common': 5.39.0 - '@algolia/requester-browser-xhr': 5.39.0 - '@algolia/requester-fetch': 5.39.0 - '@algolia/requester-node-http': 5.39.0 + '@algolia/client-common': 5.40.1 + '@algolia/requester-browser-xhr': 5.40.1 + '@algolia/requester-fetch': 5.40.1 + '@algolia/requester-node-http': 5.40.1 - '@algolia/requester-browser-xhr@5.39.0': + '@algolia/requester-browser-xhr@5.40.1': dependencies: - '@algolia/client-common': 5.39.0 + '@algolia/client-common': 5.40.1 - '@algolia/requester-fetch@5.39.0': + '@algolia/requester-fetch@5.40.1': dependencies: - '@algolia/client-common': 5.39.0 + '@algolia/client-common': 5.40.1 - '@algolia/requester-node-http@5.39.0': + '@algolia/requester-node-http@5.40.1': dependencies: - '@algolia/client-common': 5.39.0 + '@algolia/client-common': 5.40.1 '@alloc/quick-lru@5.2.0': {} '@antfu/install-pkg@1.1.0': dependencies: - package-manager-detector: 1.3.0 + package-manager-detector: 1.4.1 tinyexec: 1.0.1 - '@antfu/utils@9.2.1': {} + '@antfu/utils@9.3.0': {} '@apidevtools/json-schema-ref-parser@13.0.5': dependencies: @@ -8297,18 +8291,18 @@ snapshots: '@babel/helper-string-parser': 7.27.1 '@babel/helper-validator-identifier': 7.27.1 - '@base-ui-components/react@1.0.0-alpha.7(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@base-ui-components/react@1.0.0-alpha.7(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.28.4 '@floating-ui/react': 0.27.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@floating-ui/utils': 0.2.10 - '@react-aria/overlays': 3.29.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/overlays': 3.30.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) prop-types: 15.8.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) use-sync-external-store: 1.6.0(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 '@braintree/sanitize-url@7.1.1': {} @@ -8356,7 +8350,7 @@ snapshots: '@cloudflare/workerd-windows-64@1.20250718.0': optional: true - '@cloudflare/workers-types@4.20251001.0': {} + '@cloudflare/workers-types@4.20251011.0': {} '@corex/deepmerge@4.0.43': {} @@ -8386,14 +8380,14 @@ snapshots: '@docsearch/css@3.9.0': {} - '@docsearch/react@3.9.0(@algolia/client-search@5.39.0)(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)': + '@docsearch/react@3.9.0(@algolia/client-search@5.40.1)(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(search-insights@2.17.3)': dependencies: - '@algolia/autocomplete-core': 1.17.9(@algolia/client-search@5.39.0)(algoliasearch@5.39.0)(search-insights@2.17.3) - '@algolia/autocomplete-preset-algolia': 1.17.9(@algolia/client-search@5.39.0)(algoliasearch@5.39.0) + '@algolia/autocomplete-core': 1.17.9(@algolia/client-search@5.40.1)(algoliasearch@5.40.1)(search-insights@2.17.3) + '@algolia/autocomplete-preset-algolia': 1.17.9(@algolia/client-search@5.40.1)(algoliasearch@5.40.1) '@docsearch/css': 3.9.0 - algoliasearch: 5.39.0 + algoliasearch: 5.40.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) search-insights: 2.17.3 @@ -8404,7 +8398,7 @@ snapshots: dependencies: '@ethersproject/providers': 5.8.0 '@pinax/graph-networks-registry': 0.6.7 - '@uniswap/sdk-core': 7.7.2 + '@uniswap/sdk-core': 7.7.3 '@uniswap/v3-core': 1.0.1 '@uniswap/v3-sdk': 3.25.2(hardhat@2.26.3(typescript@5.9.3)) dataloader: 2.2.3 @@ -8420,13 +8414,13 @@ snapshots: - hardhat - utf-8-validate - '@edgeandnode/ens@2.3.1(typescript@5.9.3)(viem@2.37.11(typescript@5.9.3)(zod@3.25.76))': + '@edgeandnode/ens@2.3.1(typescript@5.9.3)(viem@2.38.2(typescript@5.9.3)(zod@3.25.76))': dependencies: - '@ensdomains/ensjs': 4.0.2(typescript@5.9.3)(viem@2.37.11(typescript@5.9.3)(zod@3.25.76))(zod@4.1.11) + '@ensdomains/ensjs': 4.0.2(typescript@5.9.3)(viem@2.38.2(typescript@5.9.3)(zod@3.25.76))(zod@4.1.12) graphql: 16.11.0 - graphql-request: 7.2.0(graphql@16.11.0) - viem: 2.37.11(typescript@5.9.3)(zod@3.25.76) - zod: 4.1.11 + graphql-request: 7.3.0(graphql@16.11.0) + viem: 2.38.2(typescript@5.9.3)(zod@3.25.76) + zod: 4.1.12 transitivePeerDependencies: - encoding - typescript @@ -8435,7 +8429,7 @@ snapshots: dependencies: '@hasparus/eslint-plugin': 1.0.0 '@next/eslint-plugin-next': 13.4.9 - '@rushstack/eslint-patch': 1.12.0 + '@rushstack/eslint-patch': 1.14.0 '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3) '@typescript-eslint/parser': 6.21.0(eslint@8.57.1)(typescript@5.9.3) eslint: 8.57.1 @@ -8454,48 +8448,48 @@ snapshots: - eslint-plugin-import-x - supports-color - '@edgeandnode/gds@6.7.4(@emotion/is-prop-valid@0.8.8)(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(dayjs@1.11.18)(hardhat@2.26.3(typescript@5.9.3))(next@14.2.33(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(theme-ui@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1))(tsx@4.20.4)(typescript@5.9.3)(yaml@2.8.1)': + '@edgeandnode/gds@6.7.6(@emotion/is-prop-valid@0.8.8)(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(dayjs@1.11.18)(hardhat@2.26.3(typescript@5.9.3))(next@14.2.33(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(theme-ui@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(tsx@4.20.4)(typescript@5.9.3)(yaml@2.8.1)': dependencies: - '@base-ui-components/react': 1.0.0-alpha.7(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@base-ui-components/react': 1.0.0-alpha.7(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@bramus/style-observer': 2.0.2 '@edgeandnode/common': 7.0.4(hardhat@2.26.3(typescript@5.9.3)) - '@emotion/react': 11.14.0(@types/react@18.3.25)(react@18.3.1) + '@emotion/react': 11.14.0(@types/react@18.3.26)(react@18.3.1) '@figma/code-connect': 1.3.6 '@floating-ui/react-dom': 2.1.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@headlessui/react': 2.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@phosphor-icons/react': 2.1.10(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-accordion': 1.2.12(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-alert-dialog': 1.1.15(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-dialog': 1.1.15(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-direction': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-dropdown-menu': 2.1.16(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-label': 2.1.7(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-popover': 1.1.15(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slider': 1.3.6(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slot': 1.2.3(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-switch': 1.2.6(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-toast': 1.2.15(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-tooltip': 1.2.8(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-accordion': 1.2.12(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-alert-dialog': 1.1.15(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-dialog': 1.1.15(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-direction': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-dropdown-menu': 2.1.16(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-label': 2.1.7(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-popover': 1.1.15(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slider': 1.3.6(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.2.3(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-switch': 1.2.6(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-toast': 1.2.15(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-tooltip': 1.2.8(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-hookz/web': 25.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@tailwindcss/container-queries': 0.1.1(tailwindcss@3.4.18(tsx@4.20.4)(yaml@2.8.1)) - '@tanem/react-nprogress': 5.0.55(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1)) - '@theme-ui/match-media': 0.17.2(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1))(@theme-ui/css@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1)))(react@18.3.1) - '@web3icons/react': 4.0.25(react@18.3.1)(typescript@5.9.3) - '@xstate/react': 3.2.2(@types/react@18.3.25)(react@18.3.1)(xstate@4.38.3) + '@tanem/react-nprogress': 5.0.56(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1)) + '@theme-ui/match-media': 0.17.2(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(@theme-ui/css@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1)))(react@18.3.1) + '@web3icons/react': 4.0.26(react@18.3.1)(typescript@5.9.3) + '@xstate/react': 3.2.2(@types/react@18.3.26)(react@18.3.1)(xstate@4.38.3) color: 5.0.2 dayjs: 1.11.18 escape-string-regexp: 5.0.0 ethers: 5.8.0 lodash: 4.17.21 md5: 2.3.0 - motion: 12.23.22(@emotion/is-prop-valid@0.8.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + motion: 12.23.24(@emotion/is-prop-valid@0.8.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) numeral: 2.0.6 prism-react-renderer: 2.4.1(react@18.3.1) prismjs: 1.30.0 react: 18.3.1 - react-aria: 3.43.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-aria: 3.44.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react-device-detect: 2.2.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react-dom: 18.3.1(react@18.3.1) react-dropzone: 14.3.8(react@18.3.1) @@ -8507,7 +8501,7 @@ snapshots: recharts: 2.15.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) shiki: 3.13.0 tailwindcss: 3.4.18(tsx@4.20.4)(yaml@2.8.1) - theme-ui: 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1) + theme-ui: 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) typy: 3.3.0 universal-cookie: 7.2.2 xstate: 4.38.3 @@ -8530,29 +8524,29 @@ snapshots: - utf-8-validate - yaml - '@edgeandnode/go@10.3.8(ad95ad6c6eb77b5eab3a50453c768c46)': + '@edgeandnode/go@10.3.10(356ef4223475a01a8e60ae0aaea97ba7)': dependencies: '@edgeandnode/common': 7.0.4(hardhat@2.26.3(typescript@5.9.3)) - '@edgeandnode/ens': 2.3.1(typescript@5.9.3)(viem@2.37.11(typescript@5.9.3)(zod@3.25.76)) - '@edgeandnode/gds': 6.7.4(@emotion/is-prop-valid@0.8.8)(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(dayjs@1.11.18)(hardhat@2.26.3(typescript@5.9.3))(next@14.2.33(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(theme-ui@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1))(tsx@4.20.4)(typescript@5.9.3)(yaml@2.8.1) - '@emotion/react': 11.14.0(@types/react@18.3.25)(react@18.3.1) + '@edgeandnode/ens': 2.3.1(typescript@5.9.3)(viem@2.38.2(typescript@5.9.3)(zod@3.25.76)) + '@edgeandnode/gds': 6.7.6(@emotion/is-prop-valid@0.8.8)(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(dayjs@1.11.18)(hardhat@2.26.3(typescript@5.9.3))(next@14.2.33(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react-is@18.3.1)(react@18.3.1)(theme-ui@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(tsx@4.20.4)(typescript@5.9.3)(yaml@2.8.1) + '@emotion/react': 11.14.0(@types/react@18.3.26)(react@18.3.1) '@graphql-typed-document-node/core': 3.2.0(graphql@16.11.0) - '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-dialog': 1.1.15(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-navigation-menu': 1.2.14(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@tanstack/react-query': 5.90.2(react@18.3.1) - '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1)) - '@web3icons/react': 4.0.25(react@18.3.1)(typescript@5.9.3) + '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-dialog': 1.1.15(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-navigation-menu': 1.2.14(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@tanstack/react-query': 5.90.4(react@18.3.1) + '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1)) + '@web3icons/react': 4.0.26(react@18.3.1)(typescript@5.9.3) escape-string-regexp: 5.0.0 graphql: 16.11.0 - graphql-request: 7.2.0(graphql@16.11.0) - motion: 12.23.22(@emotion/is-prop-valid@0.8.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + graphql-request: 7.3.0(graphql@16.11.0) + motion: 12.23.24(@emotion/is-prop-valid@0.8.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) tailwindcss: 3.4.18(tsx@4.20.4)(yaml@2.8.1) - theme-ui: 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1) + theme-ui: 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) optionalDependencies: next: 14.2.33(react-dom@18.3.1(react@18.3.1))(react@18.3.1) transitivePeerDependencies: @@ -8615,7 +8609,7 @@ snapshots: '@emotion/memoize@0.9.0': {} - '@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1)': + '@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1)': dependencies: '@babel/runtime': 7.28.4 '@emotion/babel-plugin': 11.13.5 @@ -8627,7 +8621,7 @@ snapshots: hoist-non-react-statics: 3.3.2 react: 18.3.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 transitivePeerDependencies: - supports-color @@ -8675,19 +8669,19 @@ snapshots: dns-packet: 5.6.1 typescript-logging: 1.0.1 - '@ensdomains/ensjs@4.0.2(typescript@5.9.3)(viem@2.37.11(typescript@5.9.3)(zod@3.25.76))(zod@4.1.11)': + '@ensdomains/ensjs@4.0.2(typescript@5.9.3)(viem@2.38.2(typescript@5.9.3)(zod@3.25.76))(zod@4.1.12)': dependencies: '@adraffy/ens-normalize': 1.10.1 '@ensdomains/address-encoder': 1.1.1 '@ensdomains/content-hash': 3.1.0-rc.1 '@ensdomains/dnsprovejs': 0.5.1 - abitype: 1.1.1(typescript@5.9.3)(zod@4.1.11) + abitype: 1.1.1(typescript@5.9.3)(zod@4.1.12) dns-packet: 5.6.1 graphql: 16.11.0 graphql-request: 6.1.0(graphql@16.11.0) pako: 2.1.0 ts-pattern: 5.8.0 - viem: 2.37.11(typescript@5.9.3)(zod@3.25.76) + viem: 2.38.2(typescript@5.9.3)(zod@3.25.76) transitivePeerDependencies: - encoding - typescript @@ -8706,7 +8700,7 @@ snapshots: '@esbuild/aix-ppc64@0.21.5': optional: true - '@esbuild/aix-ppc64@0.25.10': + '@esbuild/aix-ppc64@0.25.11': optional: true '@esbuild/android-arm64@0.17.19': @@ -8715,7 +8709,7 @@ snapshots: '@esbuild/android-arm64@0.21.5': optional: true - '@esbuild/android-arm64@0.25.10': + '@esbuild/android-arm64@0.25.11': optional: true '@esbuild/android-arm@0.17.19': @@ -8724,7 +8718,7 @@ snapshots: '@esbuild/android-arm@0.21.5': optional: true - '@esbuild/android-arm@0.25.10': + '@esbuild/android-arm@0.25.11': optional: true '@esbuild/android-x64@0.17.19': @@ -8733,7 +8727,7 @@ snapshots: '@esbuild/android-x64@0.21.5': optional: true - '@esbuild/android-x64@0.25.10': + '@esbuild/android-x64@0.25.11': optional: true '@esbuild/darwin-arm64@0.17.19': @@ -8742,7 +8736,7 @@ snapshots: '@esbuild/darwin-arm64@0.21.5': optional: true - '@esbuild/darwin-arm64@0.25.10': + '@esbuild/darwin-arm64@0.25.11': optional: true '@esbuild/darwin-x64@0.17.19': @@ -8751,7 +8745,7 @@ snapshots: '@esbuild/darwin-x64@0.21.5': optional: true - '@esbuild/darwin-x64@0.25.10': + '@esbuild/darwin-x64@0.25.11': optional: true '@esbuild/freebsd-arm64@0.17.19': @@ -8760,7 +8754,7 @@ snapshots: '@esbuild/freebsd-arm64@0.21.5': optional: true - '@esbuild/freebsd-arm64@0.25.10': + '@esbuild/freebsd-arm64@0.25.11': optional: true '@esbuild/freebsd-x64@0.17.19': @@ -8769,7 +8763,7 @@ snapshots: '@esbuild/freebsd-x64@0.21.5': optional: true - '@esbuild/freebsd-x64@0.25.10': + '@esbuild/freebsd-x64@0.25.11': optional: true '@esbuild/linux-arm64@0.17.19': @@ -8778,7 +8772,7 @@ snapshots: '@esbuild/linux-arm64@0.21.5': optional: true - '@esbuild/linux-arm64@0.25.10': + '@esbuild/linux-arm64@0.25.11': optional: true '@esbuild/linux-arm@0.17.19': @@ -8787,7 +8781,7 @@ snapshots: '@esbuild/linux-arm@0.21.5': optional: true - '@esbuild/linux-arm@0.25.10': + '@esbuild/linux-arm@0.25.11': optional: true '@esbuild/linux-ia32@0.17.19': @@ -8796,7 +8790,7 @@ snapshots: '@esbuild/linux-ia32@0.21.5': optional: true - '@esbuild/linux-ia32@0.25.10': + '@esbuild/linux-ia32@0.25.11': optional: true '@esbuild/linux-loong64@0.17.19': @@ -8805,7 +8799,7 @@ snapshots: '@esbuild/linux-loong64@0.21.5': optional: true - '@esbuild/linux-loong64@0.25.10': + '@esbuild/linux-loong64@0.25.11': optional: true '@esbuild/linux-mips64el@0.17.19': @@ -8814,7 +8808,7 @@ snapshots: '@esbuild/linux-mips64el@0.21.5': optional: true - '@esbuild/linux-mips64el@0.25.10': + '@esbuild/linux-mips64el@0.25.11': optional: true '@esbuild/linux-ppc64@0.17.19': @@ -8823,7 +8817,7 @@ snapshots: '@esbuild/linux-ppc64@0.21.5': optional: true - '@esbuild/linux-ppc64@0.25.10': + '@esbuild/linux-ppc64@0.25.11': optional: true '@esbuild/linux-riscv64@0.17.19': @@ -8832,7 +8826,7 @@ snapshots: '@esbuild/linux-riscv64@0.21.5': optional: true - '@esbuild/linux-riscv64@0.25.10': + '@esbuild/linux-riscv64@0.25.11': optional: true '@esbuild/linux-s390x@0.17.19': @@ -8841,7 +8835,7 @@ snapshots: '@esbuild/linux-s390x@0.21.5': optional: true - '@esbuild/linux-s390x@0.25.10': + '@esbuild/linux-s390x@0.25.11': optional: true '@esbuild/linux-x64@0.17.19': @@ -8850,10 +8844,10 @@ snapshots: '@esbuild/linux-x64@0.21.5': optional: true - '@esbuild/linux-x64@0.25.10': + '@esbuild/linux-x64@0.25.11': optional: true - '@esbuild/netbsd-arm64@0.25.10': + '@esbuild/netbsd-arm64@0.25.11': optional: true '@esbuild/netbsd-x64@0.17.19': @@ -8862,10 +8856,10 @@ snapshots: '@esbuild/netbsd-x64@0.21.5': optional: true - '@esbuild/netbsd-x64@0.25.10': + '@esbuild/netbsd-x64@0.25.11': optional: true - '@esbuild/openbsd-arm64@0.25.10': + '@esbuild/openbsd-arm64@0.25.11': optional: true '@esbuild/openbsd-x64@0.17.19': @@ -8874,10 +8868,10 @@ snapshots: '@esbuild/openbsd-x64@0.21.5': optional: true - '@esbuild/openbsd-x64@0.25.10': + '@esbuild/openbsd-x64@0.25.11': optional: true - '@esbuild/openharmony-arm64@0.25.10': + '@esbuild/openharmony-arm64@0.25.11': optional: true '@esbuild/sunos-x64@0.17.19': @@ -8886,7 +8880,7 @@ snapshots: '@esbuild/sunos-x64@0.21.5': optional: true - '@esbuild/sunos-x64@0.25.10': + '@esbuild/sunos-x64@0.25.11': optional: true '@esbuild/win32-arm64@0.17.19': @@ -8895,7 +8889,7 @@ snapshots: '@esbuild/win32-arm64@0.21.5': optional: true - '@esbuild/win32-arm64@0.25.10': + '@esbuild/win32-arm64@0.25.11': optional: true '@esbuild/win32-ia32@0.17.19': @@ -8904,7 +8898,7 @@ snapshots: '@esbuild/win32-ia32@0.21.5': optional: true - '@esbuild/win32-ia32@0.25.10': + '@esbuild/win32-ia32@0.25.11': optional: true '@esbuild/win32-x64@0.17.19': @@ -8913,7 +8907,7 @@ snapshots: '@esbuild/win32-x64@0.21.5': optional: true - '@esbuild/win32-x64@0.25.10': + '@esbuild/win32-x64@0.25.11': optional: true '@eslint-community/eslint-utils@4.9.0(eslint@8.57.1)': @@ -9277,10 +9271,10 @@ snapshots: '@floating-ui/utils@0.2.10': {} - '@formatjs/ecma402-abstract@2.3.4': + '@formatjs/ecma402-abstract@2.3.6': dependencies: '@formatjs/fast-memoize': 2.2.7 - '@formatjs/intl-localematcher': 0.6.1 + '@formatjs/intl-localematcher': 0.6.2 decimal.js: 10.6.0 tslib: 2.8.1 @@ -9288,22 +9282,22 @@ snapshots: dependencies: tslib: 2.8.1 - '@formatjs/icu-messageformat-parser@2.11.2': + '@formatjs/icu-messageformat-parser@2.11.4': dependencies: - '@formatjs/ecma402-abstract': 2.3.4 - '@formatjs/icu-skeleton-parser': 1.8.14 + '@formatjs/ecma402-abstract': 2.3.6 + '@formatjs/icu-skeleton-parser': 1.8.16 tslib: 2.8.1 - '@formatjs/icu-skeleton-parser@1.8.14': + '@formatjs/icu-skeleton-parser@1.8.16': dependencies: - '@formatjs/ecma402-abstract': 2.3.4 + '@formatjs/ecma402-abstract': 2.3.6 tslib: 2.8.1 '@formatjs/intl-localematcher@0.5.10': dependencies: tslib: 2.8.1 - '@formatjs/intl-localematcher@0.6.1': + '@formatjs/intl-localematcher@0.6.2': dependencies: tslib: 2.8.1 @@ -9320,8 +9314,8 @@ snapshots: '@headlessui/react@2.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@floating-ui/react': 0.26.28(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/focus': 3.21.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.21.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@tanstack/react-virtual': 3.13.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -9346,7 +9340,7 @@ snapshots: '@iconify/utils@3.0.2': dependencies: '@antfu/install-pkg': 1.1.0 - '@antfu/utils': 9.2.1 + '@antfu/utils': 9.3.0 '@iconify/types': 2.0.0 debug: 4.4.3(supports-color@8.1.1) globals: 15.15.0 @@ -9431,14 +9425,14 @@ snapshots: '@img/sharp-win32-x64@0.33.5': optional: true - '@internationalized/date@3.9.0': + '@internationalized/date@3.10.0': dependencies: '@swc/helpers': 0.5.17 '@internationalized/message@3.1.8': dependencies: '@swc/helpers': 0.5.17 - intl-messageformat: 10.7.16 + intl-messageformat: 10.7.18 '@internationalized/number@3.6.5': dependencies: @@ -9514,13 +9508,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@mdx-js/react@3.1.1(@types/react@18.3.25)(react@18.3.1)': + '@mdx-js/react@3.1.1(@types/react@18.3.26)(react@18.3.1)': dependencies: '@types/mdx': 2.0.13 - '@types/react': 18.3.25 + '@types/react': 18.3.26 react: 18.3.1 - '@mermaid-js/parser@0.6.2': + '@mermaid-js/parser@0.6.3': dependencies: langium: 3.3.1 @@ -9536,7 +9530,7 @@ snapshots: '@mixpanel/rrweb-utils@2.0.0-alpha.18.2': {} - '@mixpanel/rrweb@2.0.0-alpha.18.1': + '@mixpanel/rrweb@2.0.0-alpha.18.2': dependencies: '@mixpanel/rrdom': 2.0.0-alpha.18.2 '@mixpanel/rrweb-snapshot': 2.0.0-alpha.18.2 @@ -9753,11 +9747,11 @@ snapshots: dependencies: '@npmcli/map-workspaces': 3.0.6 '@npmcli/package-json': 5.2.1 - ci-info: 4.3.0 + ci-info: 4.3.1 ini: 4.1.3 nopt: 7.2.1 proc-log: 4.2.0 - semver: 7.7.2 + semver: 7.7.3 walk-up-path: 3.0.1 transitivePeerDependencies: - bluebird @@ -9771,7 +9765,7 @@ snapshots: proc-log: 4.2.0 promise-inflight: 1.0.1 promise-retry: 2.0.1 - semver: 7.7.2 + semver: 7.7.3 which: 4.0.0 transitivePeerDependencies: - bluebird @@ -9793,7 +9787,7 @@ snapshots: json-parse-even-better-errors: 3.0.2 normalize-package-data: 6.0.2 proc-log: 4.2.0 - semver: 7.7.2 + semver: 7.7.3 transitivePeerDependencies: - bluebird @@ -9823,722 +9817,722 @@ snapshots: '@radix-ui/primitive@1.1.3': {} - '@radix-ui/react-accordion@1.2.12(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-accordion@1.2.12(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-context': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-direction': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-id': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-collapsible': 1.1.12(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-direction': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-alert-dialog@1.1.15(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-alert-dialog@1.1.15(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-context': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-dialog': 1.1.15(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slot': 1.2.3(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-dialog': 1.1.15(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.2.3(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-arrow@1.1.7(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-arrow@1.1.7(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-collapsible@1.1.12(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-collapsible@1.1.12(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-context': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-id': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-collection@1.1.7(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-collection@1.1.7(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-context': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slot': 1.2.3(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.2.3(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-compose-refs@1.1.2(@types/react@18.3.25)(react@18.3.1)': + '@radix-ui/react-compose-refs@1.1.2(@types/react@18.3.26)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - '@radix-ui/react-context@1.1.2(@types/react@18.3.25)(react@18.3.1)': + '@radix-ui/react-context@1.1.2(@types/react@18.3.26)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - '@radix-ui/react-dialog@1.1.15(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-dialog@1.1.15(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-context': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-focus-guards': 1.1.3(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-id': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slot': 1.2.3(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.2.3(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.26)(react@18.3.1) aria-hidden: 1.2.6 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - react-remove-scroll: 2.7.1(@types/react@18.3.25)(react@18.3.1) + react-remove-scroll: 2.7.1(@types/react@18.3.26)(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-direction@1.1.1(@types/react@18.3.25)(react@18.3.1)': + '@radix-ui/react-direction@1.1.1(@types/react@18.3.26)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - '@radix-ui/react-dismissable-layer@1.1.11(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-dismissable-layer@1.1.11(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-dropdown-menu@2.1.16(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-dropdown-menu@2.1.16(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-context': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-id': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-menu': 2.1.16(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-menu': 2.1.16(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-focus-guards@1.1.3(@types/react@18.3.25)(react@18.3.1)': + '@radix-ui/react-focus-guards@1.1.3(@types/react@18.3.26)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - '@radix-ui/react-focus-scope@1.1.7(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-focus-scope@1.1.7(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-id@1.1.1(@types/react@18.3.25)(react@18.3.1)': + '@radix-ui/react-id@1.1.1(@types/react@18.3.26)(react@18.3.1)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - '@radix-ui/react-label@2.1.7(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-label@2.1.7(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-menu@2.1.16(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-menu@2.1.16(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-context': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-direction': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-focus-guards': 1.1.3(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-id': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-popper': 1.2.8(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slot': 1.2.3(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-direction': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.2.3(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.26)(react@18.3.1) aria-hidden: 1.2.6 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - react-remove-scroll: 2.7.1(@types/react@18.3.25)(react@18.3.1) + react-remove-scroll: 2.7.1(@types/react@18.3.26)(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-navigation-menu@1.2.14(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-navigation-menu@1.2.14(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-context': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-direction': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-id': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-previous': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-direction': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-previous': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-popover@1.1.15(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-popover@1.1.15(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-context': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-focus-guards': 1.1.3(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-id': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-popper': 1.2.8(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slot': 1.2.3(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-focus-guards': 1.1.3(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.2.3(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.26)(react@18.3.1) aria-hidden: 1.2.6 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - react-remove-scroll: 2.7.1(@types/react@18.3.25)(react@18.3.1) + react-remove-scroll: 2.7.1(@types/react@18.3.26)(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-popper@1.2.8(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-popper@1.2.8(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@floating-ui/react-dom': 2.1.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-arrow': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-context': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-rect': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-size': 1.1.1(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-arrow': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-rect': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-size': 1.1.1(@types/react@18.3.26)(react@18.3.1) '@radix-ui/rect': 1.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-portal@1.1.9(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-portal@1.1.9(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-presence@1.1.5(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-presence@1.1.5(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-primitive@2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-primitive@2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-slot': 1.2.3(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-slot': 1.2.3(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-roving-focus@1.1.11(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-roving-focus@1.1.11(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-context': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-direction': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-id': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-direction': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-slider@1.3.6(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-slider@1.3.6(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/number': 1.1.1 '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-context': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-direction': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-previous': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-size': 1.1.1(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-direction': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-previous': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-size': 1.1.1(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-slot@1.2.3(@types/react@18.3.25)(react@18.3.1)': + '@radix-ui/react-slot@1.2.3(@types/react@18.3.26)(react@18.3.1)': dependencies: - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - '@radix-ui/react-switch@1.2.6(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-switch@1.2.6(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-context': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-previous': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-size': 1.1.1(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-previous': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-size': 1.1.1(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-toast@1.2.15(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-toast@1.2.15(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-context': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-collection': 1.1.7(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-tooltip@1.2.8(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-tooltip@1.2.8(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@radix-ui/primitive': 1.1.3 - '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-context': 1.1.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-id': 1.1.1(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-popper': 1.2.8(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@radix-ui/react-slot': 1.2.3(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-context': 1.1.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-id': 1.1.1(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-popper': 1.2.8(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-portal': 1.1.9(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.5(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.2.3(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-visually-hidden': 1.2.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) - '@radix-ui/react-use-callback-ref@1.1.1(@types/react@18.3.25)(react@18.3.1)': + '@radix-ui/react-use-callback-ref@1.1.1(@types/react@18.3.26)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - '@radix-ui/react-use-controllable-state@1.2.2(@types/react@18.3.25)(react@18.3.1)': + '@radix-ui/react-use-controllable-state@1.2.2(@types/react@18.3.26)(react@18.3.1)': dependencies: - '@radix-ui/react-use-effect-event': 0.0.2(@types/react@18.3.25)(react@18.3.1) - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-use-effect-event': 0.0.2(@types/react@18.3.26)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - '@radix-ui/react-use-effect-event@0.0.2(@types/react@18.3.25)(react@18.3.1)': + '@radix-ui/react-use-effect-event@0.0.2(@types/react@18.3.26)(react@18.3.1)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - '@radix-ui/react-use-escape-keydown@1.1.1(@types/react@18.3.25)(react@18.3.1)': + '@radix-ui/react-use-escape-keydown@1.1.1(@types/react@18.3.26)(react@18.3.1)': dependencies: - '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - '@radix-ui/react-use-layout-effect@1.1.1(@types/react@18.3.25)(react@18.3.1)': + '@radix-ui/react-use-layout-effect@1.1.1(@types/react@18.3.26)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - '@radix-ui/react-use-previous@1.1.1(@types/react@18.3.25)(react@18.3.1)': + '@radix-ui/react-use-previous@1.1.1(@types/react@18.3.26)(react@18.3.1)': dependencies: react: 18.3.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - '@radix-ui/react-use-rect@1.1.1(@types/react@18.3.25)(react@18.3.1)': + '@radix-ui/react-use-rect@1.1.1(@types/react@18.3.26)(react@18.3.1)': dependencies: '@radix-ui/rect': 1.1.1 react: 18.3.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - '@radix-ui/react-use-size@1.1.1(@types/react@18.3.25)(react@18.3.1)': + '@radix-ui/react-use-size@1.1.1(@types/react@18.3.26)(react@18.3.1)': dependencies: - '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.25)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@18.3.26)(react@18.3.1) react: 18.3.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - '@radix-ui/react-visually-hidden@1.2.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@radix-ui/react-visually-hidden@1.2.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.25))(@types/react@18.3.25)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.1.3(@types/react-dom@18.3.7(@types/react@18.3.26))(@types/react@18.3.26)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 - '@types/react-dom': 18.3.7(@types/react@18.3.25) + '@types/react': 18.3.26 + '@types/react-dom': 18.3.7(@types/react@18.3.26) '@radix-ui/rect@1.1.1': {} - '@react-aria/breadcrumbs@3.5.28(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/breadcrumbs@3.5.29(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/link': 3.8.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/breadcrumbs': 3.7.16(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/link': 3.8.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/breadcrumbs': 3.7.17(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/button@3.14.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/button@3.14.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/toolbar': 3.0.0-beta.20(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/toggle': 3.9.1(react@18.3.1) - '@react-types/button': 3.14.0(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/toolbar': 3.0.0-beta.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/toggle': 3.9.2(react@18.3.1) + '@react-types/button': 3.14.1(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/calendar@3.9.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/calendar@3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@internationalized/date': 3.9.0 - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@internationalized/date': 3.10.0 + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/live-announcer': 3.4.4 - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/calendar': 3.8.4(react@18.3.1) - '@react-types/button': 3.14.0(react@18.3.1) - '@react-types/calendar': 3.7.4(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/calendar': 3.9.0(react@18.3.1) + '@react-types/button': 3.14.1(react@18.3.1) + '@react-types/calendar': 3.8.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/checkbox@3.16.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - '@react-aria/form': 3.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/toggle': 3.12.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/checkbox': 3.7.1(react@18.3.1) - '@react-stately/form': 3.2.1(react@18.3.1) - '@react-stately/toggle': 3.9.1(react@18.3.1) - '@react-types/checkbox': 3.10.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/checkbox@3.16.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@react-aria/form': 3.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.22(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/toggle': 3.12.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/checkbox': 3.7.2(react@18.3.1) + '@react-stately/form': 3.2.2(react@18.3.1) + '@react-stately/toggle': 3.9.2(react@18.3.1) + '@react-types/checkbox': 3.10.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/color@3.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/numberfield': 3.12.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/slider': 3.8.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/spinbutton': 3.6.18(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/textfield': 3.18.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/visually-hidden': 3.8.27(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/color': 3.9.1(react@18.3.1) - '@react-stately/form': 3.2.1(react@18.3.1) - '@react-types/color': 3.1.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/color@3.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/numberfield': 3.12.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/slider': 3.8.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/spinbutton': 3.6.19(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/textfield': 3.18.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/visually-hidden': 3.8.28(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/color': 3.9.2(react@18.3.1) + '@react-stately/form': 3.2.2(react@18.3.1) + '@react-types/color': 3.1.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/combobox@3.13.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/combobox@3.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.21.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/listbox': 3.14.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.21.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/listbox': 3.15.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/live-announcer': 3.4.4 - '@react-aria/menu': 3.19.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/overlays': 3.29.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.25.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/textfield': 3.18.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/collections': 3.12.7(react@18.3.1) - '@react-stately/combobox': 3.11.1(react@18.3.1) - '@react-stately/form': 3.2.1(react@18.3.1) - '@react-types/button': 3.14.0(react@18.3.1) - '@react-types/combobox': 3.13.8(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/menu': 3.19.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/overlays': 3.30.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/textfield': 3.18.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/collections': 3.12.8(react@18.3.1) + '@react-stately/combobox': 3.12.0(react@18.3.1) + '@react-stately/form': 3.2.2(react@18.3.1) + '@react-types/button': 3.14.1(react@18.3.1) + '@react-types/combobox': 3.13.9(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/datepicker@3.15.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/datepicker@3.15.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@internationalized/date': 3.9.0 + '@internationalized/date': 3.10.0 '@internationalized/number': 3.6.5 '@internationalized/string': 3.2.7 - '@react-aria/focus': 3.21.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/form': 3.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/spinbutton': 3.6.18(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/datepicker': 3.15.1(react@18.3.1) - '@react-stately/form': 3.2.1(react@18.3.1) - '@react-types/button': 3.14.0(react@18.3.1) - '@react-types/calendar': 3.7.4(react@18.3.1) - '@react-types/datepicker': 3.13.1(react@18.3.1) - '@react-types/dialog': 3.5.21(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/focus': 3.21.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/form': 3.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.22(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/spinbutton': 3.6.19(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/datepicker': 3.15.2(react@18.3.1) + '@react-stately/form': 3.2.2(react@18.3.1) + '@react-types/button': 3.14.1(react@18.3.1) + '@react-types/calendar': 3.8.0(react@18.3.1) + '@react-types/datepicker': 3.13.2(react@18.3.1) + '@react-types/dialog': 3.5.22(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/dialog@3.5.30(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/dialog@3.5.31(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/overlays': 3.29.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/dialog': 3.5.21(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/overlays': 3.30.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/dialog': 3.5.22(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/disclosure@3.0.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/disclosure@3.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@react-aria/ssr': 3.9.10(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/disclosure': 3.0.7(react@18.3.1) - '@react-types/button': 3.14.0(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/disclosure': 3.0.8(react@18.3.1) + '@react-types/button': 3.14.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/dnd@3.11.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/dnd@3.11.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@internationalized/string': 3.2.7 - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/live-announcer': 3.4.4 - '@react-aria/overlays': 3.29.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/collections': 3.12.7(react@18.3.1) - '@react-stately/dnd': 3.7.0(react@18.3.1) - '@react-types/button': 3.14.0(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/overlays': 3.30.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/collections': 3.12.8(react@18.3.1) + '@react-stately/dnd': 3.7.1(react@18.3.1) + '@react-types/button': 3.14.1(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/focus@3.21.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/focus@3.21.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 clsx: 2.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/form@3.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/form@3.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/form': 3.2.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/form': 3.2.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/grid@3.14.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/grid@3.14.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.21.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.21.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/live-announcer': 3.4.4 - '@react-aria/selection': 3.25.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/collections': 3.12.7(react@18.3.1) - '@react-stately/grid': 3.11.5(react@18.3.1) - '@react-stately/selection': 3.20.5(react@18.3.1) - '@react-types/checkbox': 3.10.1(react@18.3.1) - '@react-types/grid': 3.3.5(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/selection': 3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/collections': 3.12.8(react@18.3.1) + '@react-stately/grid': 3.11.6(react@18.3.1) + '@react-stately/selection': 3.20.6(react@18.3.1) + '@react-types/checkbox': 3.10.2(react@18.3.1) + '@react-types/grid': 3.3.6(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/gridlist@3.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - '@react-aria/focus': 3.21.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/grid': 3.14.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.25.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/list': 3.13.0(react@18.3.1) - '@react-stately/tree': 3.9.2(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/gridlist@3.14.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@react-aria/focus': 3.21.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/grid': 3.14.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/list': 3.13.1(react@18.3.1) + '@react-stately/tree': 3.9.3(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/i18n@3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/i18n@3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@internationalized/date': 3.9.0 + '@internationalized/date': 3.10.0 '@internationalized/message': 3.1.8 '@internationalized/number': 3.6.5 '@internationalized/string': 3.2.7 '@react-aria/ssr': 3.9.10(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/interactions@3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/interactions@3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@react-aria/ssr': 3.9.10(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/flags': 3.1.2 - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/label@3.7.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/label@3.7.22(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/landmark@3.0.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/landmark@3.0.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) use-sync-external-store: 1.6.0(react@18.3.1) - '@react-aria/link@3.8.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/link@3.8.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/link': 3.6.4(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/link': 3.6.5(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/listbox@3.14.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/listbox@3.15.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.25.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/collections': 3.12.7(react@18.3.1) - '@react-stately/list': 3.13.0(react@18.3.1) - '@react-types/listbox': 3.7.3(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.22(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/collections': 3.12.8(react@18.3.1) + '@react-stately/list': 3.13.1(react@18.3.1) + '@react-types/listbox': 3.7.4(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -10547,164 +10541,164 @@ snapshots: dependencies: '@swc/helpers': 0.5.17 - '@react-aria/menu@3.19.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - '@react-aria/focus': 3.21.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/overlays': 3.29.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.25.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/collections': 3.12.7(react@18.3.1) - '@react-stately/menu': 3.9.7(react@18.3.1) - '@react-stately/selection': 3.20.5(react@18.3.1) - '@react-stately/tree': 3.9.2(react@18.3.1) - '@react-types/button': 3.14.0(react@18.3.1) - '@react-types/menu': 3.10.4(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/menu@3.19.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@react-aria/focus': 3.21.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/overlays': 3.30.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/collections': 3.12.8(react@18.3.1) + '@react-stately/menu': 3.9.8(react@18.3.1) + '@react-stately/selection': 3.20.6(react@18.3.1) + '@react-stately/tree': 3.9.3(react@18.3.1) + '@react-types/button': 3.14.1(react@18.3.1) + '@react-types/menu': 3.10.5(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/meter@3.4.26(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/meter@3.4.27(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/progress': 3.4.26(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/meter': 3.4.12(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/progress': 3.4.27(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/meter': 3.4.13(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/numberfield@3.12.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/spinbutton': 3.6.18(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/textfield': 3.18.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/form': 3.2.1(react@18.3.1) - '@react-stately/numberfield': 3.10.1(react@18.3.1) - '@react-types/button': 3.14.0(react@18.3.1) - '@react-types/numberfield': 3.8.14(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/numberfield@3.12.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/spinbutton': 3.6.19(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/textfield': 3.18.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/form': 3.2.2(react@18.3.1) + '@react-stately/numberfield': 3.10.2(react@18.3.1) + '@react-types/button': 3.14.1(react@18.3.1) + '@react-types/numberfield': 3.8.15(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/overlays@3.29.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/overlays@3.30.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.21.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.21.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/ssr': 3.9.10(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/visually-hidden': 3.8.27(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/overlays': 3.6.19(react@18.3.1) - '@react-types/button': 3.14.0(react@18.3.1) - '@react-types/overlays': 3.9.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/visually-hidden': 3.8.28(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/overlays': 3.6.20(react@18.3.1) + '@react-types/button': 3.14.1(react@18.3.1) + '@react-types/overlays': 3.9.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/progress@3.4.26(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/progress@3.4.27(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/progress': 3.5.15(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.22(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/progress': 3.5.16(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/radio@3.12.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - '@react-aria/focus': 3.21.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/form': 3.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/radio': 3.11.1(react@18.3.1) - '@react-types/radio': 3.9.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/radio@3.12.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@react-aria/focus': 3.21.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/form': 3.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.22(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/radio': 3.11.2(react@18.3.1) + '@react-types/radio': 3.9.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/searchfield@3.8.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/searchfield@3.8.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/textfield': 3.18.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/searchfield': 3.5.15(react@18.3.1) - '@react-types/button': 3.14.0(react@18.3.1) - '@react-types/searchfield': 3.6.5(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/textfield': 3.18.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/searchfield': 3.5.16(react@18.3.1) + '@react-types/button': 3.14.1(react@18.3.1) + '@react-types/searchfield': 3.6.6(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/select@3.16.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - '@react-aria/form': 3.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/listbox': 3.14.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/menu': 3.19.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.25.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/visually-hidden': 3.8.27(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/select': 3.7.1(react@18.3.1) - '@react-types/button': 3.14.0(react@18.3.1) - '@react-types/select': 3.10.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/select@3.17.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@react-aria/form': 3.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.22(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/listbox': 3.15.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/menu': 3.19.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/visually-hidden': 3.8.28(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/select': 3.8.0(react@18.3.1) + '@react-types/button': 3.14.1(react@18.3.1) + '@react-types/select': 3.11.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/selection@3.25.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/selection@3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.21.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/selection': 3.20.5(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/focus': 3.21.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/selection': 3.20.6(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/separator@3.4.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/separator@3.4.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/slider@3.8.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/slider@3.8.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/slider': 3.7.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) - '@react-types/slider': 3.8.1(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.22(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/slider': 3.7.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) + '@react-types/slider': 3.8.2(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/spinbutton@3.6.18(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/spinbutton@3.6.19(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/live-announcer': 3.4.4 - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/button': 3.14.0(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/button': 3.14.1(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -10714,152 +10708,152 @@ snapshots: '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-aria/switch@3.7.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/switch@3.7.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/toggle': 3.12.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/toggle': 3.9.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) - '@react-types/switch': 3.5.14(react@18.3.1) + '@react-aria/toggle': 3.12.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/toggle': 3.9.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) + '@react-types/switch': 3.5.15(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/table@3.17.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/table@3.17.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.21.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/grid': 3.14.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.21.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/grid': 3.14.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/live-announcer': 3.4.4 - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/visually-hidden': 3.8.27(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/collections': 3.12.7(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/visually-hidden': 3.8.28(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/collections': 3.12.8(react@18.3.1) '@react-stately/flags': 3.1.2 - '@react-stately/table': 3.15.0(react@18.3.1) - '@react-types/checkbox': 3.10.1(react@18.3.1) - '@react-types/grid': 3.3.5(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) - '@react-types/table': 3.13.3(react@18.3.1) + '@react-stately/table': 3.15.1(react@18.3.1) + '@react-types/checkbox': 3.10.2(react@18.3.1) + '@react-types/grid': 3.3.6(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) + '@react-types/table': 3.13.4(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/tabs@3.10.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/tabs@3.10.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.21.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.25.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/tabs': 3.8.5(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) - '@react-types/tabs': 3.3.18(react@18.3.1) + '@react-aria/focus': 3.21.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/tabs': 3.8.6(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) + '@react-types/tabs': 3.3.19(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/tag@3.7.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': - dependencies: - '@react-aria/gridlist': 3.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.25.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/list': 3.13.0(react@18.3.1) - '@react-types/button': 3.14.0(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/tag@3.7.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@react-aria/gridlist': 3.14.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.22(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/list': 3.13.1(react@18.3.1) + '@react-types/button': 3.14.1(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/textfield@3.18.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/textfield@3.18.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/form': 3.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/form': 3.2.1(react@18.3.1) + '@react-aria/form': 3.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.22(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/form': 3.2.2(react@18.3.1) '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) - '@react-types/textfield': 3.12.5(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) + '@react-types/textfield': 3.12.6(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/toast@3.0.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/toast@3.0.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/landmark': 3.0.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/landmark': 3.0.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-stately/toast': 3.1.2(react@18.3.1) - '@react-types/button': 3.14.0(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/button': 3.14.1(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/toggle@3.12.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/toggle@3.12.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/toggle': 3.9.1(react@18.3.1) - '@react-types/checkbox': 3.10.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/toggle': 3.9.2(react@18.3.1) + '@react-types/checkbox': 3.10.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/toolbar@3.0.0-beta.20(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/toolbar@3.0.0-beta.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/focus': 3.21.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/focus': 3.21.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/tooltip@3.8.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/tooltip@3.8.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/tooltip': 3.5.7(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) - '@react-types/tooltip': 3.4.20(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/tooltip': 3.5.8(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) + '@react-types/tooltip': 3.4.21(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/tree@3.1.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/tree@3.1.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/gridlist': 3.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.25.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-stately/tree': 3.9.2(react@18.3.1) - '@react-types/button': 3.14.0(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/gridlist': 3.14.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-stately/tree': 3.9.3(react@18.3.1) + '@react-types/button': 3.14.1(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/utils@3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/utils@3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@react-aria/ssr': 3.9.10(react@18.3.1) '@react-stately/flags': 3.1.2 '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 clsx: 2.1.1 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-aria/visually-hidden@3.8.27(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@react-aria/visually-hidden@3.8.28(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -10870,79 +10864,78 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@react-stately/calendar@3.8.4(react@18.3.1)': + '@react-stately/calendar@3.9.0(react@18.3.1)': dependencies: - '@internationalized/date': 3.9.0 + '@internationalized/date': 3.10.0 '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/calendar': 3.7.4(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/calendar': 3.8.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/checkbox@3.7.1(react@18.3.1)': + '@react-stately/checkbox@3.7.2(react@18.3.1)': dependencies: - '@react-stately/form': 3.2.1(react@18.3.1) + '@react-stately/form': 3.2.2(react@18.3.1) '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/checkbox': 3.10.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/checkbox': 3.10.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/collections@3.12.7(react@18.3.1)': + '@react-stately/collections@3.12.8(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/color@3.9.1(react@18.3.1)': + '@react-stately/color@3.9.2(react@18.3.1)': dependencies: '@internationalized/number': 3.6.5 '@internationalized/string': 3.2.7 - '@react-stately/form': 3.2.1(react@18.3.1) - '@react-stately/numberfield': 3.10.1(react@18.3.1) - '@react-stately/slider': 3.7.1(react@18.3.1) + '@react-stately/form': 3.2.2(react@18.3.1) + '@react-stately/numberfield': 3.10.2(react@18.3.1) + '@react-stately/slider': 3.7.2(react@18.3.1) '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/color': 3.1.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/color': 3.1.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/combobox@3.11.1(react@18.3.1)': + '@react-stately/combobox@3.12.0(react@18.3.1)': dependencies: - '@react-stately/collections': 3.12.7(react@18.3.1) - '@react-stately/form': 3.2.1(react@18.3.1) - '@react-stately/list': 3.13.0(react@18.3.1) - '@react-stately/overlays': 3.6.19(react@18.3.1) - '@react-stately/select': 3.7.1(react@18.3.1) + '@react-stately/collections': 3.12.8(react@18.3.1) + '@react-stately/form': 3.2.2(react@18.3.1) + '@react-stately/list': 3.13.1(react@18.3.1) + '@react-stately/overlays': 3.6.20(react@18.3.1) '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/combobox': 3.13.8(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/combobox': 3.13.9(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/datepicker@3.15.1(react@18.3.1)': + '@react-stately/datepicker@3.15.2(react@18.3.1)': dependencies: - '@internationalized/date': 3.9.0 + '@internationalized/date': 3.10.0 '@internationalized/string': 3.2.7 - '@react-stately/form': 3.2.1(react@18.3.1) - '@react-stately/overlays': 3.6.19(react@18.3.1) + '@react-stately/form': 3.2.2(react@18.3.1) + '@react-stately/overlays': 3.6.20(react@18.3.1) '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/datepicker': 3.13.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/datepicker': 3.13.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/disclosure@3.0.7(react@18.3.1)': + '@react-stately/disclosure@3.0.8(react@18.3.1)': dependencies: '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/dnd@3.7.0(react@18.3.1)': + '@react-stately/dnd@3.7.1(react@18.3.1)': dependencies: - '@react-stately/selection': 3.20.5(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-stately/selection': 3.20.6(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 @@ -10950,114 +10943,115 @@ snapshots: dependencies: '@swc/helpers': 0.5.17 - '@react-stately/form@3.2.1(react@18.3.1)': + '@react-stately/form@3.2.2(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/grid@3.11.5(react@18.3.1)': + '@react-stately/grid@3.11.6(react@18.3.1)': dependencies: - '@react-stately/collections': 3.12.7(react@18.3.1) - '@react-stately/selection': 3.20.5(react@18.3.1) - '@react-types/grid': 3.3.5(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-stately/collections': 3.12.8(react@18.3.1) + '@react-stately/selection': 3.20.6(react@18.3.1) + '@react-types/grid': 3.3.6(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/list@3.13.0(react@18.3.1)': + '@react-stately/list@3.13.1(react@18.3.1)': dependencies: - '@react-stately/collections': 3.12.7(react@18.3.1) - '@react-stately/selection': 3.20.5(react@18.3.1) + '@react-stately/collections': 3.12.8(react@18.3.1) + '@react-stately/selection': 3.20.6(react@18.3.1) '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/menu@3.9.7(react@18.3.1)': + '@react-stately/menu@3.9.8(react@18.3.1)': dependencies: - '@react-stately/overlays': 3.6.19(react@18.3.1) - '@react-types/menu': 3.10.4(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-stately/overlays': 3.6.20(react@18.3.1) + '@react-types/menu': 3.10.5(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/numberfield@3.10.1(react@18.3.1)': + '@react-stately/numberfield@3.10.2(react@18.3.1)': dependencies: '@internationalized/number': 3.6.5 - '@react-stately/form': 3.2.1(react@18.3.1) + '@react-stately/form': 3.2.2(react@18.3.1) '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/numberfield': 3.8.14(react@18.3.1) + '@react-types/numberfield': 3.8.15(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/overlays@3.6.19(react@18.3.1)': + '@react-stately/overlays@3.6.20(react@18.3.1)': dependencies: '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/overlays': 3.9.1(react@18.3.1) + '@react-types/overlays': 3.9.2(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/radio@3.11.1(react@18.3.1)': + '@react-stately/radio@3.11.2(react@18.3.1)': dependencies: - '@react-stately/form': 3.2.1(react@18.3.1) + '@react-stately/form': 3.2.2(react@18.3.1) '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/radio': 3.9.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/radio': 3.9.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/searchfield@3.5.15(react@18.3.1)': + '@react-stately/searchfield@3.5.16(react@18.3.1)': dependencies: '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/searchfield': 3.6.5(react@18.3.1) + '@react-types/searchfield': 3.6.6(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/select@3.7.1(react@18.3.1)': + '@react-stately/select@3.8.0(react@18.3.1)': dependencies: - '@react-stately/form': 3.2.1(react@18.3.1) - '@react-stately/list': 3.13.0(react@18.3.1) - '@react-stately/overlays': 3.6.19(react@18.3.1) - '@react-types/select': 3.10.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-stately/form': 3.2.2(react@18.3.1) + '@react-stately/list': 3.13.1(react@18.3.1) + '@react-stately/overlays': 3.6.20(react@18.3.1) + '@react-stately/utils': 3.10.8(react@18.3.1) + '@react-types/select': 3.11.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/selection@3.20.5(react@18.3.1)': + '@react-stately/selection@3.20.6(react@18.3.1)': dependencies: - '@react-stately/collections': 3.12.7(react@18.3.1) + '@react-stately/collections': 3.12.8(react@18.3.1) '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/slider@3.7.1(react@18.3.1)': + '@react-stately/slider@3.7.2(react@18.3.1)': dependencies: '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) - '@react-types/slider': 3.8.1(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) + '@react-types/slider': 3.8.2(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/table@3.15.0(react@18.3.1)': + '@react-stately/table@3.15.1(react@18.3.1)': dependencies: - '@react-stately/collections': 3.12.7(react@18.3.1) + '@react-stately/collections': 3.12.8(react@18.3.1) '@react-stately/flags': 3.1.2 - '@react-stately/grid': 3.11.5(react@18.3.1) - '@react-stately/selection': 3.20.5(react@18.3.1) + '@react-stately/grid': 3.11.6(react@18.3.1) + '@react-stately/selection': 3.20.6(react@18.3.1) '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/grid': 3.3.5(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) - '@react-types/table': 3.13.3(react@18.3.1) + '@react-types/grid': 3.3.6(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) + '@react-types/table': 3.13.4(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/tabs@3.8.5(react@18.3.1)': + '@react-stately/tabs@3.8.6(react@18.3.1)': dependencies: - '@react-stately/list': 3.13.0(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) - '@react-types/tabs': 3.3.18(react@18.3.1) + '@react-stately/list': 3.13.1(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) + '@react-types/tabs': 3.3.19(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 @@ -11067,27 +11061,27 @@ snapshots: react: 18.3.1 use-sync-external-store: 1.6.0(react@18.3.1) - '@react-stately/toggle@3.9.1(react@18.3.1)': + '@react-stately/toggle@3.9.2(react@18.3.1)': dependencies: '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/checkbox': 3.10.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/checkbox': 3.10.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/tooltip@3.5.7(react@18.3.1)': + '@react-stately/tooltip@3.5.8(react@18.3.1)': dependencies: - '@react-stately/overlays': 3.6.19(react@18.3.1) - '@react-types/tooltip': 3.4.20(react@18.3.1) + '@react-stately/overlays': 3.6.20(react@18.3.1) + '@react-types/tooltip': 3.4.21(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-stately/tree@3.9.2(react@18.3.1)': + '@react-stately/tree@3.9.3(react@18.3.1)': dependencies: - '@react-stately/collections': 3.12.7(react@18.3.1) - '@react-stately/selection': 3.20.5(react@18.3.1) + '@react-stately/collections': 3.12.8(react@18.3.1) + '@react-stately/selection': 3.20.6(react@18.3.1) '@react-stately/utils': 3.10.8(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 @@ -11096,144 +11090,144 @@ snapshots: '@swc/helpers': 0.5.17 react: 18.3.1 - '@react-types/breadcrumbs@3.7.16(react@18.3.1)': + '@react-types/breadcrumbs@3.7.17(react@18.3.1)': dependencies: - '@react-types/link': 3.6.4(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/link': 3.6.5(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/button@3.14.0(react@18.3.1)': + '@react-types/button@3.14.1(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/calendar@3.7.4(react@18.3.1)': + '@react-types/calendar@3.8.0(react@18.3.1)': dependencies: - '@internationalized/date': 3.9.0 - '@react-types/shared': 3.32.0(react@18.3.1) + '@internationalized/date': 3.10.0 + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/checkbox@3.10.1(react@18.3.1)': + '@react-types/checkbox@3.10.2(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/color@3.1.1(react@18.3.1)': + '@react-types/color@3.1.2(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) - '@react-types/slider': 3.8.1(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) + '@react-types/slider': 3.8.2(react@18.3.1) react: 18.3.1 - '@react-types/combobox@3.13.8(react@18.3.1)': + '@react-types/combobox@3.13.9(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/datepicker@3.13.1(react@18.3.1)': + '@react-types/datepicker@3.13.2(react@18.3.1)': dependencies: - '@internationalized/date': 3.9.0 - '@react-types/calendar': 3.7.4(react@18.3.1) - '@react-types/overlays': 3.9.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@internationalized/date': 3.10.0 + '@react-types/calendar': 3.8.0(react@18.3.1) + '@react-types/overlays': 3.9.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/dialog@3.5.21(react@18.3.1)': + '@react-types/dialog@3.5.22(react@18.3.1)': dependencies: - '@react-types/overlays': 3.9.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/overlays': 3.9.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/grid@3.3.5(react@18.3.1)': + '@react-types/grid@3.3.6(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/link@3.6.4(react@18.3.1)': + '@react-types/link@3.6.5(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/listbox@3.7.3(react@18.3.1)': + '@react-types/listbox@3.7.4(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/menu@3.10.4(react@18.3.1)': + '@react-types/menu@3.10.5(react@18.3.1)': dependencies: - '@react-types/overlays': 3.9.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/overlays': 3.9.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/meter@3.4.12(react@18.3.1)': + '@react-types/meter@3.4.13(react@18.3.1)': dependencies: - '@react-types/progress': 3.5.15(react@18.3.1) + '@react-types/progress': 3.5.16(react@18.3.1) react: 18.3.1 - '@react-types/numberfield@3.8.14(react@18.3.1)': + '@react-types/numberfield@3.8.15(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/overlays@3.9.1(react@18.3.1)': + '@react-types/overlays@3.9.2(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/progress@3.5.15(react@18.3.1)': + '@react-types/progress@3.5.16(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/radio@3.9.1(react@18.3.1)': + '@react-types/radio@3.9.2(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/searchfield@3.6.5(react@18.3.1)': + '@react-types/searchfield@3.6.6(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) - '@react-types/textfield': 3.12.5(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) + '@react-types/textfield': 3.12.6(react@18.3.1) react: 18.3.1 - '@react-types/select@3.10.1(react@18.3.1)': + '@react-types/select@3.11.0(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/shared@3.32.0(react@18.3.1)': + '@react-types/shared@3.32.1(react@18.3.1)': dependencies: react: 18.3.1 - '@react-types/slider@3.8.1(react@18.3.1)': + '@react-types/slider@3.8.2(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/switch@3.5.14(react@18.3.1)': + '@react-types/switch@3.5.15(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/table@3.13.3(react@18.3.1)': + '@react-types/table@3.13.4(react@18.3.1)': dependencies: - '@react-types/grid': 3.3.5(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/grid': 3.3.6(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/tabs@3.3.18(react@18.3.1)': + '@react-types/tabs@3.3.19(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/textfield@3.12.5(react@18.3.1)': + '@react-types/textfield@3.12.6(react@18.3.1)': dependencies: - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 - '@react-types/tooltip@3.4.20(react@18.3.1)': + '@react-types/tooltip@3.4.21(react@18.3.1)': dependencies: - '@react-types/overlays': 3.9.1(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-types/overlays': 3.9.2(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 '@readme/better-ajv-errors@2.3.2(ajv@8.17.1)': @@ -11267,75 +11261,75 @@ snapshots: '@resvg/resvg-wasm@2.6.2': {} - '@rollup/rollup-android-arm-eabi@4.52.3': + '@rollup/rollup-android-arm-eabi@4.52.4': optional: true - '@rollup/rollup-android-arm64@4.52.3': + '@rollup/rollup-android-arm64@4.52.4': optional: true - '@rollup/rollup-darwin-arm64@4.52.3': + '@rollup/rollup-darwin-arm64@4.52.4': optional: true - '@rollup/rollup-darwin-x64@4.52.3': + '@rollup/rollup-darwin-x64@4.52.4': optional: true - '@rollup/rollup-freebsd-arm64@4.52.3': + '@rollup/rollup-freebsd-arm64@4.52.4': optional: true - '@rollup/rollup-freebsd-x64@4.52.3': + '@rollup/rollup-freebsd-x64@4.52.4': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.52.3': + '@rollup/rollup-linux-arm-gnueabihf@4.52.4': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.52.3': + '@rollup/rollup-linux-arm-musleabihf@4.52.4': optional: true - '@rollup/rollup-linux-arm64-gnu@4.52.3': + '@rollup/rollup-linux-arm64-gnu@4.52.4': optional: true - '@rollup/rollup-linux-arm64-musl@4.52.3': + '@rollup/rollup-linux-arm64-musl@4.52.4': optional: true - '@rollup/rollup-linux-loong64-gnu@4.52.3': + '@rollup/rollup-linux-loong64-gnu@4.52.4': optional: true - '@rollup/rollup-linux-ppc64-gnu@4.52.3': + '@rollup/rollup-linux-ppc64-gnu@4.52.4': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.52.3': + '@rollup/rollup-linux-riscv64-gnu@4.52.4': optional: true - '@rollup/rollup-linux-riscv64-musl@4.52.3': + '@rollup/rollup-linux-riscv64-musl@4.52.4': optional: true - '@rollup/rollup-linux-s390x-gnu@4.52.3': + '@rollup/rollup-linux-s390x-gnu@4.52.4': optional: true - '@rollup/rollup-linux-x64-gnu@4.52.3': + '@rollup/rollup-linux-x64-gnu@4.52.4': optional: true - '@rollup/rollup-linux-x64-musl@4.52.3': + '@rollup/rollup-linux-x64-musl@4.52.4': optional: true - '@rollup/rollup-openharmony-arm64@4.52.3': + '@rollup/rollup-openharmony-arm64@4.52.4': optional: true - '@rollup/rollup-win32-arm64-msvc@4.52.3': + '@rollup/rollup-win32-arm64-msvc@4.52.4': optional: true - '@rollup/rollup-win32-ia32-msvc@4.52.3': + '@rollup/rollup-win32-ia32-msvc@4.52.4': optional: true - '@rollup/rollup-win32-x64-gnu@4.52.3': + '@rollup/rollup-win32-x64-gnu@4.52.4': optional: true - '@rollup/rollup-win32-x64-msvc@4.52.3': + '@rollup/rollup-win32-x64-msvc@4.52.4': optional: true '@rtsao/scc@1.1.0': {} - '@rushstack/eslint-patch@1.12.0': {} + '@rushstack/eslint-patch@1.14.0': {} '@scure/base@1.1.9': {} @@ -11575,18 +11569,18 @@ snapshots: dependencies: tailwindcss: 3.4.18(tsx@4.20.4)(yaml@2.8.1) - '@tanem/react-nprogress@5.0.55(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@tanem/react-nprogress@5.0.56(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': dependencies: '@babel/runtime': 7.28.4 hoist-non-react-statics: 3.3.2 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - '@tanstack/query-core@5.90.2': {} + '@tanstack/query-core@5.90.4': {} - '@tanstack/react-query@5.90.2(react@18.3.1)': + '@tanstack/react-query@5.90.4(react@18.3.1)': dependencies: - '@tanstack/query-core': 5.90.2 + '@tanstack/query-core': 5.90.4 react: 18.3.1 '@tanstack/react-virtual@3.13.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': @@ -11610,57 +11604,57 @@ snapshots: npm-to-yarn: 3.0.1 unist-util-visit: 5.0.0 - '@theme-ui/color-modes@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1)': + '@theme-ui/color-modes@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)': dependencies: - '@emotion/react': 11.14.0(@types/react@18.3.25)(react@18.3.1) - '@theme-ui/core': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1) - '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1)) + '@emotion/react': 11.14.0(@types/react@18.3.26)(react@18.3.1) + '@theme-ui/core': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1)) deepmerge: 4.3.1 react: 18.3.1 - '@theme-ui/components@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(@theme-ui/theme-provider@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1))(react@18.3.1)': + '@theme-ui/components@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(@theme-ui/theme-provider@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react@18.3.1)': dependencies: - '@emotion/react': 11.14.0(@types/react@18.3.25)(react@18.3.1) + '@emotion/react': 11.14.0(@types/react@18.3.26)(react@18.3.1) '@styled-system/color': 5.1.2 '@styled-system/should-forward-prop': 5.1.5 '@styled-system/space': 5.1.2 - '@theme-ui/core': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1) - '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1)) - '@theme-ui/theme-provider': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1) + '@theme-ui/core': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1)) + '@theme-ui/theme-provider': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) '@types/styled-system': 5.1.24 react: 18.3.1 - '@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1)': + '@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)': dependencies: - '@emotion/react': 11.14.0(@types/react@18.3.25)(react@18.3.1) - '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1)) + '@emotion/react': 11.14.0(@types/react@18.3.26)(react@18.3.1) + '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1)) deepmerge: 4.3.1 react: 18.3.1 - '@theme-ui/css@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))': + '@theme-ui/css@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))': dependencies: - '@emotion/react': 11.14.0(@types/react@18.3.25)(react@18.3.1) + '@emotion/react': 11.14.0(@types/react@18.3.26)(react@18.3.1) csstype: 3.1.3 - '@theme-ui/global@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1)': + '@theme-ui/global@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)': dependencies: - '@emotion/react': 11.14.0(@types/react@18.3.25)(react@18.3.1) - '@theme-ui/core': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1) - '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1)) + '@emotion/react': 11.14.0(@types/react@18.3.26)(react@18.3.1) + '@theme-ui/core': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1)) react: 18.3.1 - '@theme-ui/match-media@0.17.2(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1))(@theme-ui/css@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1)))(react@18.3.1)': + '@theme-ui/match-media@0.17.2(@theme-ui/core@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(@theme-ui/css@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1)))(react@18.3.1)': dependencies: - '@theme-ui/core': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1) - '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1)) + '@theme-ui/core': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1)) react: 18.3.1 - '@theme-ui/theme-provider@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1)': + '@theme-ui/theme-provider@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1)': dependencies: - '@emotion/react': 11.14.0(@types/react@18.3.25)(react@18.3.1) - '@theme-ui/color-modes': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1) - '@theme-ui/core': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1) - '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1)) + '@emotion/react': 11.14.0(@types/react@18.3.26)(react@18.3.1) + '@theme-ui/color-modes': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + '@theme-ui/core': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1)) react: 18.3.1 '@ts-morph/common@0.27.0': @@ -11676,7 +11670,7 @@ snapshots: '@types/concat-stream@2.0.3': dependencies: - '@types/node': 22.18.8 + '@types/node': 22.18.10 '@types/cookie@0.6.0': {} @@ -11835,7 +11829,7 @@ snapshots: '@types/mixpanel-browser@2.66.0': dependencies: - mixpanel-browser: 2.70.0 + mixpanel-browser: 2.71.0 '@types/ms@2.1.0': {} @@ -11843,7 +11837,7 @@ snapshots: dependencies: '@types/unist': 3.0.3 - '@types/node@22.18.8': + '@types/node@22.18.10': dependencies: undici-types: 6.21.0 @@ -11853,11 +11847,11 @@ snapshots: '@types/prop-types@15.7.15': {} - '@types/react-dom@18.3.7(@types/react@18.3.25)': + '@types/react-dom@18.3.7(@types/react@18.3.26)': dependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - '@types/react@18.3.25': + '@types/react@18.3.26': dependencies: '@types/prop-types': 15.7.15 csstype: 3.1.3 @@ -11894,7 +11888,7 @@ snapshots: graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 - semver: 7.7.2 + semver: 7.7.3 ts-api-utils: 1.4.3(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 @@ -11941,7 +11935,7 @@ snapshots: globby: 11.1.0 is-glob: 4.0.3 minimatch: 9.0.3 - semver: 7.7.2 + semver: 7.7.3 ts-api-utils: 1.4.3(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 @@ -11957,7 +11951,7 @@ snapshots: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.9.3) eslint: 8.57.1 - semver: 7.7.2 + semver: 7.7.3 transitivePeerDependencies: - supports-color - typescript @@ -11978,7 +11972,7 @@ snapshots: '@uniswap/lib@4.0.1-alpha': {} - '@uniswap/sdk-core@7.7.2': + '@uniswap/sdk-core@7.7.3': dependencies: '@ethersproject/address': 5.8.0 '@ethersproject/bytes': 5.8.0 @@ -12019,7 +12013,7 @@ snapshots: dependencies: '@ethersproject/abi': 5.8.0 '@ethersproject/solidity': 5.8.0 - '@uniswap/sdk-core': 7.7.2 + '@uniswap/sdk-core': 7.7.3 '@uniswap/swap-router-contracts': 1.3.1(hardhat@2.26.3(typescript@5.9.3)) '@uniswap/v3-periphery': 1.4.4 '@uniswap/v3-staker': 1.0.0 @@ -12102,13 +12096,13 @@ snapshots: chai: 5.3.3 tinyrainbow: 1.2.0 - '@vitest/mocker@2.1.9(vite@5.4.20(@types/node@22.18.8))': + '@vitest/mocker@2.1.9(vite@5.4.20(@types/node@22.18.10))': dependencies: '@vitest/spy': 2.1.9 estree-walker: 3.0.3 magic-string: 0.30.19 optionalDependencies: - vite: 5.4.20(@types/node@22.18.8) + vite: 5.4.20(@types/node@22.18.10) '@vitest/pretty-format@2.1.9': dependencies: @@ -12135,13 +12129,13 @@ snapshots: loupe: 3.2.1 tinyrainbow: 1.2.0 - '@web3icons/common@0.11.19(typescript@5.9.3)': + '@web3icons/common@0.11.20(typescript@5.9.3)': dependencies: typescript: 5.9.3 - '@web3icons/react@4.0.25(react@18.3.1)(typescript@5.9.3)': + '@web3icons/react@4.0.26(react@18.3.1)(typescript@5.9.3)': dependencies: - '@web3icons/common': 0.11.19(typescript@5.9.3) + '@web3icons/common': 0.11.20(typescript@5.9.3) react: 18.3.1 transitivePeerDependencies: - typescript @@ -12150,10 +12144,10 @@ snapshots: '@xstate/fsm@1.6.5': {} - '@xstate/react@3.2.2(@types/react@18.3.25)(react@18.3.1)(xstate@4.38.3)': + '@xstate/react@3.2.2(@types/react@18.3.26)(react@18.3.1)(xstate@4.38.3)': dependencies: react: 18.3.1 - use-isomorphic-layout-effect: 1.2.1(@types/react@18.3.25)(react@18.3.1) + use-isomorphic-layout-effect: 1.2.1(@types/react@18.3.26)(react@18.3.1) use-sync-external-store: 1.6.0(react@18.3.1) optionalDependencies: xstate: 4.38.3 @@ -12167,10 +12161,10 @@ snapshots: typescript: 5.9.3 zod: 3.25.76 - abitype@1.1.1(typescript@5.9.3)(zod@4.1.11): + abitype@1.1.1(typescript@5.9.3)(zod@4.1.12): optionalDependencies: typescript: 5.9.3 - zod: 4.1.11 + zod: 4.1.12 acorn-jsx@5.3.2(acorn@8.15.0): dependencies: @@ -12217,22 +12211,22 @@ snapshots: json-schema-traverse: 1.0.0 require-from-string: 2.0.2 - algoliasearch@5.39.0: - dependencies: - '@algolia/abtesting': 1.5.0 - '@algolia/client-abtesting': 5.39.0 - '@algolia/client-analytics': 5.39.0 - '@algolia/client-common': 5.39.0 - '@algolia/client-insights': 5.39.0 - '@algolia/client-personalization': 5.39.0 - '@algolia/client-query-suggestions': 5.39.0 - '@algolia/client-search': 5.39.0 - '@algolia/ingestion': 1.39.0 - '@algolia/monitoring': 1.39.0 - '@algolia/recommend': 5.39.0 - '@algolia/requester-browser-xhr': 5.39.0 - '@algolia/requester-fetch': 5.39.0 - '@algolia/requester-node-http': 5.39.0 + algoliasearch@5.40.1: + dependencies: + '@algolia/abtesting': 1.6.1 + '@algolia/client-abtesting': 5.40.1 + '@algolia/client-analytics': 5.40.1 + '@algolia/client-common': 5.40.1 + '@algolia/client-insights': 5.40.1 + '@algolia/client-personalization': 5.40.1 + '@algolia/client-query-suggestions': 5.40.1 + '@algolia/client-search': 5.40.1 + '@algolia/ingestion': 1.40.1 + '@algolia/monitoring': 1.40.1 + '@algolia/recommend': 5.40.1 + '@algolia/requester-browser-xhr': 5.40.1 + '@algolia/requester-fetch': 5.40.1 + '@algolia/requester-node-http': 5.40.1 ansi-align@3.0.1: dependencies: @@ -12365,7 +12359,7 @@ snapshots: autoprefixer@10.4.21(postcss@8.5.6): dependencies: browserslist: 4.26.3 - caniuse-lite: 1.0.30001746 + caniuse-lite: 1.0.30001751 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.1 @@ -12376,7 +12370,7 @@ snapshots: dependencies: possible-typed-array-names: 1.1.0 - axe-core@4.10.3: {} + axe-core@4.11.0: {} axobject-query@4.1.0: {} @@ -12398,7 +12392,7 @@ snapshots: base64-sol@1.0.1: {} - baseline-browser-mapping@2.8.10: {} + baseline-browser-mapping@2.8.16: {} bech32@1.1.4: {} @@ -12464,10 +12458,10 @@ snapshots: browserslist@4.26.3: dependencies: - baseline-browser-mapping: 2.8.10 - caniuse-lite: 1.0.30001746 - electron-to-chromium: 1.5.228 - node-releases: 2.0.21 + baseline-browser-mapping: 2.8.16 + caniuse-lite: 1.0.30001751 + electron-to-chromium: 1.5.237 + node-releases: 2.0.25 update-browserslist-db: 1.1.3(browserslist@4.26.3) buffer-from@1.1.2: {} @@ -12477,9 +12471,9 @@ snapshots: base64-js: 1.5.1 ieee754: 1.2.1 - bundle-require@5.1.0(esbuild@0.25.10): + bundle-require@5.1.0(esbuild@0.25.11): dependencies: - esbuild: 0.25.10 + esbuild: 0.25.11 load-tsconfig: 0.2.5 busboy@1.6.0: @@ -12515,7 +12509,7 @@ snapshots: camelize@1.0.1: {} - caniuse-lite@1.0.30001746: {} + caniuse-lite@1.0.30001751: {} ccount@2.0.1: {} @@ -12578,7 +12572,7 @@ snapshots: ci-info@2.0.0: {} - ci-info@4.3.0: {} + ci-info@4.3.1: {} clean-stack@2.2.0: {} @@ -13008,7 +13002,7 @@ snapshots: dequal@2.0.3: {} - detect-libc@2.1.1: + detect-libc@2.1.2: optional: true detect-node-es@1.1.0: {} @@ -13044,7 +13038,7 @@ snapshots: '@babel/runtime': 7.28.4 csstype: 3.1.3 - dompurify@3.2.7: + dompurify@3.3.0: optionalDependencies: '@types/trusted-types': 2.0.7 @@ -13060,7 +13054,7 @@ snapshots: eastasianwidth@0.2.0: {} - electron-to-chromium@1.5.228: {} + electron-to-chromium@1.5.237: {} elliptic@6.6.1: dependencies: @@ -13076,7 +13070,7 @@ snapshots: emoji-regex-xs@2.0.1: {} - emoji-regex@10.5.0: {} + emoji-regex@10.6.0: {} emoji-regex@8.0.0: {} @@ -13269,34 +13263,34 @@ snapshots: '@esbuild/win32-ia32': 0.21.5 '@esbuild/win32-x64': 0.21.5 - esbuild@0.25.10: + esbuild@0.25.11: optionalDependencies: - '@esbuild/aix-ppc64': 0.25.10 - '@esbuild/android-arm': 0.25.10 - '@esbuild/android-arm64': 0.25.10 - '@esbuild/android-x64': 0.25.10 - '@esbuild/darwin-arm64': 0.25.10 - '@esbuild/darwin-x64': 0.25.10 - '@esbuild/freebsd-arm64': 0.25.10 - '@esbuild/freebsd-x64': 0.25.10 - '@esbuild/linux-arm': 0.25.10 - '@esbuild/linux-arm64': 0.25.10 - '@esbuild/linux-ia32': 0.25.10 - '@esbuild/linux-loong64': 0.25.10 - '@esbuild/linux-mips64el': 0.25.10 - '@esbuild/linux-ppc64': 0.25.10 - '@esbuild/linux-riscv64': 0.25.10 - '@esbuild/linux-s390x': 0.25.10 - '@esbuild/linux-x64': 0.25.10 - '@esbuild/netbsd-arm64': 0.25.10 - '@esbuild/netbsd-x64': 0.25.10 - '@esbuild/openbsd-arm64': 0.25.10 - '@esbuild/openbsd-x64': 0.25.10 - '@esbuild/openharmony-arm64': 0.25.10 - '@esbuild/sunos-x64': 0.25.10 - '@esbuild/win32-arm64': 0.25.10 - '@esbuild/win32-ia32': 0.25.10 - '@esbuild/win32-x64': 0.25.10 + '@esbuild/aix-ppc64': 0.25.11 + '@esbuild/android-arm': 0.25.11 + '@esbuild/android-arm64': 0.25.11 + '@esbuild/android-x64': 0.25.11 + '@esbuild/darwin-arm64': 0.25.11 + '@esbuild/darwin-x64': 0.25.11 + '@esbuild/freebsd-arm64': 0.25.11 + '@esbuild/freebsd-x64': 0.25.11 + '@esbuild/linux-arm': 0.25.11 + '@esbuild/linux-arm64': 0.25.11 + '@esbuild/linux-ia32': 0.25.11 + '@esbuild/linux-loong64': 0.25.11 + '@esbuild/linux-mips64el': 0.25.11 + '@esbuild/linux-ppc64': 0.25.11 + '@esbuild/linux-riscv64': 0.25.11 + '@esbuild/linux-s390x': 0.25.11 + '@esbuild/linux-x64': 0.25.11 + '@esbuild/netbsd-arm64': 0.25.11 + '@esbuild/netbsd-x64': 0.25.11 + '@esbuild/openbsd-arm64': 0.25.11 + '@esbuild/openbsd-x64': 0.25.11 + '@esbuild/openharmony-arm64': 0.25.11 + '@esbuild/sunos-x64': 0.25.11 + '@esbuild/win32-arm64': 0.25.11 + '@esbuild/win32-ia32': 0.25.11 + '@esbuild/win32-x64': 0.25.11 escalade@3.2.0: {} @@ -13319,7 +13313,7 @@ snapshots: '@nolyfill/is-core-module': 1.0.39 debug: 4.4.3(supports-color@8.1.1) eslint: 8.57.1 - get-tsconfig: 4.10.1 + get-tsconfig: 4.12.0 is-bun-module: 2.0.0 stable-hash: 0.0.5 tinyglobby: 0.2.15 @@ -13395,7 +13389,7 @@ snapshots: array-includes: 3.1.9 array.prototype.flatmap: 1.3.3 ast-types-flow: 0.0.8 - axe-core: 4.10.3 + axe-core: 4.11.0 axobject-query: 4.1.0 damerau-levenshtein: 1.0.8 emoji-regex: 9.2.2 @@ -13681,7 +13675,7 @@ snapshots: fast-uri@3.1.0: {} - fast-xml-parser@5.2.5: + fast-xml-parser@5.3.0: dependencies: strnum: 2.1.1 @@ -13727,7 +13721,7 @@ snapshots: dependencies: magic-string: 0.30.19 mlly: 1.8.0 - rollup: 4.52.3 + rollup: 4.52.4 flat-cache@3.2.0: dependencies: @@ -13766,9 +13760,9 @@ snapshots: fraction.js@4.3.7: {} - framer-motion@12.23.22(@emotion/is-prop-valid@0.8.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + framer-motion@12.23.24(@emotion/is-prop-valid@0.8.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - motion-dom: 12.23.21 + motion-dom: 12.23.23 motion-utils: 12.23.6 tslib: 2.8.1 optionalDependencies: @@ -13841,7 +13835,7 @@ snapshots: es-errors: 1.3.0 get-intrinsic: 1.3.0 - get-tsconfig@4.10.1: + get-tsconfig@4.12.0: dependencies: resolve-pkg-maps: 1.0.0 @@ -13933,7 +13927,7 @@ snapshots: transitivePeerDependencies: - encoding - graphql-request@7.2.0(graphql@16.11.0): + graphql-request@7.3.0(graphql@16.11.0): dependencies: '@graphql-typed-document-node/core': 3.2.0(graphql@16.11.0) graphql: 16.11.0 @@ -14084,7 +14078,7 @@ snapshots: mdast-util-mdx-jsx: 3.2.0 property-information: 7.1.0 space-separated-tokens: 2.0.2 - style-to-js: 1.1.17 + style-to-js: 1.1.18 transitivePeerDependencies: - supports-color @@ -14119,7 +14113,7 @@ snapshots: mdast-util-mdxjs-esm: 2.0.1 property-information: 7.1.0 space-separated-tokens: 2.0.2 - style-to-js: 1.1.17 + style-to-js: 1.1.18 unist-util-position: 5.0.0 zwitch: 2.0.4 transitivePeerDependencies: @@ -14153,7 +14147,7 @@ snapshots: mdast-util-mdxjs-esm: 2.0.1 property-information: 7.1.0 space-separated-tokens: 2.0.2 - style-to-js: 1.1.17 + style-to-js: 1.1.18 unist-util-position: 5.0.0 vfile-message: 4.0.3 transitivePeerDependencies: @@ -14297,11 +14291,11 @@ snapshots: internmap@2.0.3: {} - intl-messageformat@10.7.16: + intl-messageformat@10.7.18: dependencies: - '@formatjs/ecma402-abstract': 2.3.4 + '@formatjs/ecma402-abstract': 2.3.6 '@formatjs/fast-memoize': 2.2.7 - '@formatjs/icu-messageformat-parser': 2.11.2 + '@formatjs/icu-messageformat-parser': 2.11.4 tslib: 2.8.1 io-ts@1.10.4: @@ -14351,7 +14345,7 @@ snapshots: is-bun-module@2.0.0: dependencies: - semver: 7.7.2 + semver: 7.7.3 is-callable@1.2.7: {} @@ -14597,7 +14591,7 @@ snapshots: object.assign: 4.1.7 object.values: 1.2.1 - katex@0.16.22: + katex@0.16.25: dependencies: commander: 8.3.0 @@ -14713,7 +14707,7 @@ snapshots: markdown-table@3.0.4: {} - marked@16.3.0: {} + marked@16.4.0: {} math-intrinsics@1.1.0: {} @@ -14926,7 +14920,7 @@ snapshots: dependencies: '@braintree/sanitize-url': 7.1.1 '@iconify/utils': 3.0.2 - '@mermaid-js/parser': 0.6.2 + '@mermaid-js/parser': 0.6.3 '@types/d3': 7.4.3 cytoscape: 3.33.1 cytoscape-cose-bilkent: 4.1.0(cytoscape@3.33.1) @@ -14935,11 +14929,11 @@ snapshots: d3-sankey: 0.12.3 dagre-d3-es: 7.0.11 dayjs: 1.11.18 - dompurify: 3.2.7 - katex: 0.16.22 + dompurify: 3.3.0 + katex: 0.16.25 khroma: 2.1.0 lodash-es: 4.17.21 - marked: 16.3.0 + marked: 16.4.0 roughjs: 4.6.6 stylis: 4.3.6 ts-dedent: 2.2.0 @@ -15047,7 +15041,7 @@ snapshots: dependencies: '@types/katex': 0.16.7 devlop: 1.1.0 - katex: 0.16.22 + katex: 0.16.25 micromark-factory-space: 2.0.1 micromark-util-character: 2.1.1 micromark-util-symbol: 2.0.1 @@ -15257,7 +15251,7 @@ snapshots: mimic-fn@4.0.0: {} - miniflare@3.20250718.1: + miniflare@3.20250718.2: dependencies: '@cspotcode/source-map-support': 0.8.1 acorn: 8.14.0 @@ -15304,9 +15298,9 @@ snapshots: mitt@3.0.1: {} - mixpanel-browser@2.70.0: + mixpanel-browser@2.71.0: dependencies: - '@mixpanel/rrweb': 2.0.0-alpha.18.1 + '@mixpanel/rrweb': 2.0.0-alpha.18.2 mj-context-menu@0.6.1: {} @@ -15344,15 +15338,15 @@ snapshots: yargs-parser: 20.2.9 yargs-unparser: 2.0.0 - motion-dom@12.23.21: + motion-dom@12.23.23: dependencies: motion-utils: 12.23.6 motion-utils@12.23.6: {} - motion@12.23.22(@emotion/is-prop-valid@0.8.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + motion@12.23.24(@emotion/is-prop-valid@0.8.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - framer-motion: 12.23.22(@emotion/is-prop-valid@0.8.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + framer-motion: 12.23.24(@emotion/is-prop-valid@0.8.8)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) tslib: 2.8.1 optionalDependencies: '@emotion/is-prop-valid': 0.8.8 @@ -15373,7 +15367,7 @@ snapshots: nanoid@3.3.11: {} - napi-postinstall@0.3.3: {} + napi-postinstall@0.3.4: {} natural-compare@1.4.0: {} @@ -15398,7 +15392,7 @@ snapshots: '@next/env': 14.2.33 '@swc/helpers': 0.5.5 busboy: 1.6.0 - caniuse-lite: 1.0.30001746 + caniuse-lite: 1.0.30001751 graceful-fs: 4.2.11 postcss: 8.4.31 react: 18.3.1 @@ -15418,12 +15412,12 @@ snapshots: - '@babel/core' - babel-plugin-macros - nextra@3.3.1(@types/react@18.3.25)(next@14.2.33(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.3): + nextra@3.3.1(@types/react@18.3.26)(next@14.2.33(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.9.3): dependencies: '@formatjs/intl-localematcher': 0.5.10 '@headlessui/react': 2.2.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@mdx-js/mdx': 3.1.1 - '@mdx-js/react': 3.1.1(@types/react@18.3.25)(react@18.3.1) + '@mdx-js/react': 3.1.1(@types/react@18.3.26)(react@18.3.1) '@napi-rs/simple-git': 0.1.22 '@shikijs/twoslash': 1.29.2(typescript@5.9.3) '@theguild/remark-mermaid': 0.1.3(react@18.3.1) @@ -15436,7 +15430,7 @@ snapshots: graceful-fs: 4.2.11 gray-matter: 4.0.3 hast-util-to-estree: 3.1.3 - katex: 0.16.22 + katex: 0.16.25 mdast-util-from-markdown: 2.0.2 mdast-util-gfm: 3.1.0 mdast-util-to-hast: 13.2.0 @@ -15479,7 +15473,7 @@ snapshots: node-gyp-build@4.8.4: {} - node-releases@2.0.21: {} + node-releases@2.0.25: {} nopt@7.2.1: dependencies: @@ -15488,7 +15482,7 @@ snapshots: normalize-package-data@6.0.2: dependencies: hosted-git-info: 7.0.2 - semver: 7.7.2 + semver: 7.7.3 validate-npm-package-license: 3.0.4 normalize-path@3.0.0: {} @@ -15497,7 +15491,7 @@ snapshots: npm-install-checks@6.3.0: dependencies: - semver: 7.7.2 + semver: 7.7.3 npm-normalize-package-bin@3.0.1: {} @@ -15505,7 +15499,7 @@ snapshots: dependencies: hosted-git-info: 7.0.2 proc-log: 4.2.0 - semver: 7.7.2 + semver: 7.7.3 validate-npm-package-name: 5.0.1 npm-pick-manifest@9.1.0: @@ -15513,7 +15507,7 @@ snapshots: npm-install-checks: 6.3.0 npm-normalize-package-bin: 3.0.1 npm-package-arg: 11.0.3 - semver: 7.7.2 + semver: 7.7.3 npm-run-path@5.3.0: dependencies: @@ -15663,7 +15657,7 @@ snapshots: package-json-from-dist@1.0.1: {} - package-manager-detector@1.3.0: {} + package-manager-detector@1.4.1: {} pako@0.2.9: {} @@ -15835,7 +15829,7 @@ snapshots: prelude-ls@1.2.1: {} - prettier-plugin-tailwindcss@0.6.14(prettier@3.6.2): + prettier-plugin-tailwindcss@0.7.0(prettier@3.6.2): dependencies: prettier: 3.6.2 @@ -15904,50 +15898,50 @@ snapshots: iconv-lite: 0.4.24 unpipe: 1.0.0 - react-aria@3.43.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + react-aria@3.44.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@internationalized/string': 3.2.7 - '@react-aria/breadcrumbs': 3.5.28(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/button': 3.14.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/calendar': 3.9.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/checkbox': 3.16.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/color': 3.1.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/combobox': 3.13.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/datepicker': 3.15.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/dialog': 3.5.30(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/disclosure': 3.0.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/dnd': 3.11.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/focus': 3.21.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/gridlist': 3.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/i18n': 3.12.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/interactions': 3.25.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/label': 3.7.21(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/landmark': 3.0.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/link': 3.8.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/listbox': 3.14.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/menu': 3.19.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/meter': 3.4.26(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/numberfield': 3.12.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/overlays': 3.29.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/progress': 3.4.26(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/radio': 3.12.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/searchfield': 3.8.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/select': 3.16.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/selection': 3.25.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/separator': 3.4.12(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/slider': 3.8.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/breadcrumbs': 3.5.29(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/button': 3.14.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/calendar': 3.9.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/checkbox': 3.16.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/color': 3.1.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/combobox': 3.14.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/datepicker': 3.15.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/dialog': 3.5.31(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/disclosure': 3.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/dnd': 3.11.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/focus': 3.21.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/gridlist': 3.14.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/i18n': 3.12.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/interactions': 3.25.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/label': 3.7.22(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/landmark': 3.0.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/link': 3.8.6(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/listbox': 3.15.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/menu': 3.19.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/meter': 3.4.27(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/numberfield': 3.12.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/overlays': 3.30.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/progress': 3.4.27(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/radio': 3.12.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/searchfield': 3.8.9(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/select': 3.17.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/selection': 3.26.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/separator': 3.4.13(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/slider': 3.8.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@react-aria/ssr': 3.9.10(react@18.3.1) - '@react-aria/switch': 3.7.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/table': 3.17.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/tabs': 3.10.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/tag': 3.7.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/textfield': 3.18.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/toast': 3.0.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/tooltip': 3.8.7(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/tree': 3.1.3(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/utils': 3.30.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-aria/visually-hidden': 3.8.27(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@react-types/shared': 3.32.0(react@18.3.1) + '@react-aria/switch': 3.7.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/table': 3.17.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/tabs': 3.10.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/tag': 3.7.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/textfield': 3.18.2(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/toast': 3.0.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/tooltip': 3.8.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/tree': 3.1.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/utils': 3.31.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-aria/visually-hidden': 3.8.28(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@react-types/shared': 3.32.1(react@18.3.1) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -15996,24 +15990,24 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - react-remove-scroll-bar@2.3.8(@types/react@18.3.25)(react@18.3.1): + react-remove-scroll-bar@2.3.8(@types/react@18.3.26)(react@18.3.1): dependencies: react: 18.3.1 - react-style-singleton: 2.2.3(@types/react@18.3.25)(react@18.3.1) + react-style-singleton: 2.2.3(@types/react@18.3.26)(react@18.3.1) tslib: 2.8.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - react-remove-scroll@2.7.1(@types/react@18.3.25)(react@18.3.1): + react-remove-scroll@2.7.1(@types/react@18.3.26)(react@18.3.1): dependencies: react: 18.3.1 - react-remove-scroll-bar: 2.3.8(@types/react@18.3.25)(react@18.3.1) - react-style-singleton: 2.2.3(@types/react@18.3.25)(react@18.3.1) + react-remove-scroll-bar: 2.3.8(@types/react@18.3.26)(react@18.3.1) + react-style-singleton: 2.2.3(@types/react@18.3.26)(react@18.3.1) tslib: 2.8.1 - use-callback-ref: 1.3.3(@types/react@18.3.25)(react@18.3.1) - use-sidecar: 1.1.3(@types/react@18.3.25)(react@18.3.1) + use-callback-ref: 1.3.3(@types/react@18.3.26)(react@18.3.1) + use-sidecar: 1.1.3(@types/react@18.3.26)(react@18.3.1) optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 react-smooth@4.0.4(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: @@ -16023,13 +16017,13 @@ snapshots: react-dom: 18.3.1(react@18.3.1) react-transition-group: 4.4.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - react-style-singleton@2.2.3(@types/react@18.3.25)(react@18.3.1): + react-style-singleton@2.2.3(@types/react@18.3.26)(react@18.3.1): dependencies: get-nonce: 1.0.1 react: 18.3.1 tslib: 2.8.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 react-transition-group@4.4.5(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: @@ -16163,7 +16157,7 @@ snapshots: '@types/katex': 0.16.7 hast-util-from-html-isomorphic: 2.0.0 hast-util-to-text: 4.0.2 - katex: 0.16.22 + katex: 0.16.25 unist-util-visit-parents: 6.0.1 vfile: 6.0.3 @@ -16394,32 +16388,32 @@ snapshots: dependencies: estree-walker: 0.6.1 - rollup@4.52.3: + rollup@4.52.4: dependencies: '@types/estree': 1.0.8 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.52.3 - '@rollup/rollup-android-arm64': 4.52.3 - '@rollup/rollup-darwin-arm64': 4.52.3 - '@rollup/rollup-darwin-x64': 4.52.3 - '@rollup/rollup-freebsd-arm64': 4.52.3 - '@rollup/rollup-freebsd-x64': 4.52.3 - '@rollup/rollup-linux-arm-gnueabihf': 4.52.3 - '@rollup/rollup-linux-arm-musleabihf': 4.52.3 - '@rollup/rollup-linux-arm64-gnu': 4.52.3 - '@rollup/rollup-linux-arm64-musl': 4.52.3 - '@rollup/rollup-linux-loong64-gnu': 4.52.3 - '@rollup/rollup-linux-ppc64-gnu': 4.52.3 - '@rollup/rollup-linux-riscv64-gnu': 4.52.3 - '@rollup/rollup-linux-riscv64-musl': 4.52.3 - '@rollup/rollup-linux-s390x-gnu': 4.52.3 - '@rollup/rollup-linux-x64-gnu': 4.52.3 - '@rollup/rollup-linux-x64-musl': 4.52.3 - '@rollup/rollup-openharmony-arm64': 4.52.3 - '@rollup/rollup-win32-arm64-msvc': 4.52.3 - '@rollup/rollup-win32-ia32-msvc': 4.52.3 - '@rollup/rollup-win32-x64-gnu': 4.52.3 - '@rollup/rollup-win32-x64-msvc': 4.52.3 + '@rollup/rollup-android-arm-eabi': 4.52.4 + '@rollup/rollup-android-arm64': 4.52.4 + '@rollup/rollup-darwin-arm64': 4.52.4 + '@rollup/rollup-darwin-x64': 4.52.4 + '@rollup/rollup-freebsd-arm64': 4.52.4 + '@rollup/rollup-freebsd-x64': 4.52.4 + '@rollup/rollup-linux-arm-gnueabihf': 4.52.4 + '@rollup/rollup-linux-arm-musleabihf': 4.52.4 + '@rollup/rollup-linux-arm64-gnu': 4.52.4 + '@rollup/rollup-linux-arm64-musl': 4.52.4 + '@rollup/rollup-linux-loong64-gnu': 4.52.4 + '@rollup/rollup-linux-ppc64-gnu': 4.52.4 + '@rollup/rollup-linux-riscv64-gnu': 4.52.4 + '@rollup/rollup-linux-riscv64-musl': 4.52.4 + '@rollup/rollup-linux-s390x-gnu': 4.52.4 + '@rollup/rollup-linux-x64-gnu': 4.52.4 + '@rollup/rollup-linux-x64-musl': 4.52.4 + '@rollup/rollup-openharmony-arm64': 4.52.4 + '@rollup/rollup-win32-arm64-msvc': 4.52.4 + '@rollup/rollup-win32-ia32-msvc': 4.52.4 + '@rollup/rollup-win32-x64-gnu': 4.52.4 + '@rollup/rollup-win32-x64-msvc': 4.52.4 fsevents: 2.3.3 roughjs@4.6.6: @@ -16501,7 +16495,7 @@ snapshots: semver@6.3.1: {} - semver@7.7.2: {} + semver@7.7.3: {} serialize-javascript@6.0.2: dependencies: @@ -16534,8 +16528,8 @@ snapshots: sharp@0.33.5: dependencies: color: 4.2.3 - detect-libc: 2.1.1 - semver: 7.7.2 + detect-libc: 2.1.2 + semver: 7.7.3 optionalDependencies: '@img/sharp-darwin-arm64': 0.33.5 '@img/sharp-darwin-x64': 0.33.5 @@ -16724,7 +16718,7 @@ snapshots: statuses@2.0.1: {} - std-env@3.9.0: {} + std-env@3.10.0: {} stop-iteration-iterator@1.1.0: dependencies: @@ -16750,7 +16744,7 @@ snapshots: string-width@6.1.0: dependencies: eastasianwidth: 0.2.0 - emoji-regex: 10.5.0 + emoji-regex: 10.6.0 strip-ansi: 7.1.2 string.prototype.codepointat@0.2.1: {} @@ -16838,11 +16832,11 @@ snapshots: strnum@2.1.1: {} - style-to-js@1.1.17: + style-to-js@1.1.18: dependencies: - style-to-object: 1.0.9 + style-to-object: 1.0.11 - style-to-object@1.0.9: + style-to-object@1.0.11: dependencies: inline-style-parser: 0.2.4 @@ -16933,15 +16927,15 @@ snapshots: text-table@0.2.0: {} - theme-ui@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1): + theme-ui@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1): dependencies: - '@emotion/react': 11.14.0(@types/react@18.3.25)(react@18.3.1) - '@theme-ui/color-modes': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1) - '@theme-ui/components': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(@theme-ui/theme-provider@0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1))(react@18.3.1) - '@theme-ui/core': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1) - '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1)) - '@theme-ui/global': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1) - '@theme-ui/theme-provider': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.25)(react@18.3.1))(react@18.3.1) + '@emotion/react': 11.14.0(@types/react@18.3.26)(react@18.3.1) + '@theme-ui/color-modes': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + '@theme-ui/components': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(@theme-ui/theme-provider@0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1))(react@18.3.1) + '@theme-ui/core': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + '@theme-ui/css': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1)) + '@theme-ui/global': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) + '@theme-ui/theme-provider': 0.17.2(@emotion/react@11.14.0(@types/react@18.3.26)(react@18.3.1))(react@18.3.1) react: 18.3.1 thenify-all@1.6.0: @@ -17046,18 +17040,18 @@ snapshots: tsup@8.5.0(jiti@1.21.7)(postcss@8.5.6)(tsx@4.20.4)(typescript@5.9.3)(yaml@2.8.1): dependencies: - bundle-require: 5.1.0(esbuild@0.25.10) + bundle-require: 5.1.0(esbuild@0.25.11) cac: 6.7.14 chokidar: 4.0.3 consola: 3.4.2 debug: 4.4.3(supports-color@8.1.1) - esbuild: 0.25.10 + esbuild: 0.25.11 fix-dts-default-cjs-exports: 1.0.1 joycon: 3.1.1 picocolors: 1.1.1 postcss-load-config: 6.0.1(jiti@1.21.7)(postcss@8.5.6)(tsx@4.20.4)(yaml@2.8.1) resolve-from: 5.0.0 - rollup: 4.52.3 + rollup: 4.52.4 source-map: 0.8.0-beta.0 sucrase: 3.35.0 tinyexec: 0.3.2 @@ -17074,8 +17068,8 @@ snapshots: tsx@4.20.4: dependencies: - esbuild: 0.25.10 - get-tsconfig: 4.10.1 + esbuild: 0.25.11 + get-tsconfig: 4.12.0 optionalDependencies: fsevents: 2.3.3 @@ -17208,7 +17202,7 @@ snapshots: '@types/concat-stream': 2.0.3 '@types/debug': 4.1.12 '@types/is-empty': 1.2.3 - '@types/node': 22.18.8 + '@types/node': 22.18.10 '@types/unist': 3.0.3 concat-stream: 2.0.0 debug: 4.4.3(supports-color@8.1.1) @@ -17331,7 +17325,7 @@ snapshots: unrs-resolver@1.11.1: dependencies: - napi-postinstall: 0.3.3 + napi-postinstall: 0.3.4 optionalDependencies: '@unrs/resolver-binding-android-arm-eabi': 1.11.1 '@unrs/resolver-binding-android-arm64': 1.11.1 @@ -17368,26 +17362,26 @@ snapshots: querystringify: 2.2.0 requires-port: 1.0.0 - use-callback-ref@1.3.3(@types/react@18.3.25)(react@18.3.1): + use-callback-ref@1.3.3(@types/react@18.3.26)(react@18.3.1): dependencies: react: 18.3.1 tslib: 2.8.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - use-isomorphic-layout-effect@1.2.1(@types/react@18.3.25)(react@18.3.1): + use-isomorphic-layout-effect@1.2.1(@types/react@18.3.26)(react@18.3.1): dependencies: react: 18.3.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 - use-sidecar@1.1.3(@types/react@18.3.25)(react@18.3.1): + use-sidecar@1.1.3(@types/react@18.3.26)(react@18.3.1): dependencies: detect-node-es: 1.1.0 react: 18.3.1 tslib: 2.8.1 optionalDependencies: - '@types/react': 18.3.25 + '@types/react': 18.3.26 use-sync-external-store@1.6.0(react@18.3.1): dependencies: @@ -17466,7 +17460,7 @@ snapshots: d3-time: 3.1.0 d3-timer: 3.0.1 - viem@2.37.11(typescript@5.9.3)(zod@3.25.76): + viem@2.38.2(typescript@5.9.3)(zod@3.25.76): dependencies: '@noble/curves': 1.9.1 '@noble/hashes': 1.8.0 @@ -17483,13 +17477,13 @@ snapshots: - utf-8-validate - zod - vite-node@2.1.9(@types/node@22.18.8): + vite-node@2.1.9(@types/node@22.18.10): dependencies: cac: 6.7.14 debug: 4.4.3(supports-color@8.1.1) es-module-lexer: 1.7.0 pathe: 1.1.2 - vite: 5.4.20(@types/node@22.18.8) + vite: 5.4.20(@types/node@22.18.10) transitivePeerDependencies: - '@types/node' - less @@ -17501,19 +17495,19 @@ snapshots: - supports-color - terser - vite@5.4.20(@types/node@22.18.8): + vite@5.4.20(@types/node@22.18.10): dependencies: esbuild: 0.21.5 postcss: 8.5.6 - rollup: 4.52.3 + rollup: 4.52.4 optionalDependencies: - '@types/node': 22.18.8 + '@types/node': 22.18.10 fsevents: 2.3.3 - vitest@2.1.9(@types/node@22.18.8)(jsdom@24.1.3): + vitest@2.1.9(@types/node@22.18.10)(jsdom@24.1.3): dependencies: '@vitest/expect': 2.1.9 - '@vitest/mocker': 2.1.9(vite@5.4.20(@types/node@22.18.8)) + '@vitest/mocker': 2.1.9(vite@5.4.20(@types/node@22.18.10)) '@vitest/pretty-format': 2.1.9 '@vitest/runner': 2.1.9 '@vitest/snapshot': 2.1.9 @@ -17524,16 +17518,16 @@ snapshots: expect-type: 1.2.2 magic-string: 0.30.19 pathe: 1.1.2 - std-env: 3.9.0 + std-env: 3.10.0 tinybench: 2.9.0 tinyexec: 0.3.2 tinypool: 1.1.1 tinyrainbow: 1.2.0 - vite: 5.4.20(@types/node@22.18.8) - vite-node: 2.1.9(@types/node@22.18.8) + vite: 5.4.20(@types/node@22.18.10) + vite-node: 2.1.9(@types/node@22.18.10) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 22.18.8 + '@types/node': 22.18.10 jsdom: 24.1.3 transitivePeerDependencies: - less @@ -17675,7 +17669,7 @@ snapshots: workerpool@6.5.1: {} - wrangler@3.114.14(@cloudflare/workers-types@4.20251001.0): + wrangler@3.114.15(@cloudflare/workers-types@4.20251011.0): dependencies: '@cloudflare/kv-asset-handler': 0.3.4 '@cloudflare/unenv-preset': 2.0.2(unenv@2.0.0-rc.14)(workerd@1.20250718.0) @@ -17683,12 +17677,12 @@ snapshots: '@esbuild-plugins/node-modules-polyfill': 0.2.2(esbuild@0.17.19) blake3-wasm: 2.1.5 esbuild: 0.17.19 - miniflare: 3.20250718.1 + miniflare: 3.20250718.2 path-to-regexp: 6.3.0 unenv: 2.0.0-rc.14 workerd: 1.20250718.0 optionalDependencies: - '@cloudflare/workers-types': 4.20251001.0 + '@cloudflare/workers-types': 4.20251011.0 fsevents: 2.3.3 sharp: 0.33.5 transitivePeerDependencies: @@ -17774,6 +17768,6 @@ snapshots: zod@3.25.76: {} - zod@4.1.11: {} + zod@4.1.12: {} zwitch@2.0.4: {} diff --git a/website/package.json b/website/package.json index 313bfedaeb05..4ba46c77c395 100644 --- a/website/package.json +++ b/website/package.json @@ -19,8 +19,8 @@ "dependencies": { "@docsearch/react": "^3.9.0", "@edgeandnode/common": "^7.0.4", - "@edgeandnode/gds": "^6.7.4", - "@edgeandnode/go": "^10.3.8", + "@edgeandnode/gds": "^6.7.6", + "@edgeandnode/go": "^10.3.10", "@emotion/react": "^11.14.0", "@graphprotocol/contracts": "^7.3.0", "@pinax/graph-networks-registry": "^0.7.1", @@ -33,8 +33,8 @@ "lodash": "^4.17.21", "mdast-util-mdx-jsx": "^3.2.0", "mdast-util-to-hast": "^13.2.0", - "mixpanel-browser": "^2.70.0", - "motion": "^12.23.22", + "mixpanel-browser": "^2.71.0", + "motion": "^12.23.24", "next": "^14.2.33", "next-seo": "^6.8.0", "next-sitemap": "^4.2.3", @@ -55,12 +55,12 @@ "@types/lodash": "^4.17.20", "@types/mdast": "^4.0.4", "@types/mixpanel-browser": "^2.66.0", - "@types/node": "^22.18.8", - "@types/react": "^18.3.25", + "@types/node": "^22.18.10", + "@types/react": "^18.3.26", "@types/react-dom": "^18.3.7", "@types/vfile": "^4.0.0", "autoprefixer": "^10.4.21", - "fast-xml-parser": "^5.2.5", + "fast-xml-parser": "^5.3.0", "postcss": "^8.5.6", "tailwindcss": "^3.4.18", "tsup": "^8.5.0", diff --git a/website/src/openApi/index.ts b/website/src/openApi/index.ts index 447d54719a4f..3d871401c295 100644 --- a/website/src/openApi/index.ts +++ b/website/src/openApi/index.ts @@ -6,19 +6,40 @@ import tokenApi from './tokenApi.json' export const API_IDS = ['tokenApi'] as const -export const APIS = { +export const APIS: Record = { tokenApi: { name: 'Token API', url: 'https://token-api.thegraph.com/openapi', // production // url: 'https://token-api.service.stage.pinax.network/openapi', // staging document: tokenApi as OpenAPIV3_1.Document, sections: { - EVM: '/token-api/evm', - SVM: '/token-api/svm', - Monitoring: '/token-api/monitoring', + 'EVM Tokens': { + path: '/token-api/evm-tokens', + operationIdPrefixes: ['getV1Evm'], + }, + 'EVM DEXs': { + path: '/token-api/evm-dexs', + operationIdPrefixes: ['getV1Evm'], + }, + 'EVM NFTs': { + path: '/token-api/evm-nfts', + operationIdPrefixes: ['getV1EvmNft'], + }, + 'SVM Tokens': { + path: '/token-api/svm-tokens', + operationIdPrefixes: ['getV1Svm'], + }, + 'SVM DEXs': { + path: '/token-api/svm-dexs', + operationIdPrefixes: ['getV1Svm'], + }, + Monitoring: { + path: '/token-api/monitoring', + operationIdPrefixes: ['getV1'], + }, }, }, -} satisfies Record +} export type ApiId = (typeof API_IDS)[number] @@ -26,7 +47,12 @@ export type ApiConfig = { name: string url: string document: OpenAPIV3_1.Document - sections: Record + sections: Record +} + +export type ApiSectionConfig = { + path: string + operationIdPrefixes?: string[] } export type ApiSection = { @@ -116,17 +142,16 @@ export function getApi(apiId: ApiId, passedDocument?: OpenAPIV3_1.Document): Api if (typeof documentOperation !== 'object' || !('tags' in documentOperation) || !documentOperation.tags) continue // Get the section name and path from the tags - const sectionName = documentOperation.tags.find((tag) => tag in config.sections) as - | keyof typeof config.sections - | undefined - const sectionPath = sectionName ? config.sections[sectionName] : undefined - if (!sectionName || !sectionPath || !('operationId' in documentOperation) || !documentOperation.operationId) { + const sectionName = documentOperation.tags.find((tag) => tag in config.sections) + const section = sectionName ? config.sections[sectionName] : undefined + if (!sectionName || !section || !('operationId' in documentOperation) || !documentOperation.operationId) { continue } + const operationId = documentOperation.operationId if (!sections[sectionName]) { sections[sectionName] = { name: sectionName, - path: sectionPath, + path: section.path, operations: [], } } @@ -174,10 +199,19 @@ export function getApi(apiId: ApiId, passedDocument?: OpenAPIV3_1.Document): Api }) } + const longestOperationIdPrefixThatMatches = (section.operationIdPrefixes ?? []) + .filter((prefix) => operationId.startsWith(prefix)) + .sort((a, b) => b.length - a.length)[0] + const slug = camelToKebab( + longestOperationIdPrefixThatMatches + ? operationId.slice(longestOperationIdPrefixThatMatches.length) + : operationId, + ) + const operation: ApiOperation = { ...documentOperation, - operationId: documentOperation.operationId, - slug: camelToKebab(documentOperation.operationId), + operationId, + slug, method: method.toUpperCase(), baseUrl, path, diff --git a/website/src/openApi/tokenApi.json b/website/src/openApi/tokenApi.json index 4e146a731c01..e9c8cfcf77cf 100644 --- a/website/src/openApi/tokenApi.json +++ b/website/src/openApi/tokenApi.json @@ -3,7 +3,7 @@ "info": { "title": "Token API (Beta)", "description": "Power your apps & AI agents with real-time token data.", - "version": "2.7.2+f549dc9 (2025-10-02)" + "version": "3.1.0+a61c748 (2025-10-16)" }, "servers": [ { @@ -17,12 +17,17 @@ "type": "http", "scheme": "bearer", "bearerFormat": "JWT" + }, + "apiKeyAuth": { + "type": "apiKey", + "in": "header", + "name": "X-Api-Key" } }, "schemas": {} }, "paths": { - "/nft/ownerships/evm/{address}": { + "/v1/evm/balances/historical": { "get": { "responses": { "200": { @@ -37,43 +42,45 @@ "items": { "type": "object", "properties": { - "token_id": { - "type": "string" + "datetime": { + "type": "string", + "format": "date-time", + "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" }, - "token_standard": { - "default": "", + "address": { "type": "string", - "enum": [ - "", - "ERC721", - "ERC1155" - ] + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" }, "contract": { - "type": "string" + "type": "string", + "description": "Filter by contract address", + "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" }, - "owner": { - "type": "string" + "decimals": { + "type": "number" }, - "symbol": { - "type": "string" + "open": { + "type": "number" }, - "uri": { - "type": "string" + "high": { + "type": "number" }, - "name": { - "type": "string" + "low": { + "type": "number" }, - "image": { + "close": { + "type": "number" + }, + "name": { "type": "string" }, - "description": { + "symbol": { "type": "string" }, - "network_id": { + "network": { "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", "example": "mainnet", - "default": "mainnet", "type": "string", "enum": [ "arbitrum-one", @@ -81,18 +88,24 @@ "base", "bsc", "mainnet", - "matic", "optimism", + "polygon", "unichain" ] } }, "required": [ - "token_id", - "token_standard", + "datetime", + "address", "contract", - "owner", - "network_id" + "decimals", + "open", + "high", + "low", + "close", + "name", + "symbol", + "network" ], "additionalProperties": false } @@ -124,32 +137,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -162,7 +160,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -173,13 +170,17 @@ "value": { "data": [ { - "token_id": "12", - "token_standard": "ERC721", - "contract": "0x000386e3f7559d9b6a2f5c46b4ad1a9587d59dc3", - "owner": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045", - "symbol": "BANC", - "name": "Bored Ape Nike Club", - "network_id": "mainnet" + "datetime": "2025-10-09 00:00:00", + "address": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045", + "contract": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", + "open": 29.589346973619755, + "high": 50.783103394640676, + "low": 0.7830483276016842, + "close": 0.7841551025245886, + "name": "Native", + "symbol": "ETH", + "decimals": 18, + "network": "mainnet" } ] } @@ -516,29 +517,17 @@ } } }, - "operationId": "getNftOwnershipsEvmByAddress", + "operationId": "getV1EvmBalancesHistorical", "tags": [ - "EVM" + "EVM Tokens" ], "parameters": [ - { - "in": "path", - "name": "address", - "schema": { - "description": "Filter by address", - "example": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045", - "default": "", - "type": "string" - }, - "required": true - }, { "in": "query", - "name": "network_id", + "name": "network", "schema": { "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", "example": "mainnet", - "default": "mainnet", "type": "string", "enum": [ "arbitrum-one", @@ -546,8 +535,8 @@ "base", "bsc", "mainnet", - "matic", "optimism", + "polygon", "unichain" ] }, @@ -555,25 +544,59 @@ }, { "in": "query", - "name": "token_standard", + "name": "address", + "schema": { + "type": "string", + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" + }, + "required": true + }, + { + "in": "query", + "name": "contract", + "schema": { + "type": "string", + "description": "Filter by contract address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "interval", "schema": { - "default": "", "type": "string", "enum": [ - "", - "ERC721", - "ERC1155" - ] + "1h", + "4h", + "1d", + "1w" + ], + "default": "1d", + "description": "The interval for which to aggregate price data (hourly, 4-hours, daily or weekly).", + "example": "1w" }, "required": false }, { "in": "query", - "name": "contract", + "name": "start_time", "schema": { - "description": "Filter by address", - "default": "", - "type": "string" + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": "2025-01-01" + }, + "required": false + }, + { + "in": "query", + "name": "end_time", + "schema": { + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": 9999999999 }, "required": false }, @@ -581,7 +604,7 @@ "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -593,7 +616,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -602,8 +625,11 @@ "required": false } ], - "summary": "NFT Ownerships by Address", - "description": "Returns NFT tokens owned by a wallet address with metadata and ownership information.", + "summary": "Historical Balances", + "description": "Returns wallet token balance changes over time in OHLCV format.\n\nOHLCV historical depth is subject to plan restrictions.", + "x-tagGroups": [ + "Historical" + ], "security": [ { "bearerAuth": [] @@ -611,7 +637,7 @@ ] } }, - "/nft/collections/evm/{contract}": { + "/v1/evm/balances/native": { "get": { "responses": { "200": { @@ -626,41 +652,66 @@ "items": { "type": "object", "properties": { - "contract": { - "description": "Filter by address", - "default": "", - "type": "string" + "last_update": { + "type": "string", + "format": "date-time", + "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" }, - "contract_creation": { - "type": "string" + "last_update_block_num": { + "type": "number" }, - "contract_creator": { + "last_update_timestamp": { + "type": "number" + }, + "address": { + "type": "string", "description": "Filter by address", - "default": "", - "type": "string" + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" }, - "name": { - "type": "string" + "contract": { + "type": "string", + "description": "Filter by contract address", + "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" }, - "symbol": { + "amount": { "type": "string" }, - "owners": { + "value": { "type": "number" }, - "total_supply": { - "type": "number" + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, - "total_unique_supply": { - "type": "number" + "symbol": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, - "total_transfers": { - "type": "number" + "decimals": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] }, - "network_id": { + "network": { "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", "example": "mainnet", - "default": "mainnet", "type": "string", "enum": [ "arbitrum-one", @@ -668,32 +719,24 @@ "base", "bsc", "mainnet", - "matic", "optimism", + "polygon", "unichain" ] - }, - "spam_status": { - "type": "string", - "enum": [ - "spam", - "not_spam", - "pending", - "error" - ] } }, "required": [ + "last_update", + "last_update_block_num", + "last_update_timestamp", + "address", "contract", - "contract_creation", - "contract_creator", + "amount", + "value", "name", "symbol", - "owners", - "total_supply", - "total_unique_supply", - "total_transfers", - "network_id" + "decimals", + "network" ], "additionalProperties": false } @@ -725,32 +768,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -763,7 +791,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -774,18 +801,17 @@ "value": { "data": [ { - "token_standard": "ERC721", - "contract": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", - "contract_creation": "2021-07-22 12:26:01", - "contract_creator": "0xe9da256a28630efdc637bfd4c65f0887be1aeda8", - "name": "PudgyPenguins", - "symbol": "PPG", - "owners": 12258, - "total_supply": 8888, - "total_unique_supply": 8888, - "total_transfers": 185128, - "network_id": "mainnet", - "spam_status": "not_spam" + "last_update": "2025-10-15 23:16:23", + "last_update_block_num": 23586308, + "last_update_timestamp": 1760570183, + "address": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045", + "contract": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", + "amount": "784155102524588711", + "value": 0.7841551025245886, + "name": "Native", + "symbol": "ETH", + "decimals": 18, + "network": "mainnet" } ] } @@ -1122,29 +1148,17 @@ } } }, - "operationId": "getNftCollectionsEvmByContract", + "operationId": "getV1EvmBalancesNative", "tags": [ - "EVM" + "EVM Tokens" ], "parameters": [ - { - "in": "path", - "name": "contract", - "schema": { - "description": "Filter by NFT contract address", - "example": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", - "default": "", - "type": "string" - }, - "required": true - }, { "in": "query", - "name": "network_id", + "name": "network", "schema": { "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", "example": "mainnet", - "default": "mainnet", "type": "string", "enum": [ "arbitrum-one", @@ -1152,94 +1166,142 @@ "base", "bsc", "mainnet", - "matic", "optimism", + "polygon", "unichain" ] }, "required": true - } - ], - "summary": "NFT Collection", - "description": "Returns NFT collection metadata, supply stats, owner count, and transfer history.\n\nThe `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds.\n\nSpam detection is supported for:\n\n* mainnet\n* base", - "security": [ + }, { - "bearerAuth": [] - } - ] - } - }, - "/nft/items/evm/contract/{contract}/token_id/{token_id}": { - "get": { - "responses": { - "200": { - "description": "Successful Response", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "data": { - "type": "array", - "items": { + "in": "query", + "name": "address", + "schema": { + "type": "string", + "description": "Filter by address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" + }, + "required": true + }, + { + "in": "query", + "name": "include_null_balances", + "schema": { + "description": "Include zero/null balances in results", + "default": false, + "type": "boolean" + }, + "required": false + }, + { + "in": "query", + "name": "limit", + "schema": { + "description": "Number of items* returned in a single request.
*Plan restricted.", + "default": 10, + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + "required": false + }, + { + "in": "query", + "name": "page", + "schema": { + "description": "Page number to fetch.
Empty `data` array signifies end of results.", + "default": 1, + "type": "integer", + "minimum": 1, + "maximum": 767465558638 + }, + "required": false + } + ], + "summary": "Native Balances", + "description": "Returns EVM native balances for wallet addresses.", + "security": [ + { + "bearerAuth": [] + } + ] + } + }, + "/v1/evm/balances": { + "get": { + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { "type": "object", "properties": { - "token_id": { - "type": "string" + "last_update": { + "type": "string", + "format": "date-time", + "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" }, - "token_standard": { - "default": "", + "last_update_block_num": { + "type": "number" + }, + "last_update_timestamp": { + "type": "number" + }, + "address": { "type": "string", - "enum": [ - "", - "ERC721", - "ERC1155" - ] + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" }, "contract": { - "type": "string" + "type": "string", + "description": "Filter by contract address", + "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" }, - "owner": { + "amount": { "type": "string" }, - "uri": { - "type": "string" + "value": { + "type": "number" }, "name": { - "type": "string" - }, - "image": { - "type": "string" + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, - "description": { - "type": "string" + "symbol": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, - "attributes": { - "type": "array", - "items": { - "type": "object", - "properties": { - "trait_type": { - "type": "string" - }, - "value": { - "type": "string" - }, - "display_type": { - "type": "string" - } + "decimals": { + "anyOf": [ + { + "type": "number" }, - "required": [ - "trait_type", - "value" - ], - "additionalProperties": false - } + { + "type": "null" + } + ] }, - "network_id": { + "network": { "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", "example": "mainnet", - "default": "mainnet", "type": "string", "enum": [ "arbitrum-one", @@ -1247,18 +1309,24 @@ "base", "bsc", "mainnet", - "matic", "optimism", + "polygon", "unichain" ] } }, "required": [ - "token_id", - "token_standard", + "last_update", + "last_update_block_num", + "last_update_timestamp", + "address", "contract", - "owner", - "network_id" + "amount", + "value", + "name", + "symbol", + "decimals", + "network" ], "additionalProperties": false } @@ -1290,32 +1358,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -1328,7 +1381,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -1339,37 +1391,17 @@ "value": { "data": [ { - "token_standard": "ERC721", - "contract": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", - "token_id": "5712", - "owner": "0x9379557bdf32f5ee296ca7b360ccb8dcb9543d8e", - "uri": "ipfs://bafybeibc5sgo2plmjkq2tzmhrn54bk3crhnc23zd2msg4ea7a4pxrkgfna/5712", - "name": "Pudgy Penguin #5712", - "description": "A collection 8888 Cute Chubby Pudgy Penquins sliding around on the freezing ETH blockchain.", - "image": "ipfs://QmNf1UsmdGaMbpatQ6toXSkzDpizaGmC9zfunCyoz1enD5/penguin/5712.png", - "attributes": [ - { - "trait_type": "Background", - "value": "Blue" - }, - { - "trait_type": "Skin", - "value": "Olive Green" - }, - { - "trait_type": "Body", - "value": "Turtleneck Green" - }, - { - "trait_type": "Face", - "value": "Scar" - }, - { - "trait_type": "Head", - "value": "Party Hat" - } - ], - "network_id": "mainnet" + "last_update": "2025-10-08 07:49:47", + "last_update_block_num": 23531651, + "last_update_timestamp": 1759909787, + "address": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045", + "contract": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "amount": "17058407780", + "value": 17058.40778, + "name": "USD Coin", + "symbol": "USDC", + "decimals": 6, + "network": "mainnet" } ] } @@ -1706,40 +1738,17 @@ } } }, - "operationId": "getNftItemsEvmContractByContractToken_idByToken_id", + "operationId": "getV1EvmBalances", "tags": [ - "EVM" + "EVM Tokens" ], "parameters": [ - { - "in": "path", - "name": "token_id", - "schema": { - "description": "NFT token ID", - "example": "5712", - "default": "", - "type": "string" - }, - "required": true - }, - { - "in": "path", - "name": "contract", - "schema": { - "description": "Filter by NFT contract address", - "example": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", - "default": "", - "type": "string" - }, - "required": true - }, { "in": "query", - "name": "network_id", + "name": "network", "schema": { "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", "example": "mainnet", - "default": "mainnet", "type": "string", "enum": [ "arbitrum-one", @@ -1747,16 +1756,603 @@ "base", "bsc", "mainnet", - "matic", "optimism", + "polygon", "unichain" ] }, - "required": true + "required": true + }, + { + "in": "query", + "name": "address", + "schema": { + "type": "string", + "description": "Filter by address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" + }, + "required": true + }, + { + "in": "query", + "name": "contract", + "schema": { + "type": "string", + "description": "Filter by contract address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "include_null_balances", + "schema": { + "description": "Include zero/null balances in results", + "default": false, + "type": "boolean" + }, + "required": false + }, + { + "in": "query", + "name": "limit", + "schema": { + "description": "Number of items* returned in a single request.
*Plan restricted.", + "default": 10, + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + "required": false + }, + { + "in": "query", + "name": "page", + "schema": { + "description": "Page number to fetch.
Empty `data` array signifies end of results.", + "default": 1, + "type": "integer", + "minimum": 1, + "maximum": 767465558638 + }, + "required": false + } + ], + "summary": "Token Balances", + "description": "Returns ERC-20 token balances for a wallet address.", + "security": [ + { + "bearerAuth": [] + } + ] + } + }, + "/v1/evm/dexes": { + "get": { + "responses": { + "200": { + "description": "Successful Response", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "factory": { + "type": "string", + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" + }, + "protocol": { + "description": "Protocol name", + "example": "uniswap_v3", + "type": "string", + "enum": [ + "uniswap_v2", + "uniswap_v3", + "uniswap_v4" + ] + }, + "total_uaw": { + "type": "number" + }, + "total_transactions": { + "type": "number" + } + }, + "required": [ + "factory", + "protocol", + "total_uaw", + "total_transactions" + ], + "additionalProperties": false + } + }, + "statistics": { + "type": "object", + "properties": { + "elapsed": { + "type": "number" + }, + "rows_read": { + "type": "number" + }, + "bytes_read": { + "type": "number" + } + }, + "additionalProperties": false + }, + "pagination": { + "type": "object", + "properties": { + "previous_page": { + "type": "integer", + "minimum": 1, + "maximum": 9007199254740991 + }, + "current_page": { + "type": "integer", + "minimum": 1, + "maximum": 9007199254740991 + } + }, + "required": [ + "previous_page", + "current_page" + ], + "additionalProperties": false + }, + "results": { + "type": "number" + }, + "request_time": { + "type": "string" + }, + "duration_ms": { + "type": "number" + } + }, + "required": [ + "data", + "statistics", + "pagination", + "results", + "request_time", + "duration_ms" + ], + "additionalProperties": false + }, + "examples": { + "example": { + "value": { + "data": [ + { + "factory": "0x5c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f", + "protocol": "uniswap_v2", + "total_uaw": 13529627, + "total_transactions": 20736917 + } + ] + } + } + } + } + } + }, + "400": { + "description": "Client side error", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "anyOf": [ + { + "type": "number", + "const": 400 + }, + { + "type": "number", + "const": 401 + }, + { + "type": "number", + "const": 403 + }, + { + "type": "number", + "const": 404 + }, + { + "type": "number", + "const": 405 + } + ] + }, + "code": { + "type": "string", + "enum": [ + "authentication_failed", + "bad_header", + "missing_required_header", + "bad_query_input", + "forbidden", + "method_not_allowed", + "route_not_found", + "unauthorized", + "not_found_data" + ] + }, + "message": { + "type": "string" + } + }, + "required": [ + "status", + "code", + "message" + ], + "additionalProperties": false + }, + "examples": { + "example": { + "value": { + "status": 400, + "code": "bad_query_input", + "message": "Invalid query parameter provided" + } + } + } + } + } + }, + "401": { + "description": "Authentication failed", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "anyOf": [ + { + "type": "number", + "const": 400 + }, + { + "type": "number", + "const": 401 + }, + { + "type": "number", + "const": 403 + }, + { + "type": "number", + "const": 404 + }, + { + "type": "number", + "const": 405 + } + ] + }, + "code": { + "type": "string", + "enum": [ + "authentication_failed", + "bad_header", + "missing_required_header", + "bad_query_input", + "forbidden", + "method_not_allowed", + "route_not_found", + "unauthorized", + "not_found_data" + ] + }, + "message": { + "type": "string" + } + }, + "required": [ + "status", + "code", + "message" + ], + "additionalProperties": false + }, + "examples": { + "example": { + "value": { + "status": 401, + "code": "unauthorized", + "message": "Authentication required" + } + } + } + } + } + }, + "403": { + "description": "Forbidden", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "anyOf": [ + { + "type": "number", + "const": 400 + }, + { + "type": "number", + "const": 401 + }, + { + "type": "number", + "const": 403 + }, + { + "type": "number", + "const": 404 + }, + { + "type": "number", + "const": 405 + } + ] + }, + "code": { + "type": "string", + "enum": [ + "authentication_failed", + "bad_header", + "missing_required_header", + "bad_query_input", + "forbidden", + "method_not_allowed", + "route_not_found", + "unauthorized", + "not_found_data" + ] + }, + "message": { + "type": "string" + } + }, + "required": [ + "status", + "code", + "message" + ], + "additionalProperties": false + }, + "examples": { + "example": { + "value": { + "status": 403, + "code": "forbidden", + "message": "Access denied" + } + } + } + } + } + }, + "404": { + "description": "Not found", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "anyOf": [ + { + "type": "number", + "const": 400 + }, + { + "type": "number", + "const": 401 + }, + { + "type": "number", + "const": 403 + }, + { + "type": "number", + "const": 404 + }, + { + "type": "number", + "const": 405 + } + ] + }, + "code": { + "type": "string", + "enum": [ + "authentication_failed", + "bad_header", + "missing_required_header", + "bad_query_input", + "forbidden", + "method_not_allowed", + "route_not_found", + "unauthorized", + "not_found_data" + ] + }, + "message": { + "type": "string" + } + }, + "required": [ + "status", + "code", + "message" + ], + "additionalProperties": false + }, + "examples": { + "example": { + "value": { + "status": 404, + "code": "not_found_data", + "message": "Resource not found" + } + } + } + } + } + }, + "500": { + "description": "Server side error", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "status": { + "anyOf": [ + { + "type": "number", + "const": 500 + }, + { + "type": "number", + "const": 502 + }, + { + "type": "number", + "const": 504 + } + ] + }, + "code": { + "type": "string", + "enum": [ + "bad_database_response", + "connection_refused", + "database_timeout", + "internal_server_error" + ] + }, + "message": { + "type": "string" + } + }, + "required": [ + "status", + "code", + "message" + ], + "additionalProperties": false + }, + "examples": { + "example": { + "value": { + "status": 500, + "code": "internal_server_error", + "message": "An unexpected error occurred" + } + } + } + } + } + } + }, + "operationId": "getV1EvmDexes", + "tags": [ + "EVM DEXs" + ], + "parameters": [ + { + "in": "query", + "name": "network", + "schema": { + "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", + "example": "mainnet", + "type": "string", + "enum": [ + "arbitrum-one", + "avalanche", + "base", + "bsc", + "mainnet", + "optimism", + "polygon", + "unichain" + ] + }, + "required": true + }, + { + "in": "query", + "name": "factory", + "schema": { + "type": "string", + "description": "Filter by factory address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0x5c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "protocol", + "schema": { + "description": "Protocol name", + "example": "uniswap_v3", + "default": "", + "type": "string", + "enum": [ + "uniswap_v2", + "uniswap_v3", + "uniswap_v4" + ] + }, + "required": false + }, + { + "in": "query", + "name": "limit", + "schema": { + "description": "Number of items* returned in a single request.
*Plan restricted.", + "default": 10, + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + "required": false + }, + { + "in": "query", + "name": "page", + "schema": { + "description": "Page number to fetch.
Empty `data` array signifies end of results.", + "default": 1, + "type": "integer", + "minimum": 1, + "maximum": 767465558638 + }, + "required": false } ], - "summary": "NFT Items", - "description": "Returns NFT token metadata, attributes, current owner, and media URIs.", + "summary": "Supported DEXs", + "description": "Returns supported EVM DEXs.", "security": [ { "bearerAuth": [] @@ -1764,7 +2360,7 @@ ] } }, - "/nft/activities/evm": { + "/v1/evm/holders": { "get": { "responses": { "200": { @@ -1779,65 +2375,91 @@ "items": { "type": "object", "properties": { - "@type": { + "last_update": { "type": "string", - "enum": [ - "TRANSFER", - "MINT", - "BURN" - ] + "format": "date-time", + "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" }, - "block_num": { + "last_update_block_num": { "type": "number" }, - "block_hash": { - "type": "string" - }, - "timestamp": { - "type": "string" + "last_update_timestamp": { + "type": "number" }, - "tx_hash": { - "type": "string" + "address": { + "type": "string", + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" }, "contract": { - "type": "string" - }, - "symbol": { - "type": "string" - }, - "name": { - "type": "string" + "type": "string", + "description": "Filter by contract address", + "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" }, - "from": { + "amount": { "type": "string" }, - "to": { - "type": "string" + "value": { + "type": "number" }, - "token_id": { - "type": "string" + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, - "amount": { - "type": "number" + "symbol": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, - "transfer_type": { - "type": "string" + "decimals": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] }, - "token_standard": { - "type": "string" + "network": { + "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", + "example": "mainnet", + "type": "string", + "enum": [ + "arbitrum-one", + "avalanche", + "base", + "bsc", + "mainnet", + "optimism", + "polygon", + "unichain" + ] } }, "required": [ - "@type", - "block_num", - "block_hash", - "timestamp", - "tx_hash", + "last_update", + "last_update_block_num", + "last_update_timestamp", + "address", "contract", - "from", - "to", - "token_id", - "amount" + "amount", + "value", + "name", + "symbol", + "decimals", + "network" ], "additionalProperties": false } @@ -1869,32 +2491,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -1907,7 +2514,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -1918,20 +2524,17 @@ "value": { "data": [ { - "@type": "TRANSFER", - "block_num": 22588725, - "block_hash": "0xe8d2f48bb5d7619fd0c180d6d54e7ca94c5f4eddfcfa7a82d4da55b310dd462a", - "timestamp": "2025-05-29 13:32:23", - "tx_hash": "0xa7b3302a5fe4a60e4ece22dfb2d98604daef5dc610fa328d8d0a7a92f3efc7b9", - "token_standard": "ERC721", - "contract": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", - "name": "PudgyPenguins", - "symbol": "PPG", - "from": "0x2afec1c9af7a5494503f8acfd5c1fdd7d2c57480", - "to": "0x29469395eaf6f95920e59f858042f0e28d98a20b", - "token_id": "500", - "amount": 1, - "transfer_type": "Single" + "last_update": "2025-10-16 09:08:11", + "last_update_block_num": 23589233, + "last_update_timestamp": 1760605691, + "address": "0x59cd1c87501baa753d0b5b5ab5d8416a45cd71db", + "contract": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "amount": "97590855599990900949144", + "value": 97590.85559999091, + "name": "Wrapped Ether", + "symbol": "WETH", + "decimals": 18, + "network": "mainnet" } ] } @@ -2268,18 +2871,17 @@ } } }, - "operationId": "getNftActivitiesEvm", + "operationId": "getV1EvmHolders", "tags": [ - "EVM" + "EVM Tokens" ], "parameters": [ { "in": "query", - "name": "network_id", + "name": "network", "schema": { "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", "example": "mainnet", - "default": "mainnet", "type": "string", "enum": [ "arbitrum-one", @@ -2287,8 +2889,8 @@ "base", "bsc", "mainnet", - "matic", "optimism", + "polygon", "unichain" ] }, @@ -2298,99 +2900,17 @@ "in": "query", "name": "contract", "schema": { - "description": "Filter by NFT contract address", - "example": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "anyAddress", - "schema": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "fromAddress", - "schema": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "toAddress", - "schema": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "startTime", - "schema": { - "default": 1735689600, - "description": "UNIX timestamp in seconds.", - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 - }, - "required": false - }, - { - "in": "query", - "name": "endTime", - "schema": { - "default": 9999999999, - "description": "UNIX timestamp in seconds.", - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 - }, - "required": false - }, - { - "in": "query", - "name": "orderBy", - "schema": { - "description": "The field by which to order the results.", - "default": "timestamp", - "type": "string", - "enum": [ - "timestamp" - ] - }, - "required": false - }, - { - "in": "query", - "name": "orderDirection", - "schema": { - "description": "The order in which to return the results: Ascending (asc) or Descending (desc).", - "default": "desc", "type": "string", - "enum": [ - "asc", - "desc" - ] + "description": "Filter by contract address", + "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" }, - "required": false + "required": true }, { "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -2402,7 +2922,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -2411,8 +2931,8 @@ "required": false } ], - "summary": "NFT Activities", - "description": "Returns NFT transfer events including mints, burns, and ownership changes.", + "summary": "Token Holders", + "description": "Returns top token holders ranked by balance.", "security": [ { "bearerAuth": [] @@ -2420,7 +2940,7 @@ ] } }, - "/nft/holders/evm/{contract}": { + "/v1/evm/nft/collections": { "get": { "responses": { "200": { @@ -2435,30 +2955,56 @@ "items": { "type": "object", "properties": { - "token_standard": { - "type": "string" + "contract_creation": { + "type": "string", + "format": "date-time", + "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" }, - "address": { + "contract_creator": { + "type": "string", "description": "Filter by address", - "default": "", - "type": "string" + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" }, - "quantity": { - "description": "Number of tokens held by this address", + "contract": { + "type": "string", + "description": "Filter by contract address", + "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "symbol": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "owners": { "type": "number" }, - "unique_tokens": { - "description": "Number of unique token IDs held by this address", + "total_supply": { "type": "number" }, - "percentage": { - "description": "Percentage of total supply held by this address", + "total_unique_supply": { + "type": "number" + }, + "total_transfers": { "type": "number" }, "network_id": { "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", "example": "mainnet", - "default": "mainnet", "type": "string", "enum": [ "arbitrum-one", @@ -2466,19 +3012,34 @@ "base", "bsc", "mainnet", - "matic", "optimism", + "polygon", "unichain" ] + }, + "spam_status": { + "type": "string", + "enum": [ + "spam", + "not_spam", + "pending", + "not_supported", + "error" + ] } - }, - "required": [ - "token_standard", - "address", - "quantity", - "unique_tokens", - "percentage", - "network_id" + }, + "required": [ + "contract_creation", + "contract_creator", + "contract", + "name", + "symbol", + "owners", + "total_supply", + "total_unique_supply", + "total_transfers", + "network_id", + "spam_status" ], "additionalProperties": false } @@ -2510,32 +3071,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -2548,7 +3094,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -2559,12 +3104,18 @@ "value": { "data": [ { + "contract_creation": "2021-07-22 12:26:01", + "contract_creator": "0xe9da256a28630efdc637bfd4c65f0887be1aeda8", + "contract": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", + "name": "PudgyPenguins", + "symbol": "PPG", "token_standard": "ERC721", - "address": "0x29469395eaf6f95920e59f858042f0e28d98a20b", - "quantity": 534, - "unique_tokens": 534, - "percentage": 0.06008100810081008, - "network_id": "mainnet" + "owners": 4952, + "total_supply": 8888, + "total_unique_supply": 8888, + "total_transfers": 193641, + "network": "mainnet", + "spam_status": "pending" } ] } @@ -2901,29 +3452,17 @@ } } }, - "operationId": "getNftHoldersEvmByContract", + "operationId": "getV1EvmNftCollections", "tags": [ - "EVM" + "EVM NFTs" ], "parameters": [ - { - "in": "path", - "name": "contract", - "schema": { - "description": "Filter by NFT contract address", - "example": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", - "default": "", - "type": "string" - }, - "required": true - }, { "in": "query", - "name": "network_id", + "name": "network", "schema": { "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", "example": "mainnet", - "default": "mainnet", "type": "string", "enum": [ "arbitrum-one", @@ -2931,16 +3470,50 @@ "base", "bsc", "mainnet", - "matic", "optimism", + "polygon", "unichain" ] }, "required": true + }, + { + "in": "query", + "name": "contract", + "schema": { + "example": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", + "type": "string", + "description": "Filter by contract address" + }, + "required": true + }, + { + "in": "query", + "name": "limit", + "schema": { + "description": "Number of items* returned in a single request.
*Plan restricted.", + "default": 10, + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + "required": false + }, + { + "in": "query", + "name": "page", + "schema": { + "description": "Page number to fetch.
Empty `data` array signifies end of results.", + "default": 1, + "type": "integer", + "minimum": 1, + "maximum": 767465558638 + }, + "required": false } ], - "summary": "NFT Holders", - "description": "Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution.", + "summary": "NFT Collection", + "description": "Returns NFT collection metadata, supply stats, owner count, and transfer history.\n\nThe `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds.\n\nSpam detection is supported for:\n\n* mainnet\n* base", "security": [ { "bearerAuth": [] @@ -2948,7 +3521,7 @@ ] } }, - "/nft/sales/evm": { + "/v1/evm/nft/holders": { "get": { "responses": { "200": { @@ -2963,52 +3536,61 @@ "items": { "type": "object", "properties": { - "timestamp": { - "type": "string" - }, - "block_num": { - "type": "number" - }, - "tx_hash": { - "type": "string" - }, - "token": { - "type": "string" - }, - "token_id": { - "type": "string" + "contract": { + "type": "string", + "description": "Filter by contract address", + "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" }, - "symbol": { - "type": "string" + "token_standard": { + "description": "Token standard", + "example": "ERC721", + "type": "string", + "enum": [ + "ERC721", + "ERC1155" + ] }, - "name": { - "type": "string" + "address": { + "type": "string", + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" }, - "offerer": { - "type": "string" + "quantity": { + "description": "Number of tokens held by this address", + "type": "number" }, - "recipient": { - "type": "string" + "unique_tokens": { + "description": "Number of unique token IDs held by this address", + "type": "number" }, - "sale_amount": { + "percentage": { + "description": "Percentage of total supply held by this address", "type": "number" }, - "sale_currency": { - "type": "string" + "network": { + "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", + "example": "mainnet", + "type": "string", + "enum": [ + "arbitrum-one", + "avalanche", + "base", + "bsc", + "mainnet", + "optimism", + "polygon", + "unichain" + ] } }, "required": [ - "timestamp", - "block_num", - "tx_hash", - "token", - "token_id", - "symbol", - "name", - "offerer", - "recipient", - "sale_amount", - "sale_currency" + "contract", + "token_standard", + "address", + "quantity", + "unique_tokens", + "percentage", + "network" ], "additionalProperties": false } @@ -3040,32 +3622,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -3078,7 +3645,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -3089,17 +3655,13 @@ "value": { "data": [ { - "timestamp": "2025-05-29 07:52:47", - "block_num": 22587041, - "tx_hash": "0x6755df1514a066150357d454254e1ce6c1e043f873193125dc98d4c4417861ff", - "token": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", - "token_id": "6398", - "symbol": "PPG", - "name": "PudgyPenguins", - "offerer": "0xf671888173bf2fe28d71fba3106cf36d10f470fe", - "recipient": "0x43bf952762b087195b8ea70cf81cb6715b6bf5a9", - "sale_amount": 10.0667234, - "sale_currency": "ETH" + "contract": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", + "token_standard": "ERC721", + "address": "0x29469395eaf6f95920e59f858042f0e28d98a20b", + "quantity": 358, + "unique_tokens": 358, + "percentage": 4.027902790279028, + "network": "mainnet" } ] } @@ -3436,18 +3998,17 @@ } } }, - "operationId": "getNftSalesEvm", + "operationId": "getV1EvmNftHolders", "tags": [ - "EVM" + "EVM NFTs" ], "parameters": [ { "in": "query", - "name": "network_id", + "name": "network", "schema": { "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", "example": "mainnet", - "default": "mainnet", "type": "string", "enum": [ "arbitrum-one", @@ -3455,8 +4016,8 @@ "base", "bsc", "mainnet", - "matic", "optimism", + "polygon", "unichain" ] }, @@ -3466,110 +4027,17 @@ "in": "query", "name": "contract", "schema": { - "description": "Filter by NFT contract address", "example": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", - "default": "", - "type": "string" - }, - "required": true - }, - { - "in": "query", - "name": "token_id", - "schema": { - "description": "NFT token ID", - "example": "5712", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "anyAddress", - "schema": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "offererAddress", - "schema": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "recipientAddress", - "schema": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "startTime", - "schema": { - "default": 1735689600, - "description": "UNIX timestamp in seconds.", - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 - }, - "required": false - }, - { - "in": "query", - "name": "endTime", - "schema": { - "default": 9999999999, - "description": "UNIX timestamp in seconds.", - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 - }, - "required": false - }, - { - "in": "query", - "name": "orderBy", - "schema": { - "description": "The field by which to order the results.", - "default": "timestamp", - "type": "string", - "enum": [ - "timestamp" - ] - }, - "required": false - }, - { - "in": "query", - "name": "orderDirection", - "schema": { - "description": "The order in which to return the results: Ascending (asc) or Descending (desc).", - "default": "desc", "type": "string", - "enum": [ - "asc", - "desc" - ] + "description": "Filter by contract address" }, - "required": false + "required": true }, { "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -3581,7 +4049,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -3590,8 +4058,8 @@ "required": false } ], - "summary": "NFT Sales", - "description": "Returns NFT marketplace sales with price, buyer, seller, and transaction data.", + "summary": "NFT Holders", + "description": "Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution.", "security": [ { "bearerAuth": [] @@ -3599,7 +4067,7 @@ ] } }, - "/balances/evm/{address}": { + "/v1/evm/nft/items": { "get": { "responses": { "200": { @@ -3614,36 +4082,95 @@ "items": { "type": "object", "properties": { - "block_num": { - "type": "number" - }, - "last_balance_update": { - "type": "string" + "address": { + "type": "string", + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" }, "contract": { - "description": "Filter by address", - "default": "", - "type": "string" + "type": "string", + "description": "Filter by contract address", + "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" }, - "amount": { - "type": "string" + "token_id": { + "description": "Token ID", + "type": "string", + "example": "5712" }, - "value": { - "type": "number" + "token_standard": { + "description": "Token standard", + "example": "ERC721", + "type": "string", + "enum": [ + "ERC721", + "ERC1155" + ] }, "name": { - "type": "string" + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, - "symbol": { - "type": "string" + "description": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, - "decimals": { - "type": "number" + "image": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, - "network_id": { + "uri": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "attributes": { + "type": "array", + "items": { + "type": "object", + "properties": { + "trait_type": { + "type": "string" + }, + "value": { + "type": "string" + }, + "display_type": { + "type": "string" + } + }, + "required": [ + "trait_type", + "value" + ], + "additionalProperties": false + } + }, + "network": { "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", "example": "mainnet", - "default": "mainnet", "type": "string", "enum": [ "arbitrum-one", @@ -3651,19 +4178,23 @@ "base", "bsc", "mainnet", - "matic", "optimism", + "polygon", "unichain" ] } }, "required": [ - "block_num", - "last_balance_update", + "address", "contract", - "amount", - "value", - "network_id" + "token_id", + "token_standard", + "name", + "description", + "image", + "uri", + "attributes", + "network" ], "additionalProperties": false } @@ -3695,32 +4226,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -3733,7 +4249,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -3744,15 +4259,37 @@ "value": { "data": [ { - "block_num": 23383209, - "last_balance_update": "2025-09-17 13:50:23", - "contract": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", - "amount": "1007231054304438990", - "value": 1.007231054304439, - "name": "Ethereum", - "symbol": "ETH", - "decimals": 18, - "network_id": "mainnet" + "address": "0x9379557bdf32f5ee296ca7b360ccb8dcb9543d8e", + "contract": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", + "token_id": "5712", + "token_standard": "ERC721", + "name": "Pudgy Penguin #5712", + "description": "A collection 8888 Cute Chubby Pudgy Penquins sliding around on the freezing ETH blockchain.", + "image": "ipfs://QmNf1UsmdGaMbpatQ6toXSkzDpizaGmC9zfunCyoz1enD5/penguin/5712.png", + "uri": "ipfs://bafybeibc5sgo2plmjkq2tzmhrn54bk3crhnc23zd2msg4ea7a4pxrkgfna/5712", + "attributes": [ + { + "trait_type": "Background", + "value": "Blue" + }, + { + "trait_type": "Skin", + "value": "Olive Green" + }, + { + "trait_type": "Body", + "value": "Turtleneck Green" + }, + { + "trait_type": "Face", + "value": "Scar" + }, + { + "trait_type": "Head", + "value": "Party Hat" + } + ], + "network": "mainnet" } ] } @@ -4089,29 +4626,17 @@ } } }, - "operationId": "getBalancesEvmByAddress", + "operationId": "getV1EvmNftItems", "tags": [ - "EVM" + "EVM NFTs" ], "parameters": [ - { - "in": "path", - "name": "address", - "schema": { - "description": "Filter by address", - "example": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045", - "default": "", - "type": "string" - }, - "required": true - }, { "in": "query", - "name": "network_id", + "name": "network", "schema": { "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", "example": "mainnet", - "default": "mainnet", "type": "string", "enum": [ "arbitrum-one", @@ -4119,8 +4644,8 @@ "base", "bsc", "mainnet", - "matic", "optimism", + "polygon", "unichain" ] }, @@ -4130,9 +4655,20 @@ "in": "query", "name": "contract", "schema": { - "description": "Filter by address", - "default": "", - "type": "string" + "example": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", + "type": "string", + "description": "Filter by contract address" + }, + "required": true + }, + { + "in": "query", + "name": "token_id", + "schema": { + "description": "Token ID
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "type": "string", + "example": "5712", + "default": "" }, "required": false }, @@ -4140,7 +4676,7 @@ "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -4152,7 +4688,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -4161,8 +4697,8 @@ "required": false } ], - "summary": "Token Balances", - "description": "Returns ERC-20 and native token balances for a wallet address.\n\nNative token contract is `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee`.", + "summary": "NFT Items", + "description": "Returns NFT token metadata, attributes, current owner, and media URIs.", "security": [ { "bearerAuth": [] @@ -4170,7 +4706,7 @@ ] } }, - "/balances/svm": { + "/v1/evm/nft/ownerships": { "get": { "responses": { "200": { @@ -4185,46 +4721,31 @@ "items": { "type": "object", "properties": { - "last_update": { - "type": "string" - }, - "last_update_block_num": { - "type": "number" - }, - "last_update_timestamp": { - "type": "number" - }, - "program_id": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "owner": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "token_account": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "mint": { + "address": { + "type": "string", "description": "Filter by address", - "default": "", - "type": "string" + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" }, - "amount": { - "type": "string" + "contract": { + "type": "string", + "description": "Filter by contract address", + "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" }, - "value": { - "type": "number" + "token_id": { + "description": "Token ID", + "type": "string", + "example": "5712" }, - "decimals": { - "type": "number" + "token_standard": { + "description": "Token standard", + "example": "ERC721", + "type": "string", + "enum": [ + "ERC721", + "ERC1155" + ] }, "name": { - "example": "Pump", "anyOf": [ { "type": "string" @@ -4235,18 +4756,6 @@ ] }, "symbol": { - "example": "PUMP", - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "uri": { - "example": "https://ipfs.io/ipfs/bafkreibcglldkfdekdkxgumlveoe6qv3pbiceypkwtli33clbzul7leo4m", "anyOf": [ { "type": "string" @@ -4256,28 +4765,30 @@ } ] }, - "network_id": { - "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", - "example": "solana", - "default": "solana", + "network": { + "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", + "example": "mainnet", "type": "string", "enum": [ - "solana" + "arbitrum-one", + "avalanche", + "base", + "bsc", + "mainnet", + "optimism", + "polygon", + "unichain" ] } }, "required": [ - "last_update", - "last_update_block_num", - "last_update_timestamp", - "program_id", - "owner", - "token_account", - "mint", - "amount", - "value", - "decimals", - "network_id" + "address", + "contract", + "token_id", + "token_standard", + "name", + "symbol", + "network" ], "additionalProperties": false } @@ -4309,32 +4820,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -4347,7 +4843,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -4358,20 +4853,13 @@ "value": { "data": [ { - "last_update": "2025-09-05 16:15:35", - "last_update_block_num": 364853324, - "last_update_timestamp": 1757088935, - "program_id": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", - "owner": "GXYBNgyYKbSLr938VJCpmGLCUaAHWsncTi7jDoQSdFR9", - "token_account": "5UZfa66rzeDpD9wKs3Sn3iewmavxYvpAtiF2Lqd2n1wW", - "mint": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn", - "amount": "142949333429", - "value": 142949.333429, - "decimals": 6, - "name": "Pump", - "symbol": "PUMP", - "uri": "https://ipfs.io/ipfs/bafkreibcglldkfdekdkxgumlveoe6qv3pbiceypkwtli33clbzul7leo4m", - "network_id": "solana" + "address": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045", + "contract": "0x000386e3f7559d9b6a2f5c46b4ad1a9587d59dc3", + "token_id": "12", + "token_standard": "ERC721", + "name": "Bored Ape Nike Club", + "symbol": "BANC", + "network": "mainnet" } ] } @@ -4708,74 +5196,93 @@ } } }, - "operationId": "getBalancesSvm", + "operationId": "getV1EvmNftOwnerships", "tags": [ - "SVM" + "EVM NFTs" ], "parameters": [ { "in": "query", - "name": "network_id", + "name": "network", "schema": { - "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", - "example": "solana", - "default": "solana", + "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", + "example": "mainnet", "type": "string", "enum": [ - "solana" + "arbitrum-one", + "avalanche", + "base", + "bsc", + "mainnet", + "optimism", + "polygon", + "unichain" ] }, "required": true }, { "in": "query", - "name": "owner", + "name": "address", "schema": { - "type": "string" + "type": "string", + "description": "Filter by address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" }, "required": true }, { "in": "query", - "name": "token_account", + "name": "contract", "schema": { - "description": "Filter by token account address", - "default": "", - "type": "string" + "type": "string", + "description": "Filter by contract address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0x000386e3f7559d9b6a2f5c46b4ad1a9587d59dc3", + "default": "" }, "required": false }, { "in": "query", - "name": "mint", + "name": "token_id", "schema": { - "description": "Filter by mint address", - "example": "So11111111111111111111111111111111111111112", - "default": "", - "type": "string" + "description": "Token ID
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "type": "string", + "example": "12", + "default": "" }, "required": false }, { "in": "query", - "name": "program_id", + "name": "token_standard", "schema": { - "description": "Filter by program ID", + "description": "Token standard", + "example": "ERC721", "default": "", "type": "string", "enum": [ - "", - "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", - "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA" + "ERC721", + "ERC1155" ] }, "required": false }, + { + "in": "query", + "name": "include_null_balances", + "schema": { + "description": "Include zero/null balances in results", + "default": false, + "type": "boolean" + }, + "required": false + }, { "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -4787,7 +5294,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -4796,8 +5303,8 @@ "required": false } ], - "summary": "Token Balances", - "description": "Returns SPL token balances for Solana token owners with mint and program data.", + "summary": "NFT Ownerships by Address", + "description": "Returns NFT tokens owned by a wallet address with metadata and ownership information.", "security": [ { "bearerAuth": [] @@ -4805,7 +5312,7 @@ ] } }, - "/balances/native/svm": { + "/v1/evm/nft/sales": { "get": { "responses": { "200": { @@ -4820,41 +5327,33 @@ "items": { "type": "object", "properties": { - "last_update": { - "type": "string" - }, - "last_update_block_num": { - "type": "number" - }, - "last_update_timestamp": { + "block_num": { "type": "number" }, - "program_id": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "address": { - "description": "Filter by address", - "default": "", - "type": "string" + "datetime": { + "type": "string", + "format": "date-time", + "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" }, - "mint": { - "description": "Filter by address", - "default": "", - "type": "string" + "timestamp": { + "type": "number" }, - "amount": { - "type": "string" + "transaction_id": { + "type": "string", + "description": "Filter by transaction hash", + "example": "0xf6374799c227c9db38ff5ac1d5bebe8b607a1de1238cd861ebd1053ec07305ca" }, - "value": { - "type": "number" + "contract": { + "type": "string", + "description": "Filter by contract address", + "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" }, - "decimals": { - "type": "number" + "token_id": { + "description": "Token ID", + "type": "string", + "example": "5712" }, "name": { - "example": "Pump", "anyOf": [ { "type": "string" @@ -4865,7 +5364,6 @@ ] }, "symbol": { - "example": "PUMP", "anyOf": [ { "type": "string" @@ -4875,38 +5373,52 @@ } ] }, - "uri": { - "example": "https://ipfs.io/ipfs/bafkreibcglldkfdekdkxgumlveoe6qv3pbiceypkwtli33clbzul7leo4m", - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] + "offerer": { + "type": "string", + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" }, - "network_id": { - "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", - "example": "solana", - "default": "solana", + "recipient": { + "type": "string", + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" + }, + "sale_amount": { + "type": "number" + }, + "sale_currency": { + "type": "string" + }, + "network": { + "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", + "example": "mainnet", "type": "string", "enum": [ - "solana" + "arbitrum-one", + "avalanche", + "base", + "bsc", + "mainnet", + "optimism", + "polygon", + "unichain" ] } }, "required": [ - "last_update", - "last_update_block_num", - "last_update_timestamp", - "program_id", - "address", - "mint", - "amount", - "value", - "decimals", - "network_id" + "block_num", + "datetime", + "timestamp", + "transaction_id", + "contract", + "token_id", + "name", + "symbol", + "offerer", + "recipient", + "sale_amount", + "sale_currency", + "network" ], "additionalProperties": false } @@ -4938,32 +5450,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -4976,7 +5473,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -4987,19 +5483,19 @@ "value": { "data": [ { - "last_update": "2025-09-10 00:12:02", - "last_update_block_num": 365784894, - "last_update_timestamp": 1757463122, - "program_id": "11111111111111111111111111111111", - "address": "GXYBNgyYKbSLr938VJCpmGLCUaAHWsncTi7jDoQSdFR9", - "mint": "So11111111111111111111111111111111111111111", - "amount": "7769223380", - "value": 7.76922338, - "decimals": 9, - "name": "SOL", - "symbol": "SOL", - "uri": null, - "network_id": "solana" + "block_num": 22098625, + "datetime": "2025-03-21 23:46:11", + "timestamp": 1742600771, + "transaction_id": "0x8cc8b83e7b7fec752bd689700156990e7ce4d6b890f7b5ab58adf2fb602a98b9", + "contract": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", + "token_id": "5712", + "name": "PudgyPenguins", + "symbol": "PPG", + "offerer": "0x355062b5d0e324815290b96370e87607a71d613d", + "recipient": "0x7ccde43632b3287fda060719d802b2c4cb6f769b", + "sale_amount": 9.73, + "sale_currency": "ETH", + "network": "mainnet" } ] } @@ -5336,38 +5832,146 @@ } } }, - "operationId": "getBalancesNativeSvm", + "operationId": "getV1EvmNftSales", "tags": [ - "SVM" + "EVM NFTs" ], "parameters": [ { "in": "query", - "name": "network_id", + "name": "network", "schema": { - "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", - "example": "solana", - "default": "solana", + "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", + "example": "mainnet", "type": "string", "enum": [ - "solana" + "arbitrum-one", + "avalanche", + "base", + "bsc", + "mainnet", + "optimism", + "polygon", + "unichain" ] }, "required": true }, + { + "in": "query", + "name": "transaction_id", + "schema": { + "type": "string", + "description": "Filter by transaction hash
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0x8cc8b83e7b7fec752bd689700156990e7ce4d6b890f7b5ab58adf2fb602a98b9", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "contract", + "schema": { + "type": "string", + "description": "Filter by contract address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "token_id", + "schema": { + "description": "Token ID
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "type": "string", + "example": "5712", + "default": "" + }, + "required": false + }, { "in": "query", "name": "address", "schema": { - "type": "string" + "type": "string", + "description": "Filter by address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0x355062b5d0e324815290b96370e87607a71d613d", + "default": "" }, - "required": true + "required": false + }, + { + "in": "query", + "name": "from_address", + "schema": { + "type": "string", + "description": "Filter by address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0x355062b5d0e324815290b96370e87607a71d613d", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "to_address", + "schema": { + "type": "string", + "description": "Filter by address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0x7ccde43632b3287fda060719d802b2c4cb6f769b", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "start_time", + "schema": { + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": "2025-01-01" + }, + "required": false + }, + { + "in": "query", + "name": "end_time", + "schema": { + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": 9999999999 + }, + "required": false + }, + { + "in": "query", + "name": "start_block", + "schema": { + "description": "Filter by block number", + "default": 0, + "type": "integer", + "minimum": 0, + "maximum": 9007199254740991 + }, + "required": false + }, + { + "in": "query", + "name": "end_block", + "schema": { + "description": "Filter by block number", + "default": 9999999999, + "type": "integer", + "minimum": 0, + "maximum": 9007199254740991 + }, + "required": false }, { "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -5379,7 +5983,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -5388,8 +5992,8 @@ "required": false } ], - "summary": "Native Balances", - "description": "Returns SOL native balances for wallet addresses.", + "summary": "NFT Sales", + "description": "Returns NFT marketplace sales with price, buyer, seller, and transaction data.", "security": [ { "bearerAuth": [] @@ -5397,7 +6001,7 @@ ] } }, - "/dexes/evm": { + "/v1/evm/nft/transfers": { "get": { "responses": { "200": { @@ -5412,35 +6016,119 @@ "items": { "type": "object", "properties": { - "factory": { - "description": "Filter by address", - "default": "", + "block_num": { + "type": "number" + }, + "datetime": { + "type": "string", + "format": "date-time", + "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" + }, + "timestamp": { + "type": "number" + }, + "@type": { + "description": "Transfer category", + "example": "TRANSFER", + "type": "string", + "enum": [ + "BURN", + "MINT", + "TRANSFER" + ] + }, + "transfer_type": { "type": "string" }, - "protocol": { - "description": "Protocol name", - "example": "uniswap_v3", - "default": "", + "transaction_id": { + "type": "string", + "description": "Filter by transaction hash", + "example": "0xf6374799c227c9db38ff5ac1d5bebe8b607a1de1238cd861ebd1053ec07305ca" + }, + "contract": { + "type": "string", + "description": "Filter by contract address", + "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + "token_id": { + "description": "Token ID", + "type": "string", + "example": "5712" + }, + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "symbol": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "token_standard": { + "description": "Token standard", + "example": "ERC721", "type": "string", "enum": [ - "", - "uniswap_v2", - "uniswap_v3", - "uniswap_v4" + "ERC721", + "ERC1155" ] }, - "total_uaw": { - "type": "number" + "from": { + "type": "string", + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" }, - "total_transactions": { + "to": { + "type": "string", + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" + }, + "amount": { "type": "number" + }, + "network": { + "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", + "example": "mainnet", + "type": "string", + "enum": [ + "arbitrum-one", + "avalanche", + "base", + "bsc", + "mainnet", + "optimism", + "polygon", + "unichain" + ] } }, "required": [ - "factory", - "protocol", - "total_uaw", - "total_transactions" + "block_num", + "datetime", + "timestamp", + "@type", + "transfer_type", + "transaction_id", + "contract", + "token_id", + "name", + "symbol", + "token_standard", + "from", + "to", + "amount", + "network" ], "additionalProperties": false } @@ -5472,32 +6160,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -5510,7 +6183,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -5521,10 +6193,21 @@ "value": { "data": [ { - "factory": "0x5c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f", - "protocol": "uniswap_v2", - "total_uaw": 13479919, - "total_transactions": 20679385 + "block_num": 22098625, + "datetime": "2025-03-21 23:46:11", + "timestamp": 1742600771, + "@type": "TRANSFER", + "transfer_type": "Single", + "transaction_id": "0x8cc8b83e7b7fec752bd689700156990e7ce4d6b890f7b5ab58adf2fb602a98b9", + "contract": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", + "token_id": "5712", + "name": "PudgyPenguins", + "symbol": "PPG", + "token_standard": "ERC721", + "from": "0x355062b5d0e324815290b96370e87607a71d613d", + "to": "0x7ccde43632b3287fda060719d802b2c4cb6f769b", + "amount": 1, + "network": "mainnet" } ] } @@ -5861,18 +6544,17 @@ } } }, - "operationId": "getDexesEvm", + "operationId": "getV1EvmNftTransfers", "tags": [ - "EVM" + "EVM NFTs" ], "parameters": [ { "in": "query", - "name": "network_id", + "name": "network", "schema": { "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", "example": "mainnet", - "default": "mainnet", "type": "string", "enum": [ "arbitrum-one", @@ -5880,8 +6562,8 @@ "base", "bsc", "mainnet", - "matic", "optimism", + "polygon", "unichain" ] }, @@ -5889,11 +6571,127 @@ }, { "in": "query", - "name": "factory", + "name": "type", "schema": { - "description": "Filter by address", + "description": "Transfer category", + "example": "TRANSFER", "default": "", - "type": "string" + "type": "string", + "enum": [ + "BURN", + "MINT", + "TRANSFER" + ] + }, + "required": false + }, + { + "in": "query", + "name": "transaction_id", + "schema": { + "type": "string", + "description": "Filter by transaction hash
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0x8cc8b83e7b7fec752bd689700156990e7ce4d6b890f7b5ab58adf2fb602a98b9", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "contract", + "schema": { + "type": "string", + "description": "Filter by contract address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0xbd3531da5cf5857e7cfaa92426877b022e612cf8", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "token_id", + "schema": { + "description": "Token ID
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "type": "string", + "example": "5712", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "address", + "schema": { + "type": "string", + "description": "Filter by address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0x355062b5d0e324815290b96370e87607a71d613d", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "from_address", + "schema": { + "type": "string", + "description": "Filter by address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0x355062b5d0e324815290b96370e87607a71d613d", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "to_address", + "schema": { + "type": "string", + "description": "Filter by address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0x7ccde43632b3287fda060719d802b2c4cb6f769b", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "start_time", + "schema": { + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": "2025-01-01" + }, + "required": false + }, + { + "in": "query", + "name": "end_time", + "schema": { + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": 9999999999 + }, + "required": false + }, + { + "in": "query", + "name": "start_block", + "schema": { + "description": "Filter by block number", + "default": 0, + "type": "integer", + "minimum": 0, + "maximum": 9007199254740991 + }, + "required": false + }, + { + "in": "query", + "name": "end_block", + "schema": { + "description": "Filter by block number", + "default": 9999999999, + "type": "integer", + "minimum": 0, + "maximum": 9007199254740991 }, "required": false }, @@ -5901,7 +6699,7 @@ "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -5913,7 +6711,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -5922,8 +6720,8 @@ "required": false } ], - "summary": "Supported DEXs", - "description": "Returns supported EVM DEXs.", + "summary": "NFT Transfers", + "description": "Returns NFT transfer events including mints, burns, and ownership changes.", "security": [ { "bearerAuth": [] @@ -5931,7 +6729,7 @@ ] } }, - "/dexes/svm": { + "/v1/evm/pools": { "get": { "responses": { "200": { @@ -5946,36 +6744,139 @@ "items": { "type": "object", "properties": { - "program_id": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "program_name": { - "type": "string" + "factory": { + "type": "string", + "description": "Filter by factory address", + "example": "0x5c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f" }, - "amm": { - "description": "Filter by address", - "default": "", - "type": "string" + "pool": { + "description": "Filter by pool address", + "type": "string", + "example": "0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640" }, - "amm_name": { - "type": "string" + "input_token": { + "type": "object", + "properties": { + "address": { + "anyOf": [ + { + "type": "string", + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" + }, + { + "type": "null" + } + ] + }, + "symbol": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "decimals": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "address", + "symbol", + "decimals" + ], + "additionalProperties": false }, - "is_aggregator": { - "type": "boolean" + "output_token": { + "type": "object", + "properties": { + "address": { + "anyOf": [ + { + "type": "string", + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" + }, + { + "type": "null" + } + ] + }, + "symbol": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "decimals": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "address", + "symbol", + "decimals" + ], + "additionalProperties": false }, - "total_transactions": { + "fee": { "type": "number" + }, + "protocol": { + "description": "Protocol name", + "example": "uniswap_v3", + "type": "string", + "enum": [ + "uniswap_v2", + "uniswap_v3", + "uniswap_v4" + ] + }, + "network": { + "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", + "example": "mainnet", + "type": "string", + "enum": [ + "arbitrum-one", + "avalanche", + "base", + "bsc", + "mainnet", + "optimism", + "polygon", + "unichain" + ] } }, "required": [ - "program_id", - "program_name", - "amm", - "amm_name", - "is_aggregator", - "total_transactions" + "factory", + "pool", + "input_token", + "output_token", + "fee", + "protocol", + "network" ], "additionalProperties": false } @@ -6007,32 +6908,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -6045,7 +6931,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -6056,12 +6941,21 @@ "value": { "data": [ { - "program_id": "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8", - "program_name": "Raydium Liquidity Pool V4", - "amm": "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8", - "amm_name": "Raydium Liquidity Pool V4", - "is_aggregator": false, - "total_transactions": 5503648369 + "factory": "0x1f98431c8ad98523631ae4a59f267346ea31f984", + "pool": "0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640", + "input_token": { + "address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "symbol": "USDC", + "decimals": 6 + }, + "output_token": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "decimals": 18 + }, + "fee": 500, + "protocol": "uniswap_v3", + "network": "mainnet" } ] } @@ -6398,42 +7292,88 @@ } } }, - "operationId": "getDexesSvm", + "operationId": "getV1EvmPools", "tags": [ - "SVM" + "EVM DEXs" ], "parameters": [ { "in": "query", - "name": "network_id", + "name": "network", "schema": { - "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", - "example": "solana", - "default": "solana", + "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", + "example": "mainnet", "type": "string", "enum": [ - "solana" + "arbitrum-one", + "avalanche", + "base", + "bsc", + "mainnet", + "optimism", + "polygon", + "unichain" ] }, "required": true }, { "in": "query", - "name": "program_id", + "name": "factory", "schema": { - "description": "Filter by program ID", - "default": "", - "type": "string" + "type": "string", + "description": "Filter by factory address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0x1f98431c8ad98523631ae4a59f267346ea31f984", + "default": "" }, "required": false }, { "in": "query", - "name": "amm", + "name": "pool", + "schema": { + "description": "Filter by pool address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "type": "string", + "example": "0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "input_token", + "schema": { + "type": "string", + "description": "Filter by contract address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "output_token", + "schema": { + "type": "string", + "description": "Filter by contract address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "protocol", "schema": { - "description": "Filter by amm address", + "description": "Protocol name", + "example": "uniswap_v3", "default": "", - "type": "string" + "type": "string", + "enum": [ + "uniswap_v2", + "uniswap_v3", + "uniswap_v4" + ] }, "required": false }, @@ -6441,7 +7381,7 @@ "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -6453,7 +7393,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -6462,8 +7402,8 @@ "required": false } ], - "summary": "Supported DEXs", - "description": "Returns supported Solana DEXs.", + "summary": "Liquidity Pools", + "description": "Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions.", "security": [ { "bearerAuth": [] @@ -6471,7 +7411,7 @@ ] } }, - "/transfers/evm": { + "/v1/evm/pools/ohlc": { "get": { "responses": { "200": { @@ -6486,81 +7426,52 @@ "items": { "type": "object", "properties": { - "block_num": { - "type": "number" - }, "datetime": { "type": "string", "format": "date-time", "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" }, - "timestamp": { - "type": "number" - }, - "transaction_id": { - "type": "string" - }, - "contract": { - "description": "Filter by address", - "default": "", + "ticker": { "type": "string" }, - "from": { - "description": "Filter by address", - "default": "", - "type": "string" + "pool": { + "description": "Filter by pool address", + "type": "string", + "example": "0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640" }, - "to": { - "description": "Filter by address", - "default": "", - "type": "string" + "open": { + "type": "number" }, - "name": { - "type": "string" + "high": { + "type": "number" }, - "symbol": { - "type": "string" + "low": { + "type": "number" }, - "decimals": { + "close": { "type": "number" }, - "amount": { - "type": "string" + "volume": { + "type": "number" }, - "value": { + "uaw": { "type": "number" }, - "network_id": { - "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", - "example": "mainnet", - "default": "mainnet", - "type": "string", - "enum": [ - "arbitrum-one", - "avalanche", - "base", - "bsc", - "mainnet", - "matic", - "optimism", - "unichain" - ] + "transactions": { + "type": "number" } }, "required": [ - "block_num", "datetime", - "timestamp", - "transaction_id", - "contract", - "from", - "to", - "name", - "symbol", - "decimals", - "amount", - "value", - "network_id" + "ticker", + "pool", + "open", + "high", + "low", + "close", + "volume", + "uaw", + "transactions" ], "additionalProperties": false } @@ -6592,32 +7503,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -6630,7 +7526,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -6641,19 +7536,16 @@ "value": { "data": [ { - "block_num": 23383393, - "datetime": "2025-09-17 14:27:23", - "timestamp": 1758119243, - "transaction_id": "0xebf58ec6ab1b7fa10fa2d64b21d7d27528c46a36d4c349fc6ddecf9836bc3bba", - "contract": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", - "from": "0x7a250d5630b4cf539739df2c5dacb4c659f2488d", - "to": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "name": "Native", - "symbol": "ETH", - "decimals": 18, - "amount": "2420480000000000", - "value": 0.00242048, - "network_id": "mainnet" + "datetime": "2025-10-16 00:00:00", + "ticker": "USDCWETH", + "pool": "0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640", + "open": 3986.8562193110524, + "high": 4067.092237083535, + "low": 3959.52075942394, + "close": 3989.7646037044765, + "volume": 32956701.586648002, + "uaw": 1363, + "transactions": 3066 } ] } @@ -6990,18 +7882,17 @@ } } }, - "operationId": "getTransfersEvm", + "operationId": "getV1EvmPoolsOhlc", "tags": [ - "EVM" + "EVM DEXs" ], "parameters": [ { "in": "query", - "name": "network_id", + "name": "network", "schema": { "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", "example": "mainnet", - "default": "mainnet", "type": "string", "enum": [ "arbitrum-one", @@ -7009,8 +7900,8 @@ "base", "bsc", "mainnet", - "matic", "optimism", + "polygon", "unichain" ] }, @@ -7018,93 +7909,47 @@ }, { "in": "query", - "name": "from", - "schema": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "to", - "schema": { - "description": "Filter by address", - "example": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "contract", + "name": "pool", "schema": { - "description": "Filter by address", - "default": "", + "example": "0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640", + "description": "Filter by pool address", "type": "string" }, - "required": false - }, - { - "in": "query", - "name": "startTime", - "schema": { - "default": 1735689600, - "description": "UNIX timestamp in seconds.", - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 - }, - "required": false - }, - { - "in": "query", - "name": "endTime", - "schema": { - "default": 9999999999, - "description": "UNIX timestamp in seconds.", - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 - }, - "required": false + "required": true }, { "in": "query", - "name": "orderBy", + "name": "interval", "schema": { - "description": "The field by which to order the results.", - "default": "timestamp", "type": "string", "enum": [ - "timestamp" - ] + "1h", + "4h", + "1d", + "1w" + ], + "default": "1d", + "description": "The interval for which to aggregate price data (hourly, 4-hours, daily or weekly)." }, "required": false }, { "in": "query", - "name": "orderDirection", + "name": "start_time", "schema": { - "description": "The order in which to return the results: Ascending (asc) or Descending (desc).", - "default": "desc", "type": "string", - "enum": [ - "asc", - "desc" - ] + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": "2025-01-01" }, "required": false }, { "in": "query", - "name": "transaction_id", + "name": "end_time", "schema": { - "description": "Filter by transaction", - "default": "", - "type": "string" + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": 9999999999 }, "required": false }, @@ -7112,7 +7957,7 @@ "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -7124,7 +7969,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -7133,8 +7978,8 @@ "required": false } ], - "summary": "Token Transfers", - "description": "Returns ERC-20 and native token transfers with transaction and block data.", + "summary": "Pool OHLCV Data", + "description": "Returns OHLCV price data for liquidity pools.\n\nOHLCV historical depth is subject to plan restrictions.", "security": [ { "bearerAuth": [] @@ -7142,7 +7987,7 @@ ] } }, - "/transfers/svm": { + "/v1/evm/swaps": { "get": { "responses": { "200": { @@ -7168,92 +8013,164 @@ "timestamp": { "type": "number" }, - "signature": { - "type": "string" + "transaction_id": { + "type": "string" + }, + "factory": { + "type": "string", + "description": "Filter by factory address", + "example": "0x5c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f" + }, + "pool": { + "description": "Filter by pool address", + "type": "string", + "example": "0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640" + }, + "input_token": { + "type": "object", + "properties": { + "address": { + "anyOf": [ + { + "type": "string", + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" + }, + { + "type": "null" + } + ] + }, + "symbol": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "decimals": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "address", + "symbol", + "decimals" + ], + "additionalProperties": false + }, + "output_token": { + "type": "object", + "properties": { + "address": { + "anyOf": [ + { + "type": "string", + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" + }, + { + "type": "null" + } + ] + }, + "symbol": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "decimals": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "address", + "symbol", + "decimals" + ], + "additionalProperties": false }, - "program_id": { + "caller": { + "type": "string", "description": "Filter by address", - "default": "", - "type": "string" + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" }, - "mint": { + "sender": { + "type": "string", "description": "Filter by address", - "default": "", - "type": "string" + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" }, - "authority": { + "recipient": { + "type": "string", "description": "Filter by address", - "default": "", - "type": "string" + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" }, - "source": { - "description": "Filter by address", - "default": "", + "input_amount": { "type": "string" }, - "destination": { - "description": "Filter by address", - "default": "", - "type": "string" + "input_value": { + "type": "number" }, - "amount": { + "output_amount": { "type": "string" }, - "value": { + "output_value": { "type": "number" }, - "decimals": { - "anyOf": [ - { - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 - }, - { - "type": "null" - } - ] + "price": { + "type": "number" }, - "name": { - "example": "Pump", - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] + "price_inv": { + "type": "number" }, - "symbol": { - "example": "PUMP", - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } + "protocol": { + "description": "Protocol name", + "example": "uniswap_v3", + "type": "string", + "enum": [ + "uniswap_v2", + "uniswap_v3", + "uniswap_v4" ] }, - "uri": { - "example": "https://ipfs.io/ipfs/bafkreibcglldkfdekdkxgumlveoe6qv3pbiceypkwtli33clbzul7leo4m", - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] + "summary": { + "type": "string" }, - "network_id": { - "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", - "example": "solana", - "default": "solana", + "network": { + "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", + "example": "mainnet", "type": "string", "enum": [ - "solana" + "arbitrum-one", + "avalanche", + "base", + "bsc", + "mainnet", + "optimism", + "polygon", + "unichain" ] } }, @@ -7261,16 +8178,23 @@ "block_num", "datetime", "timestamp", - "signature", - "program_id", - "mint", - "authority", - "source", - "destination", - "amount", - "value", - "decimals", - "network_id" + "transaction_id", + "factory", + "pool", + "input_token", + "output_token", + "caller", + "sender", + "recipient", + "input_amount", + "input_value", + "output_amount", + "output_value", + "price", + "price_inv", + "protocol", + "summary", + "network" ], "additionalProperties": false } @@ -7302,32 +8226,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -7340,7 +8249,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -7351,22 +8259,34 @@ "value": { "data": [ { - "block_num": 357525780, - "datetime": "2025-08-03 04:39:21", - "timestamp": 1754195961, - "signature": "BxkksmejT6seHWtRC8aieMUgxpHwoYmdv9GmjeCKuLbL1xxWBSSXqrWQybfRMmKR6ZFc61kuGQzftBCwEKByiVK", - "program_id": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", - "mint": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn", - "authority": "5YPxToTobawvkbn5rkWKYDhZqHf5v6LAtRLNPGiq6U2A", - "source": "BEyX6Nwqj1wQqSJWEHK5ezKtNxatyrgGu1tbCLnLpNQt", - "destination": "64nnJ2CBUZ3VasttjVhxbQXqzbjAxnj4VT4vBrrveNV", - "amount": 1520033500, - "value": 1520.0335, - "decimals": 6, - "name": "Pump", - "symbol": "PUMP", - "uri": "https://ipfs.io/ipfs/bafkreibcglldkfdekdkxgumlveoe6qv3pbiceypkwtli33clbzul7leo4m", - "network_id": "solana" + "block_num": 23590326, + "datetime": "2025-10-16 12:48:47", + "timestamp": 1760618927, + "transaction_id": "0xf6374799c227c9db38ff5ac1d5bebe8b607a1de1238cd861ebd1053ec07305ca", + "factory": "0x1f98431c8ad98523631ae4a59f267346ea31f984", + "pool": "0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640", + "input_token": { + "address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", + "symbol": "USDC", + "decimals": 6 + }, + "output_token": { + "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "symbol": "WETH", + "decimals": 18 + }, + "caller": "0xa69babef1ca67a37ffaf7a485dfff3382056e78c", + "sender": "0xa69babef1ca67a37ffaf7a485dfff3382056e78c", + "recipient": "0xa69babef1ca67a37ffaf7a485dfff3382056e78c", + "input_amount": "40735537734", + "input_value": 40735.537734, + "output_amount": "10042247631260591234", + "output_value": 10.042247631260592, + "price": 246517483.4798306, + "price_inv": 4.0565074163667475e-9, + "protocol": "uniswap_v3", + "summary": "Swap 40.74 thousand USDC for 10.042247631260592 WETH on Uniswap V3", + "network": "mainnet" } ] } @@ -7703,129 +8623,143 @@ } } }, - "operationId": "getTransfersSvm", + "operationId": "getV1EvmSwaps", "tags": [ - "SVM" + "EVM DEXs" ], "parameters": [ { "in": "query", - "name": "network_id", + "name": "network", "schema": { - "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", - "example": "solana", - "default": "solana", + "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", + "example": "mainnet", "type": "string", "enum": [ - "solana" + "arbitrum-one", + "avalanche", + "base", + "bsc", + "mainnet", + "optimism", + "polygon", + "unichain" ] }, "required": true }, { "in": "query", - "name": "mint", + "name": "transaction_id", "schema": { - "description": "Filter by mint address", - "example": "So11111111111111111111111111111111111111112", - "default": "", - "type": "string" + "type": "string", + "description": "Filter by transaction hash
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0xf6374799c227c9db38ff5ac1d5bebe8b607a1de1238cd861ebd1053ec07305ca", + "default": "" }, "required": false }, { "in": "query", - "name": "source", + "name": "pool", "schema": { - "description": "Filter by token account address", - "default": "", - "type": "string" + "description": "Filter by pool address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "type": "string", + "example": "0x88e6a0c2ddd26feeb64f039a2c41296fcb3f5640", + "default": "" }, "required": false }, { "in": "query", - "name": "destination", + "name": "caller", "schema": { - "description": "Filter by token account address", - "default": "", - "type": "string" + "type": "string", + "description": "Filter by address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0xa69babef1ca67a37ffaf7a485dfff3382056e78c", + "default": "" }, "required": false }, { "in": "query", - "name": "authority", + "name": "sender", "schema": { - "description": "Filter by authority token account address", - "default": "", - "type": "string" + "type": "string", + "description": "Filter by address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0xa69babef1ca67a37ffaf7a485dfff3382056e78c", + "default": "" }, "required": false }, { "in": "query", - "name": "program_id", + "name": "recipient", + "schema": { + "type": "string", + "description": "Filter by address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0xa69babef1ca67a37ffaf7a485dfff3382056e78c", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "protocol", "schema": { - "description": "Filter by program ID", + "description": "Protocol name", + "example": "uniswap_v3", "default": "", "type": "string", "enum": [ - "", - "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", - "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA" + "uniswap_v2", + "uniswap_v3", + "uniswap_v4" ] }, "required": false }, { "in": "query", - "name": "startTime", + "name": "start_time", "schema": { - "default": 1735689600, - "description": "UNIX timestamp in seconds.", - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": "2025-01-01" }, "required": false }, { "in": "query", - "name": "endTime", + "name": "end_time", "schema": { - "default": 9999999999, - "description": "UNIX timestamp in seconds.", - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": 9999999999 }, "required": false }, { "in": "query", - "name": "orderBy", + "name": "start_block", "schema": { - "description": "The field by which to order the results.", - "default": "timestamp", - "type": "string", - "enum": [ - "timestamp" - ] + "description": "Filter by block number", + "default": 0, + "type": "integer", + "minimum": 0, + "maximum": 9007199254740991 }, "required": false }, { "in": "query", - "name": "orderDirection", + "name": "end_block", "schema": { - "description": "The order in which to return the results: Ascending (asc) or Descending (desc).", - "default": "desc", - "type": "string", - "enum": [ - "asc", - "desc" - ] + "description": "Filter by block number", + "default": 9999999999, + "type": "integer", + "minimum": 0, + "maximum": 9007199254740991 }, "required": false }, @@ -7833,7 +8767,7 @@ "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -7845,7 +8779,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -7854,8 +8788,8 @@ "required": false } ], - "summary": "Token Transfers", - "description": "Returns SPL token transfers with program, authority, and account information.", + "summary": "Swap Events", + "description": "Returns DEX swap transactions from Uniswap protocols with token amounts and prices.", "security": [ { "bearerAuth": [] @@ -7863,7 +8797,7 @@ ] } }, - "/tokens/evm/{contract}": { + "/v1/evm/tokens": { "get": { "responses": { "200": { @@ -7890,18 +8824,39 @@ "type": "number" }, "contract": { - "description": "Filter by address", - "default": "", - "type": "string" + "type": "string", + "description": "Filter by contract address", + "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" }, "name": { - "type": "string" + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, "symbol": { - "type": "string" + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, "decimals": { - "type": "number" + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] }, "circulating_supply": { "type": "number" @@ -7912,10 +8867,9 @@ "holders": { "type": "number" }, - "network_id": { + "network": { "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", "example": "mainnet", - "default": "mainnet", "type": "string", "enum": [ "arbitrum-one", @@ -7923,8 +8877,8 @@ "base", "bsc", "mainnet", - "matic", "optimism", + "polygon", "unichain" ] }, @@ -7952,7 +8906,7 @@ "circulating_supply", "total_supply", "holders", - "network_id", + "network", "icon" ], "additionalProperties": false @@ -7985,32 +8939,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -8023,7 +8962,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -8034,19 +8972,19 @@ "value": { "data": [ { - "last_update": "2025-09-17 14:26:47", - "last_update_block_num": 23383390, - "last_update_timestamp": 1758119207, - "contract": "0xc944e90c64b2c07662a292be6244bdf05cda44a7", - "name": "Graph Token", - "symbol": "GRT", + "last_update": "2025-10-16 09:24:47", + "last_update_block_num": 23589316, + "last_update_timestamp": 1760606687, + "contract": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", + "name": "Wrapped Ether", + "symbol": "WETH", "decimals": 18, - "circulating_supply": 10800334780.716036, - "total_supply": 10800262816.048214, - "holders": 174139, - "network_id": "mainnet", + "circulating_supply": 2335108.0877502915, + "total_supply": 2335107.8841477665, + "holders": 3014993, + "network": "mainnet", "icon": { - "web3icon": "GRT" + "web3icon": "ETH" } } ] @@ -8384,29 +9322,17 @@ } } }, - "operationId": "getTokensEvmByContract", + "operationId": "getV1EvmTokens", "tags": [ - "EVM" + "EVM Tokens" ], "parameters": [ - { - "in": "path", - "name": "contract", - "schema": { - "description": "Filter by contract address", - "example": "0xc944e90c64b2c07662a292be6244bdf05cda44a7", - "default": "", - "type": "string" - }, - "required": true - }, { "in": "query", - "name": "network_id", + "name": "network", "schema": { "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", "example": "mainnet", - "default": "mainnet", "type": "string", "enum": [ "arbitrum-one", @@ -8414,16 +9340,50 @@ "base", "bsc", "mainnet", - "matic", "optimism", + "polygon", "unichain" ] }, "required": true + }, + { + "in": "query", + "name": "contract", + "schema": { + "type": "string", + "description": "Filter by contract address", + "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" + }, + "required": true + }, + { + "in": "query", + "name": "limit", + "schema": { + "description": "Number of items* returned in a single request.
*Plan restricted.", + "default": 10, + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + "required": false + }, + { + "in": "query", + "name": "page", + "schema": { + "description": "Page number to fetch.
Empty `data` array signifies end of results.", + "default": 1, + "type": "integer", + "minimum": 1, + "maximum": 767465558638 + }, + "required": false } ], "summary": "Token Metadata", - "description": "Returns ERC-20 token metadata including supply, holder count, and price data.", + "description": "Returns ERC-20 token metadata including supply and holder count.", "security": [ { "bearerAuth": [] @@ -8431,7 +9391,7 @@ ] } }, - "/tokens/svm/{mint}": { + "/v1/evm/transfers": { "get": { "responses": { "200": { @@ -8446,48 +9406,103 @@ "items": { "type": "object", "properties": { - "last_update": { - "type": "string" - }, - "last_update_block_num": { + "block_num": { "type": "number" }, - "last_update_timestamp": { + "datetime": { + "type": "string", + "format": "date-time", + "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" + }, + "timestamp": { "type": "number" }, - "program_id": { - "type": "string" + "transaction_id": { + "type": "string", + "description": "Filter by transaction hash", + "example": "0xf6374799c227c9db38ff5ac1d5bebe8b607a1de1238cd861ebd1053ec07305ca" }, - "mint": { - "type": "string" + "contract": { + "type": "string", + "description": "Filter by contract address", + "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2" }, - "decimals": { - "type": "number" + "from": { + "type": "string", + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" + }, + "to": { + "type": "string", + "description": "Filter by address", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045" }, "name": { - "type": "string" + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, "symbol": { - "type": "string" + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, - "uri": { - "type": "string" + "decimals": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] }, - "network_id": { + "amount": { "type": "string" + }, + "value": { + "type": "number" + }, + "network": { + "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", + "example": "mainnet", + "type": "string", + "enum": [ + "arbitrum-one", + "avalanche", + "base", + "bsc", + "mainnet", + "optimism", + "polygon", + "unichain" + ] } }, "required": [ - "last_update", - "last_update_block_num", - "last_update_timestamp", - "program_id", - "mint", - "decimals", + "block_num", + "datetime", + "timestamp", + "transaction_id", + "contract", + "from", + "to", "name", "symbol", - "uri", - "network_id" + "decimals", + "amount", + "value", + "network" ], "additionalProperties": false } @@ -8519,32 +9534,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -8557,7 +9557,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -8568,16 +9567,20 @@ "value": { "data": [ { - "last_update": "2025-09-25 13:14:06", - "last_update_block_num": 369174420, - "last_update_timestamp": 1758806046, - "program_id": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA", - "mint": "So11111111111111111111111111111111111111112", - "decimals": 9, - "name": "Wrapped SOL", - "symbol": "SOL", - "uri": null, - "network_id": "solana" + "block_num": 23565775, + "datetime": "2025-10-13 02:19:47", + "timestamp": 1760321987, + "transaction_id": "0x96b1b180d22dae2b18a783ebdd5ae33f6867f3572f87c69a135c6c0a15a63c8e", + "log_index": 4404, + "contract": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", + "from": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045", + "to": "0xdadb0d80178819f2319190d340ce9a924f783711", + "name": "Native", + "symbol": "ETH", + "decimals": 18, + "amount": "5038198000000", + "value": 0.000005038198, + "network": "mainnet" } ] } @@ -8914,39 +9917,146 @@ } } }, - "operationId": "getTokensSvmByMint", + "operationId": "getV1EvmTransfers", "tags": [ - "SVM" + "EVM Tokens" ], "parameters": [ { - "in": "path", - "name": "mint", + "in": "query", + "name": "network", "schema": { - "description": "Filter by mint address", - "example": "So11111111111111111111111111111111111111112", - "default": "", - "type": "string" + "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", + "example": "mainnet", + "type": "string", + "enum": [ + "arbitrum-one", + "avalanche", + "base", + "bsc", + "mainnet", + "optimism", + "polygon", + "unichain" + ] }, "required": true }, { "in": "query", - "name": "network_id", + "name": "transaction_id", "schema": { - "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", - "example": "solana", - "default": "solana", "type": "string", - "enum": [ - "solana" - ] + "description": "Filter by transaction hash
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0x96b1b180d22dae2b18a783ebdd5ae33f6867f3572f87c69a135c6c0a15a63c8e", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "contract", + "schema": { + "type": "string", + "description": "Filter by contract address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "from_address", + "schema": { + "type": "string", + "description": "Filter by address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0xd8da6bf26964af9d7eed9e03e53415d37aa96045", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "to_address", + "schema": { + "type": "string", + "description": "Filter by address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "0xdadb0d80178819f2319190d340ce9a924f783711", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "start_time", + "schema": { + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": "2025-01-01" + }, + "required": false + }, + { + "in": "query", + "name": "end_time", + "schema": { + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": 9999999999 + }, + "required": false + }, + { + "in": "query", + "name": "start_block", + "schema": { + "description": "Filter by block number", + "default": 0, + "type": "integer", + "minimum": 0, + "maximum": 9007199254740991 + }, + "required": false + }, + { + "in": "query", + "name": "end_block", + "schema": { + "description": "Filter by block number", + "default": 9999999999, + "type": "integer", + "minimum": 0, + "maximum": 9007199254740991 + }, + "required": false + }, + { + "in": "query", + "name": "limit", + "schema": { + "description": "Number of items* returned in a single request.
*Plan restricted.", + "default": 10, + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + "required": false + }, + { + "in": "query", + "name": "page", + "schema": { + "description": "Page number to fetch.
Empty `data` array signifies end of results.", + "default": 1, + "type": "integer", + "minimum": 1, + "maximum": 767465558638 }, - "required": true + "required": false } ], - "summary": "Token Metadata", - "description": "Provides SVM token contract metadata.", + "summary": "Token Transfers", + "description": "Returns ERC-20 and native token transfers with transaction and block data.", "security": [ { "bearerAuth": [] @@ -8954,7 +10064,7 @@ ] } }, - "/holders/evm/{contract}": { + "/v1/svm/balances/native": { "get": { "responses": { "200": { @@ -8969,16 +10079,36 @@ "items": { "type": "object", "properties": { - "block_num": { + "last_update": { + "type": "string", + "format": "date-time", + "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" + }, + "last_update_block_num": { "type": "number" }, - "last_balance_update": { - "type": "string" + "last_update_timestamp": { + "type": "number" + }, + "program_id": { + "description": "Filter by SPL token program ID", + "example": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", + "type": "string", + "enum": [ + "11111111111111111111111111111111", + "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", + "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA" + ] }, "address": { + "type": "string", "description": "Filter by address", - "default": "", - "type": "string" + "example": "So11111111111111111111111111111111111111112" + }, + "mint": { + "type": "string", + "description": "Filter by mint address", + "example": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn" }, "amount": { "type": "string" @@ -8986,39 +10116,69 @@ "value": { "type": "number" }, + "decimals": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, "name": { - "type": "string" + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, "symbol": { - "type": "string" + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, - "decimals": { - "type": "number" + "uri": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, - "network_id": { - "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", - "example": "mainnet", - "default": "mainnet", + "network": { + "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", + "example": "solana", "type": "string", "enum": [ - "arbitrum-one", - "avalanche", - "base", - "bsc", - "mainnet", - "matic", - "optimism", - "unichain" + "solana" ] } }, "required": [ - "block_num", - "last_balance_update", + "last_update", + "last_update_block_num", + "last_update_timestamp", + "program_id", "address", + "mint", "amount", "value", - "network_id" + "decimals", + "name", + "symbol", + "uri", + "network" ], "additionalProperties": false } @@ -9050,32 +10210,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -9088,7 +10233,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -9099,15 +10243,19 @@ "value": { "data": [ { - "block_num": 23381678, - "last_balance_update": "2025-09-17 08:42:59", - "address": "0x36aff7001294dae4c2ed4fdefc478a00de77f090", - "amount": "2896517981175142125080776739", - "value": 2896517981.1751423, - "name": "Graph Token", - "symbol": "GRT", - "decimals": 18, - "network_id": "mainnet" + "last_update": "2025-10-16 08:20:15", + "last_update_block_num": 373711220, + "last_update_timestamp": 1760602815, + "program_id": "11111111111111111111111111111111", + "address": "So11111111111111111111111111111111111111112", + "mint": "So11111111111111111111111111111111111111111", + "amount": "1173096711863", + "value": 1173.096711863, + "decimals": 9, + "name": "SOL", + "symbol": "SOL", + "uri": null, + "network": "solana" } ] } @@ -9444,67 +10592,41 @@ } } }, - "operationId": "getHoldersEvmByContract", + "operationId": "getV1SvmBalancesNative", "tags": [ - "EVM" + "SVM Tokens" ], "parameters": [ - { - "in": "path", - "name": "contract", - "schema": { - "description": "Filter by contract address", - "example": "0xc944e90c64b2c07662a292be6244bdf05cda44a7", - "default": "", - "type": "string" - }, - "required": true - }, { "in": "query", - "name": "network_id", + "name": "network", "schema": { - "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", - "example": "mainnet", - "default": "mainnet", + "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", + "example": "solana", "type": "string", "enum": [ - "arbitrum-one", - "avalanche", - "base", - "bsc", - "mainnet", - "matic", - "optimism", - "unichain" + "solana" ] }, "required": true }, { "in": "query", - "name": "orderBy", + "name": "address", "schema": { - "description": "The field by which to order the results.", - "default": "value", "type": "string", - "enum": [ - "value" - ] + "description": "Filter by address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "So11111111111111111111111111111111111111112" }, - "required": false + "required": true }, { "in": "query", - "name": "orderDirection", + "name": "include_null_balances", "schema": { - "description": "The order in which to return the results: Ascending (asc) or Descending (desc).", - "default": "desc", - "type": "string", - "enum": [ - "asc", - "desc" - ] + "description": "Include zero/null balances in results", + "default": false, + "type": "boolean" }, "required": false }, @@ -9512,7 +10634,7 @@ "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -9524,7 +10646,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -9533,8 +10655,8 @@ "required": false } ], - "summary": "Token Holders", - "description": "Returns top token holders ranked by balance.", + "summary": "Native Balances", + "description": "Returns SOL native balances for wallet addresses.", "security": [ { "bearerAuth": [] @@ -9542,7 +10664,7 @@ ] } }, - "/swaps/evm": { + "/v1/svm/balances": { "get": { "responses": { "200": { @@ -9557,151 +10679,112 @@ "items": { "type": "object", "properties": { - "block_num": { - "type": "number" - }, - "datetime": { + "last_update": { "type": "string", "format": "date-time", "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" }, - "timestamp": { + "last_update_block_num": { "type": "number" }, - "network_id": { - "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", - "example": "mainnet", - "default": "mainnet", + "last_update_timestamp": { + "type": "number" + }, + "program_id": { + "description": "Filter by SPL token program ID", + "example": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", "type": "string", "enum": [ - "arbitrum-one", - "avalanche", - "base", - "bsc", - "mainnet", - "matic", - "optimism", - "unichain" + "11111111111111111111111111111111", + "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", + "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA" ] }, - "transaction_id": { - "type": "string" - }, - "caller": { - "description": "Filter by address", - "default": "", - "type": "string" + "owner": { + "type": "string", + "description": "Filter by owner address", + "example": "GXYBNgyYKbSLr938VJCpmGLCUaAHWsncTi7jDoQSdFR9" }, - "sender": { - "description": "Filter by address", - "default": "", - "type": "string" + "token_account": { + "type": "string", + "description": "Filter by token account address", + "example": "5UZfa66rzeDpD9wKs3Sn3iewmavxYvpAtiF2Lqd2n1wW" }, - "recipient": { - "description": "Filter by address", - "default": "", - "type": "string" + "mint": { + "type": "string", + "description": "Filter by mint address", + "example": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn" }, - "factory": { - "description": "Filter by address", - "default": "", + "amount": { "type": "string" }, - "pool": { - "description": "Filter by pool", - "default": "", - "type": "string" + "value": { + "type": "number" }, - "token0": { - "type": "object", - "properties": { - "address": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "symbol": { - "type": "string" - }, - "decimals": { + "decimals": { + "anyOf": [ + { "type": "number" + }, + { + "type": "null" } - }, - "required": [ - "address", - "symbol", - "decimals" - ], - "additionalProperties": false + ] }, - "token1": { - "type": "object", - "properties": { - "address": { - "description": "Filter by address", - "default": "", + "name": { + "anyOf": [ + { "type": "string" }, - "symbol": { + { + "type": "null" + } + ] + }, + "symbol": { + "anyOf": [ + { "type": "string" }, - "decimals": { - "type": "number" + { + "type": "null" } - }, - "required": [ - "address", - "symbol", - "decimals" - ], - "additionalProperties": false - }, - "amount0": { - "type": "string" - }, - "amount1": { - "type": "string" - }, - "price0": { - "type": "number" - }, - "price1": { - "type": "number" - }, - "value0": { - "type": "number" - }, - "value1": { - "type": "number" + ] }, - "fee": { - "type": "string" + "uri": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] }, - "protocol": { - "type": "string" + "network": { + "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", + "example": "solana", + "type": "string", + "enum": [ + "solana" + ] } }, "required": [ - "block_num", - "datetime", - "timestamp", - "network_id", - "transaction_id", - "caller", - "sender", - "recipient", - "factory", - "pool", - "token0", - "token1", - "amount0", - "amount1", - "price0", - "price1", - "value0", - "value1", - "fee", - "protocol" + "last_update", + "last_update_block_num", + "last_update_timestamp", + "program_id", + "owner", + "token_account", + "mint", + "amount", + "value", + "decimals", + "name", + "symbol", + "uri", + "network" ], "additionalProperties": false } @@ -9733,32 +10816,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -9771,7 +10839,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -9782,33 +10849,20 @@ "value": { "data": [ { - "block_num": 22589391, - "datetime": "2025-05-29 15:47:47", - "timestamp": 1748533667, - "transaction_id": "0x1ce019b0ad129b8bd21b6c83b75de5e5fd7cd07f2ee739ca3198adcbeb61f5a9", - "caller": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af", - "pool": "0xb98437c7ba28c6590dd4e1cc46aa89eed181f97108e5b6221730d41347bc817f", - "factory": "0x000000000004444c5dc75cb358380d2e3de08a90", - "token0": { - "address": "0x2260fac5e5542a773aa44fbcfedf7c193bc2c599", - "symbol": "WBTC", - "decimals": 8 - }, - "token1": { - "address": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48", - "symbol": "USDC", - "decimals": 6 - }, - "sender": "0x66a9893cc07d91d95644aedd05d03f95e1dba8af", - "recipient": null, - "amount0": "-894320", - "amount1": "957798098", - "value0": -0.0089432, - "value1": 957.798098, - "price0": 107417.48517180652, - "price1": 0.00000930947134352077, - "protocol": "uniswap_v4", - "network_id": "mainnet" + "last_update": "2025-10-09 02:10:01", + "last_update_block_num": 372132067, + "last_update_timestamp": 1759975801, + "program_id": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", + "owner": "GXYBNgyYKbSLr938VJCpmGLCUaAHWsncTi7jDoQSdFR9", + "token_account": "5UZfa66rzeDpD9wKs3Sn3iewmavxYvpAtiF2Lqd2n1wW", + "mint": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn", + "amount": "85605114004", + "value": 85605.114004, + "decimals": 6, + "name": "Pump", + "symbol": "PUMP", + "uri": "https://ipfs.io/ipfs/bafkreibcglldkfdekdkxgumlveoe6qv3pbiceypkwtli33clbzul7leo4m", + "network": "solana" } ] } @@ -10145,148 +11199,79 @@ } } }, - "operationId": "getSwapsEvm", + "operationId": "getV1SvmBalances", "tags": [ - "EVM" + "SVM Tokens" ], "parameters": [ { "in": "query", - "name": "network_id", + "name": "network", "schema": { - "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", - "example": "mainnet", - "default": "mainnet", + "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", + "example": "solana", "type": "string", "enum": [ - "arbitrum-one", - "avalanche", - "base", - "bsc", - "mainnet", - "matic", - "optimism", - "unichain" + "solana" ] }, "required": true }, { "in": "query", - "name": "pool", - "schema": { - "description": "Filter by pool address", - "example": "0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "caller", - "schema": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "sender", - "schema": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "recipient", - "schema": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "protocol", + "name": "owner", "schema": { - "description": "Protocol name", - "example": "uniswap_v3", - "default": "", "type": "string", - "enum": [ - "", - "uniswap_v2", - "uniswap_v3", - "uniswap_v4" - ] + "description": "Filter by owner address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "GXYBNgyYKbSLr938VJCpmGLCUaAHWsncTi7jDoQSdFR9" }, - "required": false - }, - { - "in": "query", - "name": "startTime", - "schema": { - "default": 1735689600, - "description": "UNIX timestamp in seconds.", - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 - }, - "required": false + "required": true }, { "in": "query", - "name": "endTime", + "name": "token_account", "schema": { - "default": 9999999999, - "description": "UNIX timestamp in seconds.", - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 + "type": "string", + "description": "Filter by token account address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "5UZfa66rzeDpD9wKs3Sn3iewmavxYvpAtiF2Lqd2n1wW", + "default": "" }, "required": false }, { "in": "query", - "name": "orderBy", + "name": "mint", "schema": { - "description": "The field by which to order the results.", - "default": "timestamp", "type": "string", - "enum": [ - "timestamp" - ] + "description": "Filter by mint address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn", + "default": "" }, "required": false }, { "in": "query", - "name": "orderDirection", + "name": "program_id", "schema": { - "description": "The order in which to return the results: Ascending (asc) or Descending (desc).", - "default": "desc", + "description": "Filter by SPL token program ID", + "example": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", + "default": "", "type": "string", "enum": [ - "asc", - "desc" + "11111111111111111111111111111111", + "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", + "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA" ] }, "required": false }, { "in": "query", - "name": "transaction_id", + "name": "include_null_balances", "schema": { - "description": "Filter by transaction", - "default": "", - "type": "string" + "description": "Include zero/null balances in results", + "default": false, + "type": "boolean" }, "required": false }, @@ -10294,7 +11279,7 @@ "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -10306,7 +11291,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -10315,8 +11300,8 @@ "required": false } ], - "summary": "Swap Events", - "description": "Returns DEX swap transactions from Uniswap protocols with token amounts and prices.", + "summary": "Token Balances", + "description": "Returns SPL token balances for Solana token owners with mint and program data.", "security": [ { "bearerAuth": [] @@ -10324,144 +11309,58 @@ ] } }, - "/swaps/svm": { + "/v1/svm/dexes": { "get": { "responses": { "200": { "description": "Successful Response", "content": { "application/json": { - "schema": { - "type": "object", - "properties": { - "data": { - "type": "array", - "items": { - "type": "object", - "properties": { - "block_num": { - "type": "number" - }, - "datetime": { - "type": "string", - "format": "date-time", - "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" - }, - "timestamp": { - "type": "number" - }, - "transaction_index": { - "type": "number" - }, - "instruction_index": { - "type": "number" - }, - "signature": { - "type": "string" - }, - "program_id": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "program_name": { - "type": "string" - }, - "user": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "amm": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "amm_name": { - "type": "string" - }, - "amm_pool": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "input_mint": { - "type": "object", - "properties": { - "address": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "symbol": { - "type": "string" - }, - "decimals": { - "type": "number" - } - }, - "required": [ - "address", - "symbol", - "decimals" - ], - "additionalProperties": false - }, - "input_amount": { - "type": "number" - }, - "output_mint": { - "type": "object", - "properties": { - "address": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "symbol": { - "type": "string" - }, - "decimals": { - "type": "number" - } - }, - "required": [ - "address", - "symbol", - "decimals" - ], - "additionalProperties": false - }, - "output_amount": { - "type": "number" - }, - "network_id": { - "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", - "example": "solana", - "default": "solana", + "schema": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "program_id": { + "description": "Filter by program ID", + "example": "JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4", "type": "string", "enum": [ - "solana" + "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8", + "6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P", + "pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA", + "JUP4Fb2cqiRUcaTHdrPC8h2gNsA2ETXiPDD33WcGuJB", + "JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4" ] + }, + "program_name": { + "type": "string" + }, + "amm": { + "type": "string", + "description": "Filter by AMM address", + "example": "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8" + }, + "amm_name": { + "type": "string" + }, + "is_aggregator": { + "type": "boolean" + }, + "total_transactions": { + "type": "number" } }, "required": [ - "block_num", - "datetime", - "timestamp", - "transaction_index", - "instruction_index", - "signature", "program_id", "program_name", - "user", "amm", "amm_name", - "input_mint", - "input_amount", - "output_mint", - "output_amount", - "network_id" + "is_aggregator", + "total_transactions" ], "additionalProperties": false } @@ -10493,32 +11392,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -10531,7 +11415,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -10542,21 +11425,12 @@ "value": { "data": [ { - "block_num": 352243599, - "datetime": "2025-07-09 22:24:36", - "timestamp": 1752099876, - "signature": "oWHA7wPQwpZhr9RJSbTNxsnPkBo1wnd68Zt2fJZPyK3cf1vYVzQiC9Et2mRNvh1t9Zt5dtmoEeSErSCqmMQ58Ls\u0000", - "program_id": "pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA", - "program_name": "Pump.fun AMM", - "amm": "pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA", - "amm_name": "Pump.fun AMM", - "amm_pool": "AmmpSnW5xVeKHTAU9fMjyKEMPgrzmUj3ah5vgvHhAB5J", - "user": "AEWxmZPEdHkCjJXVT9MreY7fCvzbpEK3wCVouCoEnmvE", - "input_mint": "9BB6NFEcjBCtnNLFko2FqVQBq8HHM13kCyYcdQbgpump", - "input_amount": 3653743, - "output_mint": "So11111111111111111111111111111111111111112", - "output_amount": 25548025, - "network_id": "solana" + "program_id": "JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4", + "program_name": "Jupiter Aggregator v6", + "amm": "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8", + "amm_name": "Raydium Liquidity Pool V4", + "is_aggregator": true, + "total_transactions": 1008573050 } ] } @@ -10893,18 +11767,17 @@ } } }, - "operationId": "getSwapsSvm", + "operationId": "getV1SvmDexes", "tags": [ - "SVM" + "SVM DEXs" ], "parameters": [ { "in": "query", - "name": "network_id", + "name": "network", "schema": { "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", "example": "solana", - "default": "solana", "type": "string", "enum": [ "solana" @@ -10912,133 +11785,24 @@ }, "required": true }, - { - "in": "query", - "name": "program_id", - "schema": { - "description": "Filter by program ID", - "example": "pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA", - "default": "", - "type": "string", - "enum": [ - "", - "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8", - "6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P", - "pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA", - "JUP4Fb2cqiRUcaTHdrPC8h2gNsA2ETXiPDD33WcGuJB", - "JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4" - ] - }, - "required": false - }, { "in": "query", "name": "amm", "schema": { - "description": "Filter by amm address", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "amm_pool", - "schema": { - "description": "Filter by amm pool address", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "user", - "schema": { - "description": "Filter by user address", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "input_mint", - "schema": { - "description": "Filter by mint address", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "output_mint", - "schema": { - "description": "Filter by mint address", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "startTime", - "schema": { - "default": 1735689600, - "description": "UNIX timestamp in seconds.", - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 - }, - "required": false - }, - { - "in": "query", - "name": "endTime", - "schema": { - "default": 9999999999, - "description": "UNIX timestamp in seconds.", - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 - }, - "required": false - }, - { - "in": "query", - "name": "orderBy", - "schema": { - "description": "The field by which to order the results.", - "default": "timestamp", - "type": "string", - "enum": [ - "timestamp" - ] - }, - "required": false - }, - { - "in": "query", - "name": "orderDirection", - "schema": { - "description": "The order in which to return the results: Ascending (asc) or Descending (desc).", - "default": "desc", "type": "string", - "enum": [ - "asc", - "desc" - ] + "description": "Filter by AMM address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8", + "default": "" }, "required": false }, { "in": "query", - "name": "signature", + "name": "program_id", "schema": { - "description": "Filter by transaction signature", - "default": "", - "type": "string" + "description": "Filter by program ID
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4", + "default": "" }, "required": false }, @@ -11046,7 +11810,7 @@ "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -11058,7 +11822,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -11067,8 +11831,8 @@ "required": false } ], - "summary": "Swaps Events", - "description": "Returns AMM swap events from Solana DEXs with input/output tokens and amounts.", + "summary": "Supported DEXs", + "description": "Returns supported Solana DEXs.", "security": [ { "bearerAuth": [] @@ -11076,7 +11840,7 @@ ] } }, - "/pools/evm": { + "/v1/svm/owner": { "get": { "responses": { "200": { @@ -11091,105 +11855,47 @@ "items": { "type": "object", "properties": { - "block_num": { - "type": "number" - }, - "datetime": { + "last_update": { "type": "string", "format": "date-time", "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" }, - "transaction_id": { - "type": "string" - }, - "factory": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "pool": { - "description": "Filter by pool", - "default": "", - "type": "string" + "last_update_block_num": { + "type": "number" }, - "token0": { - "type": "object", - "properties": { - "address": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "symbol": { - "type": "string" - }, - "decimals": { - "type": "number" - } - }, - "required": [ - "address", - "symbol", - "decimals" - ], - "additionalProperties": false + "last_update_timestamp": { + "type": "number" }, - "token1": { - "type": "object", - "properties": { - "address": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "symbol": { - "type": "string" - }, - "decimals": { - "type": "number" - } - }, - "required": [ - "address", - "symbol", - "decimals" - ], - "additionalProperties": false + "account": { + "type": "string", + "description": "Filter by token account address", + "example": "5UZfa66rzeDpD9wKs3Sn3iewmavxYvpAtiF2Lqd2n1wW" }, - "fee": { - "type": "number" + "owner": { + "type": "string", + "description": "Filter by owner address", + "example": "GXYBNgyYKbSLr938VJCpmGLCUaAHWsncTi7jDoQSdFR9" }, - "protocol": { - "type": "string" + "is_closed": { + "type": "boolean" }, - "network_id": { - "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", - "example": "mainnet", - "default": "mainnet", + "network": { + "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", + "example": "solana", "type": "string", "enum": [ - "arbitrum-one", - "avalanche", - "base", - "bsc", - "mainnet", - "matic", - "optimism", - "unichain" + "solana" ] } }, "required": [ - "block_num", - "datetime", - "transaction_id", - "factory", - "pool", - "token0", - "token1", - "fee", - "protocol", - "network_id" + "last_update", + "last_update_block_num", + "last_update_timestamp", + "account", + "owner", + "is_closed", + "network" ], "additionalProperties": false } @@ -11221,32 +11927,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -11259,7 +11950,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -11270,24 +11960,13 @@ "value": { "data": [ { - "block_num": 23039540, - "datetime": "2025-07-31 14:00:11", - "transaction_id": "0xd9a2023a8cb1e49639bdab160dc5e706200b10b3bde91709fa41ab7ef44af58f", - "factory": "0x000000000004444c5dc75cb358380d2e3de08a90", - "pool": "0x3bdd63a1dcf34df8f6a568092646c6d49e482ecf3b824c06b352b7e37f96c3b8", - "token0": { - "address": "0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0", - "symbol": "wstETH", - "decimals": 18 - }, - "token1": { - "address": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "symbol": "WETH", - "decimals": 18 - }, - "fee": 50, - "protocol": "uniswap_v4", - "network_id": "mainnet" + "last_update": "2025-07-14 17:17:19", + "last_update_block_num": 353288878, + "last_update_timestamp": 1752513439, + "account": "5UZfa66rzeDpD9wKs3Sn3iewmavxYvpAtiF2Lqd2n1wW", + "owner": "GXYBNgyYKbSLr938VJCpmGLCUaAHWsncTi7jDoQSdFR9", + "is_closed": false, + "network": "solana" } ] } @@ -11624,86 +12303,39 @@ } } }, - "operationId": "getPoolsEvm", + "operationId": "getV1SvmOwner", "tags": [ - "EVM" + "SVM Tokens" ], "parameters": [ { "in": "query", - "name": "network_id", + "name": "network", "schema": { - "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", - "example": "mainnet", - "default": "mainnet", + "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", + "example": "solana", "type": "string", "enum": [ - "arbitrum-one", - "avalanche", - "base", - "bsc", - "mainnet", - "matic", - "optimism", - "unichain" + "solana" ] }, "required": true }, { "in": "query", - "name": "pool", - "schema": { - "description": "Filter by pool address", - "example": "0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "factory", - "schema": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "token", - "schema": { - "description": "Filter by contract address", - "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "default": "", - "type": "string" - }, - "required": false - }, - { - "in": "query", - "name": "protocol", + "name": "account", "schema": { - "description": "Protocol name", - "example": "uniswap_v3", - "default": "", "type": "string", - "enum": [ - "", - "uniswap_v2", - "uniswap_v3", - "uniswap_v4" - ] + "description": "Filter by token account address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "5UZfa66rzeDpD9wKs3Sn3iewmavxYvpAtiF2Lqd2n1wW" }, - "required": false + "required": true }, { "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -11715,7 +12347,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -11724,8 +12356,8 @@ "required": false } ], - "summary": "Liquidity Pools", - "description": "Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions.", + "summary": "Account Owner Lookup", + "description": "Returns owner address of an associated token account (ATA) with closure status.", "security": [ { "bearerAuth": [] @@ -11733,7 +12365,7 @@ ] } }, - "/ohlc/pools/evm/{pool}": { + "/v1/svm/pools/ohlc": { "get": { "responses": { "200": { @@ -11753,8 +12385,45 @@ "format": "date-time", "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" }, - "ticker": { - "type": "string" + "amm": { + "type": "string", + "description": "Filter by AMM address", + "example": "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8" + }, + "amm_pool": { + "type": "string", + "description": "Filter by AMM pool address", + "example": "AmmpSnW5xVeKHTAU9fMjyKEMPgrzmUj3ah5vgvHhAB5J" + }, + "token0": { + "type": "string", + "description": "Filter by mint address", + "example": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn" + }, + "token0_decimals": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, + "token1": { + "type": "string", + "description": "Filter by mint address", + "example": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn" + }, + "token1_decimals": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] }, "open": { "type": "number" @@ -11780,7 +12449,12 @@ }, "required": [ "datetime", - "ticker", + "amm", + "amm_pool", + "token0", + "token0_decimals", + "token1", + "token1_decimals", "open", "high", "low", @@ -11819,32 +12493,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -11857,7 +12516,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -11868,14 +12526,20 @@ "value": { "data": [ { - "datetime": "2025-05-29 15:00:00", - "ticker": "WETHUSDC", - "open": 2674.206768283323, - "high": 2674.206768283323, - "low": 2648.1288363948797, - "close": 2648.1288363948797, - "volume": 5062048.294222999, - "transactions": 169 + "datetime": "2025-10-16 00:00:00", + "amm": "pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA", + "amm_pool": "AmmpSnW5xVeKHTAU9fMjyKEMPgrzmUj3ah5vgvHhAB5J", + "token0": "9BB6NFEcjBCtnNLFko2FqVQBq8HHM13kCyYcdQbgpump", + "token0_decimals": 6, + "token1": "So11111111111111111111111111111111111111112", + "token1_decimals": 9, + "open": 0.0020385820805914096, + "high": 0.002037622484039942, + "low": 0.002029088299722426, + "close": 0.0020285665581652053, + "volume": 0.14567917800000002, + "uaw": 8, + "transactions": 8 } ] } @@ -12212,40 +12876,31 @@ } } }, - "operationId": "getOhlcPoolsEvmByPool", + "operationId": "getV1SvmPoolsOhlc", "tags": [ - "EVM" + "SVM DEXs" ], "parameters": [ { - "in": "path", - "name": "pool", + "in": "query", + "name": "network", "schema": { - "description": "Filter by pool address", - "example": "0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640", - "default": "", - "type": "string" + "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", + "example": "solana", + "type": "string", + "enum": [ + "solana" + ] }, "required": true }, { "in": "query", - "name": "network_id", + "name": "amm_pool", "schema": { - "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", - "example": "mainnet", - "default": "mainnet", "type": "string", - "enum": [ - "arbitrum-one", - "avalanche", - "base", - "bsc", - "mainnet", - "matic", - "optimism", - "unichain" - ] + "description": "Filter by AMM pool address", + "example": "AmmpSnW5xVeKHTAU9fMjyKEMPgrzmUj3ah5vgvHhAB5J" }, "required": true }, @@ -12253,31 +12908,35 @@ "in": "query", "name": "interval", "schema": { + "type": "string", + "enum": [ + "1h", + "4h", + "1d", + "1w" + ], + "default": "1d", "description": "The interval for which to aggregate price data (hourly, 4-hours, daily or weekly)." }, "required": false }, { "in": "query", - "name": "startTime", + "name": "start_time", "schema": { - "default": 1735689600, - "description": "UNIX timestamp in seconds.", - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": "2025-01-01" }, "required": false }, { "in": "query", - "name": "endTime", + "name": "end_time", "schema": { - "default": 9999999999, - "description": "UNIX timestamp in seconds.", - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": 9999999999 }, "required": false }, @@ -12285,7 +12944,7 @@ "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -12297,7 +12956,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -12307,7 +12966,7 @@ } ], "summary": "Pool OHLCV Data", - "description": "Returns candlestick price data for liquidity pools across time intervals.", + "description": "Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools.", "security": [ { "bearerAuth": [] @@ -12315,7 +12974,7 @@ ] } }, - "/ohlc/pools/svm/{pool}": { + "/v1/svm/pools": { "get": { "responses": { "200": { @@ -12330,46 +12989,66 @@ "items": { "type": "object", "properties": { - "datetime": { + "program_id": { + "description": "Filter by program ID", + "example": "JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4", "type": "string", - "format": "date-time", - "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" + "enum": [ + "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8", + "6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P", + "pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA", + "JUP4Fb2cqiRUcaTHdrPC8h2gNsA2ETXiPDD33WcGuJB", + "JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4" + ] }, - "ticker": { + "program_name": { "type": "string" }, - "open": { - "type": "number" - }, - "high": { - "type": "number" + "amm": { + "type": "string", + "description": "Filter by AMM address", + "example": "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8" }, - "low": { - "type": "number" + "amm_name": { + "type": "string" }, - "close": { - "type": "number" + "amm_pool": { + "type": "string", + "description": "Filter by AMM pool address", + "example": "AmmpSnW5xVeKHTAU9fMjyKEMPgrzmUj3ah5vgvHhAB5J" }, - "volume": { - "type": "number" + "input_mint": { + "type": "string", + "description": "Filter by mint address", + "example": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn" }, - "uaw": { - "type": "number" + "output_mint": { + "type": "string", + "description": "Filter by mint address", + "example": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn" }, "transactions": { "type": "number" + }, + "network": { + "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", + "example": "solana", + "type": "string", + "enum": [ + "solana" + ] } }, "required": [ - "datetime", - "ticker", - "open", - "high", - "low", - "close", - "volume", - "uaw", - "transactions" + "program_id", + "program_name", + "amm", + "amm_name", + "amm_pool", + "input_mint", + "output_mint", + "transactions", + "network" ], "additionalProperties": false } @@ -12401,32 +13080,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -12439,7 +13103,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -12450,20 +13113,15 @@ "value": { "data": [ { - "datetime": "2025-09-15 00:00:00", - "amm": "pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA", - "pool": "AmmpSnW5xVeKHTAU9fMjyKEMPgrzmUj3ah5vgvHhAB5J", - "token0": "9BB6NFEcjBCtnNLFko2FqVQBq8HHM13kCyYcdQbgpump", - "token0_decimals": 6, - "token1": "So11111111111111111111111111111111111111112", - "token1_decimals": 9, - "open": 0.003648785031942177, - "high": 0.0036724218787403977, - "low": 0.0034598947533987442, - "close": 0.0035191405556241413, - "volume": 3.521022449, - "uaw": 76, - "transactions": 159 + "program_id": "JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4", + "program_name": "Jupiter Aggregator v6", + "amm": "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8", + "amm_name": "Raydium Liquidity Pool V4", + "amm_pool": "", + "input_mint": "So11111111111111111111111111111111111111112", + "output_mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", + "transactions": 6583671, + "network": "solana" } ] } @@ -12800,29 +13458,17 @@ } } }, - "operationId": "getOhlcPoolsSvmByPool", + "operationId": "getV1SvmPools", "tags": [ - "SVM" + "SVM DEXs" ], "parameters": [ - { - "in": "path", - "name": "pool", - "schema": { - "description": "Filter by amm pool address", - "example": "58oQChx4yWmvKdwLLZzBi4ChoCc2fqCUWBkwMihLYQo2", - "default": "", - "type": "string" - }, - "required": true - }, { "in": "query", - "name": "network_id", + "name": "network", "schema": { "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", "example": "solana", - "default": "solana", "type": "string", "enum": [ "solana" @@ -12832,33 +13478,55 @@ }, { "in": "query", - "name": "interval", + "name": "amm", "schema": { - "description": "The interval for which to aggregate price data (hourly, 4-hours, daily or weekly)." + "type": "string", + "description": "Filter by AMM address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8", + "default": "" }, "required": false }, { "in": "query", - "name": "startTime", + "name": "amm_pool", "schema": { - "default": 1735689600, - "description": "UNIX timestamp in seconds.", - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 + "type": "string", + "description": "Filter by AMM pool address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "", + "default": "" }, "required": false }, { "in": "query", - "name": "endTime", + "name": "input_mint", "schema": { - "default": 9999999999, - "description": "UNIX timestamp in seconds.", - "type": "integer", - "minimum": -9007199254740991, - "maximum": 9007199254740991 + "type": "string", + "description": "Filter by mint address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "So11111111111111111111111111111111111111112", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "output_mint", + "schema": { + "type": "string", + "description": "Filter by mint address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "program_id", + "schema": { + "description": "Filter by program ID
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4", + "default": "" }, "required": false }, @@ -12866,7 +13534,7 @@ "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -12878,7 +13546,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -12887,8 +13555,8 @@ "required": false } ], - "summary": "Pool OHLCV Data", - "description": "Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools.", + "summary": "Liquidity Pools", + "description": "Returns AMM pool information from Solana DEX protocols with transaction counts.", "security": [ { "bearerAuth": [] @@ -12896,7 +13564,7 @@ ] } }, - "/ohlc/prices/evm/{contract}": { + "/v1/svm/swaps": { "get": { "responses": { "200": { @@ -12911,46 +13579,104 @@ "items": { "type": "object", "properties": { + "block_num": { + "type": "number" + }, "datetime": { "type": "string", "format": "date-time", "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" }, - "ticker": { - "type": "string" - }, - "open": { + "timestamp": { "type": "number" }, - "high": { - "type": "number" + "signature": { + "type": "string", + "description": "Filter by transaction signature", + "example": "5pdoVcSiSBr3LMAijdRYKrL5RoLFjLgHxHbZ34dUBVubnsQt3q1v48LuPazebsSiBVuSbSTyJdzf3G9jqqn8o6jA" }, - "low": { + "transaction_index": { "type": "number" }, - "close": { + "instruction_index": { "type": "number" }, - "volume": { - "type": "number" + "program_id": { + "description": "Filter by program ID", + "example": "JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4", + "type": "string", + "enum": [ + "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8", + "6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P", + "pAMMBay6oceH9fJKBRHGP5D4bD4sWpmSwMn52FMfXEA", + "JUP4Fb2cqiRUcaTHdrPC8h2gNsA2ETXiPDD33WcGuJB", + "JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4" + ] }, - "uaw": { + "program_name": { + "type": "string" + }, + "user": { + "type": "string", + "description": "Filter by address", + "example": "So11111111111111111111111111111111111111112" + }, + "amm": { + "type": "string", + "description": "Filter by AMM address", + "example": "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8" + }, + "amm_name": { + "type": "string" + }, + "amm_pool": { + "type": "string", + "description": "Filter by AMM pool address", + "example": "AmmpSnW5xVeKHTAU9fMjyKEMPgrzmUj3ah5vgvHhAB5J" + }, + "input_mint": { + "type": "string", + "description": "Filter by mint address", + "example": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn" + }, + "input_amount": { "type": "number" }, - "transactions": { + "output_mint": { + "type": "string", + "description": "Filter by mint address", + "example": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn" + }, + "output_amount": { "type": "number" + }, + "network": { + "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", + "example": "solana", + "type": "string", + "enum": [ + "solana" + ] } }, "required": [ + "block_num", "datetime", - "ticker", - "open", - "high", - "low", - "close", - "volume", - "uaw", - "transactions" + "timestamp", + "signature", + "transaction_index", + "instruction_index", + "program_id", + "program_name", + "user", + "amm", + "amm_name", + "amm_pool", + "input_mint", + "input_amount", + "output_mint", + "output_amount", + "network" ], "additionalProperties": false } @@ -12982,32 +13708,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -13020,7 +13731,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -13031,15 +13741,22 @@ "value": { "data": [ { - "datetime": "2025-05-29 15:00:00", - "ticker": "WETHUSD", - "open": 2669.130852861705, - "high": 2669.130852861705, - "low": 2669.130852861705, - "close": 2669.130852861705, - "volume": 184897.1695477702, - "uaw": 31, - "transactions": 35 + "block_num": 373763118, + "datetime": "2025-10-16 14:03:09", + "timestamp": 1760623389, + "signature": "5pdoVcSiSBr3LMAijdRYKrL5RoLFjLgHxHbZ34dUBVubnsQt3q1v48LuPazebsSiBVuSbSTyJdzf3G9jqqn8o6jA", + "transaction_index": 8, + "instruction_index": 1, + "program_id": "JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4", + "program_name": "Jupiter Aggregator v6", + "amm": "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8", + "amm_pool": "", + "user": "5MGfsuYNRhbuN6x1M6WaR3721dSDGtXpcsHxNsgkjsXC", + "input_mint": "HmrzeZapM1EygFc4tBJUXwWTzv5Ahy8axLSAadBx51sw", + "input_amount": 49572355581648, + "output_mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", + "output_amount": 936671, + "network": "solana" } ] } @@ -13376,71 +14093,140 @@ } } }, - "operationId": "getOhlcPricesEvmByContract", + "operationId": "getV1SvmSwaps", "tags": [ - "EVM" + "SVM DEXs" ], "parameters": [ { - "in": "path", - "name": "contract", + "in": "query", + "name": "network", "schema": { - "description": "Filter by contract address", - "example": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2", - "default": "", - "type": "string" + "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", + "example": "solana", + "type": "string", + "enum": [ + "solana" + ] }, "required": true }, { "in": "query", - "name": "network_id", + "name": "signature", "schema": { - "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", - "example": "mainnet", - "default": "mainnet", "type": "string", - "enum": [ - "arbitrum-one", - "avalanche", - "base", - "bsc", - "mainnet", - "matic", - "optimism", - "unichain" - ] + "description": "Filter by transaction signature
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "5pdoVcSiSBr3LMAijdRYKrL5RoLFjLgHxHbZ34dUBVubnsQt3q1v48LuPazebsSiBVuSbSTyJdzf3G9jqqn8o6jA", + "default": "" }, - "required": true + "required": false }, { "in": "query", - "name": "interval", + "name": "amm", "schema": { - "description": "The interval for which to aggregate price data (hourly, 4-hours, daily or weekly)." + "type": "string", + "description": "Filter by AMM address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "675kPX9MHTjS2zt1qfr1NYHuzeLXfQM9H24wFSUt1Mp8", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "amm_pool", + "schema": { + "type": "string", + "description": "Filter by AMM pool address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "user", + "schema": { + "type": "string", + "description": "Filter by address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "5MGfsuYNRhbuN6x1M6WaR3721dSDGtXpcsHxNsgkjsXC", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "input_mint", + "schema": { + "type": "string", + "description": "Filter by mint address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "HmrzeZapM1EygFc4tBJUXwWTzv5Ahy8axLSAadBx51sw", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "output_mint", + "schema": { + "type": "string", + "description": "Filter by mint address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "program_id", + "schema": { + "description": "Filter by program ID
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "JUP6LkbZbjS1jKKwapdHNy74zcZ3tLUZoi5QNyVTaV4", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "start_time", + "schema": { + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": "2025-01-01" + }, + "required": false + }, + { + "in": "query", + "name": "end_time", + "schema": { + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": 9999999999 }, "required": false }, { "in": "query", - "name": "startTime", + "name": "start_block", "schema": { - "default": 1735689600, - "description": "UNIX timestamp in seconds.", + "description": "Filter by block number", + "default": 0, "type": "integer", - "minimum": -9007199254740991, + "minimum": 0, "maximum": 9007199254740991 }, "required": false }, { "in": "query", - "name": "endTime", + "name": "end_block", "schema": { + "description": "Filter by block number", "default": 9999999999, - "description": "UNIX timestamp in seconds.", "type": "integer", - "minimum": -9007199254740991, + "minimum": 0, "maximum": 9007199254740991 }, "required": false @@ -13449,7 +14235,7 @@ "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -13461,7 +14247,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -13470,8 +14256,8 @@ "required": false } ], - "summary": "Token OHLCV Data", - "description": "Returns candlestick price data for tokens aggregated across the top 20 trading pairs.", + "summary": "Swap Events", + "description": "Returns AMM swap events from Solana DEXs with input/output tokens and amounts.", "security": [ { "bearerAuth": [] @@ -13479,7 +14265,7 @@ ] } }, - "/owner/svm/{account}": { + "/v1/svm/tokens": { "get": { "responses": { "200": { @@ -13495,7 +14281,9 @@ "type": "object", "properties": { "last_update": { - "type": "string" + "type": "string", + "format": "date-time", + "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" }, "last_update_block_num": { "type": "number" @@ -13503,31 +14291,76 @@ "last_update_timestamp": { "type": "number" }, - "owner": { - "description": "Filter by address", - "default": "", - "type": "string" - }, - "is_closed": { - "type": "boolean" - }, - "network_id": { - "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", - "example": "solana", - "default": "solana", + "program_id": { + "description": "Filter by SPL token program ID", + "example": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", "type": "string", "enum": [ - "solana" + "11111111111111111111111111111111", + "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", + "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA" + ] + }, + "mint": { + "type": "string", + "description": "Filter by mint address", + "example": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn" + }, + "decimals": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "symbol": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "uri": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } ] + }, + "network": { + "type": "string" } }, "required": [ "last_update", "last_update_block_num", "last_update_timestamp", - "owner", - "is_closed", - "network_id" + "program_id", + "mint", + "decimals", + "name", + "symbol", + "uri", + "network" ], "additionalProperties": false } @@ -13545,27 +14378,17 @@ "type": "number" } }, - "additionalProperties": false - }, - "pagination": { - "type": "object", - "properties": { - "previous_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "current_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "next_page": { + "additionalProperties": false + }, + "pagination": { + "type": "object", + "properties": { + "previous_page": { "type": "integer", "minimum": 1, "maximum": 9007199254740991 }, - "total_pages": { + "current_page": { "type": "integer", "minimum": 1, "maximum": 9007199254740991 @@ -13573,18 +14396,13 @@ }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -13597,7 +14415,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -13608,12 +14425,16 @@ "value": { "data": [ { - "last_update": "2025-07-14 17:17:19", - "last_update_block_num": 353288878, - "last_update_timestamp": 1752513439, - "owner": "GXYBNgyYKbSLr938VJCpmGLCUaAHWsncTi7jDoQSdFR9", - "is_closed": false, - "network_id": "solana" + "last_update": "2025-10-16 10:34:46", + "last_update_block_num": 373731565, + "last_update_timestamp": 1760610886, + "program_id": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", + "mint": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn", + "decimals": 6, + "name": "Pump", + "symbol": "PUMP", + "uri": "https://ipfs.io/ipfs/bafkreibcglldkfdekdkxgumlveoe6qv3pbiceypkwtli33clbzul7leo4m", + "network": "solana" } ] } @@ -13950,28 +14771,17 @@ } } }, - "operationId": "getOwnerSvmByAccount", + "operationId": "getV1SvmTokens", "tags": [ - "SVM" + "SVM Tokens" ], "parameters": [ - { - "in": "path", - "name": "account", - "schema": { - "description": "Filter by token account address", - "default": "", - "type": "string" - }, - "required": true - }, { "in": "query", - "name": "network_id", + "name": "network", "schema": { "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", "example": "solana", - "default": "solana", "type": "string", "enum": [ "solana" @@ -13979,11 +14789,21 @@ }, "required": true }, + { + "in": "query", + "name": "mint", + "schema": { + "type": "string", + "description": "Filter by mint address", + "example": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn" + }, + "required": true + }, { "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -13995,7 +14815,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -14004,8 +14824,8 @@ "required": false } ], - "summary": "Account Owner Lookup", - "description": "Returns owner address of an associated token account (ATA) with closure status.", + "summary": "Token Metadata", + "description": "Provides SVM token contract metadata.", "security": [ { "bearerAuth": [] @@ -14013,7 +14833,7 @@ ] } }, - "/historical/balances/evm/{address}": { + "/v1/svm/transfers": { "get": { "responses": { "200": { @@ -14028,63 +14848,130 @@ "items": { "type": "object", "properties": { + "block_num": { + "type": "number" + }, "datetime": { "type": "string", "format": "date-time", "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$" }, - "contract": { - "type": "string" - }, - "name": { - "type": "string" + "timestamp": { + "type": "number" }, - "symbol": { + "signature": { "type": "string" }, - "decimals": { + "transaction_index": { "type": "number" }, - "open": { + "instruction_index": { "type": "number" }, - "high": { - "type": "number" + "program_id": { + "description": "Filter by SPL token program ID", + "example": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", + "type": "string", + "enum": [ + "11111111111111111111111111111111", + "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", + "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA" + ] }, - "low": { - "type": "number" + "mint": { + "type": "string", + "description": "Filter by mint address", + "example": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn" }, - "close": { + "authority": { + "type": "string", + "description": "Filter by authority address", + "example": "GXYBNgyYKbSLr938VJCpmGLCUaAHWsncTi7jDoQSdFR9" + }, + "source": { + "type": "string", + "description": "Filter by address", + "example": "So11111111111111111111111111111111111111112" + }, + "destination": { + "type": "string", + "description": "Filter by address", + "example": "So11111111111111111111111111111111111111112" + }, + "amount": { + "type": "string" + }, + "value": { "type": "number" }, - "network_id": { - "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", - "example": "mainnet", - "default": "mainnet", + "decimals": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, + "name": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "symbol": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "uri": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "network": { + "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", + "example": "solana", "type": "string", "enum": [ - "arbitrum-one", - "avalanche", - "base", - "bsc", - "mainnet", - "matic", - "optimism", - "unichain" + "solana" ] } }, "required": [ + "block_num", "datetime", - "contract", + "timestamp", + "signature", + "transaction_index", + "instruction_index", + "program_id", + "mint", + "authority", + "source", + "destination", + "amount", + "value", + "decimals", "name", "symbol", - "decimals", - "open", - "high", - "low", - "close", - "network_id" + "uri", + "network" ], "additionalProperties": false } @@ -14116,32 +15003,17 @@ "type": "integer", "minimum": 1, "maximum": 9007199254740991 - }, - "next_page": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 - }, - "total_pages": { - "type": "integer", - "minimum": 1, - "maximum": 9007199254740991 } }, "required": [ "previous_page", - "current_page", - "next_page", - "total_pages" + "current_page" ], "additionalProperties": false }, "results": { "type": "number" }, - "total_results": { - "type": "number" - }, "request_time": { "type": "string" }, @@ -14154,7 +15026,6 @@ "statistics", "pagination", "results", - "total_results", "request_time", "duration_ms" ], @@ -14165,16 +15036,24 @@ "value": { "data": [ { - "datetime": "2025-09-11 00:00:00", - "contract": "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee", - "name": "Ethereum", - "symbol": "ETH", - "decimals": 18, - "open": 2370757.8393482137, - "high": 2430544.3576619215, - "low": 2370757.8393482137, - "close": 2420472.251720042, - "network_id": "mainnet" + "block_num": 372132067, + "datetime": "2025-10-09 02:10:01", + "timestamp": 1759975801, + "signature": "2Y3YJMa7Gx96ZprnWxSQHiahGdbiNFwF1DdT4ZWGf8cwJnv4fRTcFg9Z5THuAHhja66fi6Jd8fLngtH1d8qSNj3H", + "transaction_index": 65, + "instruction_index": 0, + "program_id": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", + "mint": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn", + "authority": "GXYBNgyYKbSLr938VJCpmGLCUaAHWsncTi7jDoQSdFR9", + "source": "5UZfa66rzeDpD9wKs3Sn3iewmavxYvpAtiF2Lqd2n1wW", + "destination": "64nnJ2CBUZ3VasttjVhxbQXqzbjAxnj4VT4vBrrveNV", + "amount": "835996345", + "value": 835.996345, + "decimals": 6, + "name": "Pump", + "symbol": "PUMP", + "uri": "https://ipfs.io/ipfs/bafkreibcglldkfdekdkxgumlveoe6qv3pbiceypkwtli33clbzul7leo4m", + "network": "solana" } ] } @@ -14511,85 +15390,135 @@ } } }, - "operationId": "getHistoricalBalancesEvmByAddress", + "operationId": "getV1SvmTransfers", "tags": [ - "EVM" + "SVM Tokens" ], "parameters": [ { - "in": "path", - "name": "address", + "in": "query", + "name": "network", "schema": { - "description": "Filter by address", - "example": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045", - "default": "", - "type": "string" + "description": "The Graph Network ID for SVM networks https://thegraph.com/networks", + "example": "solana", + "type": "string", + "enum": [ + "solana" + ] }, "required": true }, { "in": "query", - "name": "network_id", + "name": "signature", "schema": { - "description": "The Graph Network ID for EVM networks https://thegraph.com/networks", - "example": "mainnet", - "default": "mainnet", + "type": "string", + "description": "Filter by transaction signature
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "2Y3YJMa7Gx96ZprnWxSQHiahGdbiNFwF1DdT4ZWGf8cwJnv4fRTcFg9Z5THuAHhja66fi6Jd8fLngtH1d8qSNj3H", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "source", + "schema": { + "type": "string", + "description": "Filter by token account address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "5UZfa66rzeDpD9wKs3Sn3iewmavxYvpAtiF2Lqd2n1wW", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "destination", + "schema": { + "type": "string", + "description": "Filter by token account address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "64nnJ2CBUZ3VasttjVhxbQXqzbjAxnj4VT4vBrrveNV", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "authority", + "schema": { + "type": "string", + "description": "Filter by authority address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "GXYBNgyYKbSLr938VJCpmGLCUaAHWsncTi7jDoQSdFR9", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "mint", + "schema": { + "type": "string", + "description": "Filter by mint address
Single value or array of values* (separate multiple values with `,`)
*Plan restricted.", + "example": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn", + "default": "" + }, + "required": false + }, + { + "in": "query", + "name": "program_id", + "schema": { + "description": "Filter by SPL token program ID", + "example": "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", + "default": "", "type": "string", "enum": [ - "arbitrum-one", - "avalanche", - "base", - "bsc", - "mainnet", - "matic", - "optimism", - "unichain" + "11111111111111111111111111111111", + "TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb", + "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA" ] }, - "required": true + "required": false }, { "in": "query", - "name": "interval", + "name": "start_time", "schema": { - "description": "The interval for which to aggregate price data (hourly, 4-hours, daily or weekly)." + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": "2025-01-01" }, "required": false }, { "in": "query", - "name": "contracts", + "name": "end_time", "schema": { - "default": [], - "type": "array", - "items": { - "description": "Filter by address", - "default": "", - "type": "string" - } + "type": "string", + "description": "UNIX timestamp in seconds or date string (e.g. \"2025-01-01T00:00:00Z\", \"2025-01-01\", ...).", + "default": 9999999999 }, "required": false }, { "in": "query", - "name": "startTime", + "name": "start_block", "schema": { - "default": 1735689600, - "description": "UNIX timestamp in seconds.", + "description": "Filter by block number", + "default": 0, "type": "integer", - "minimum": -9007199254740991, + "minimum": 0, "maximum": 9007199254740991 }, "required": false }, { "in": "query", - "name": "endTime", + "name": "end_block", "schema": { + "description": "Filter by block number", "default": 9999999999, - "description": "UNIX timestamp in seconds.", "type": "integer", - "minimum": -9007199254740991, + "minimum": 0, "maximum": 9007199254740991 }, "required": false @@ -14598,7 +15527,7 @@ "in": "query", "name": "limit", "schema": { - "description": "The maximum number of items returned in a single request.", + "description": "Number of items* returned in a single request.
*Plan restricted.", "default": 10, "type": "integer", "minimum": 1, @@ -14610,7 +15539,7 @@ "in": "query", "name": "page", "schema": { - "description": "The page number of the results to return.", + "description": "Page number to fetch.
Empty `data` array signifies end of results.", "default": 1, "type": "integer", "minimum": 1, @@ -14619,11 +15548,8 @@ "required": false } ], - "summary": "Historical Balances", - "description": "Returns wallet token balance changes over time in OHLC format.", - "x-tagGroups": [ - "Historical" - ], + "summary": "Token Transfers", + "description": "Returns SPL token transfers with program, authority, and account information.", "security": [ { "bearerAuth": [] @@ -14631,7 +15557,7 @@ ] } }, - "/health": { + "/v1/health": { "get": { "responses": { "200": { @@ -15138,7 +16064,7 @@ } } }, - "operationId": "getHealth", + "operationId": "getV1Health", "tags": [ "Monitoring" ], @@ -15147,12 +16073,8 @@ "in": "query", "name": "skip_endpoints", "schema": { - "default": "true", - "type": "string", - "enum": [ - "true", - "false" - ] + "default": true, + "type": "boolean" } } ], @@ -15160,7 +16082,7 @@ "description": "Returns API operational status and dependency health with optional endpoint testing.\n\nUse `skip_endpoints` to bypass endpoint responses checks." } }, - "/version": { + "/v1/version": { "get": { "responses": { "200": { @@ -15190,9 +16112,9 @@ "examples": { "example": { "value": { - "version": "2.7.2", - "commit": "f549dc9", - "date": "2025-10-02", + "version": "3.1.0", + "commit": "a61c748", + "date": "2025-10-16", "repo": "pinax-network/token-api" } } @@ -15528,7 +16450,7 @@ } } }, - "operationId": "getVersion", + "operationId": "getV1Version", "tags": [ "Monitoring" ], @@ -15537,7 +16459,7 @@ "description": "Returns API version, build date, and commit information." } }, - "/networks": { + "/v1/networks": { "get": { "responses": { "200": { @@ -15971,7 +16893,7 @@ } } }, - "operationId": "getNetworks", + "operationId": "getV1Networks", "tags": [ "Monitoring" ], diff --git a/website/src/pages/ar/token-api/_meta.js b/website/src/pages/ar/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/ar/token-api/_meta.js +++ b/website/src/pages/ar/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/ar/token-api/endpoint-pricing.mdx b/website/src/pages/ar/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/ar/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/ar/token-api/evm-dexs/_meta.js b/website/src/pages/ar/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/ar/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/ar/token-api/evm-dexs/dexes.mdx b/website/src/pages/ar/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/ar/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/ar/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/ar/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/ar/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/ar/token-api/evm-dexs/pools.mdx b/website/src/pages/ar/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/ar/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/ar/token-api/evm-dexs/swaps.mdx b/website/src/pages/ar/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/ar/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/ar/token-api/evm-nfts/_meta.js b/website/src/pages/ar/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/ar/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/ar/token-api/evm-nfts/collections.mdx b/website/src/pages/ar/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/ar/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/ar/token-api/evm-nfts/holders.mdx b/website/src/pages/ar/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/ar/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/ar/token-api/evm-nfts/items.mdx b/website/src/pages/ar/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/ar/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/ar/token-api/evm-nfts/ownerships.mdx b/website/src/pages/ar/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/ar/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/ar/token-api/evm-nfts/sales.mdx b/website/src/pages/ar/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/ar/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/ar/token-api/evm-nfts/transfers.mdx b/website/src/pages/ar/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/ar/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/ar/token-api/evm-tokens/_meta.js b/website/src/pages/ar/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/ar/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/ar/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/ar/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/ar/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/ar/token-api/evm-tokens/balances-native.mdx b/website/src/pages/ar/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/ar/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/ar/token-api/evm-tokens/balances.mdx b/website/src/pages/ar/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/ar/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/ar/token-api/evm-tokens/holders.mdx b/website/src/pages/ar/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/ar/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/ar/token-api/evm-tokens/tokens.mdx b/website/src/pages/ar/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/ar/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/ar/token-api/evm-tokens/transfers.mdx b/website/src/pages/ar/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/ar/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/ar/token-api/evm/_meta.js b/website/src/pages/ar/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/ar/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/ar/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/ar/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/ar/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/ar/token-api/evm/get-dexes-evm.mdx b/website/src/pages/ar/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/ar/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/ar/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/ar/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/ar/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/ar/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/ar/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/ar/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/ar/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/ar/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/ar/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/ar/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/ar/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/ar/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/ar/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/ar/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/ar/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/ar/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/ar/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/ar/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/ar/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/ar/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/ar/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/ar/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/ar/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/ar/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/ar/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/ar/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/ar/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ar/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/ar/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/ar/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ar/token-api/evm/get-pools-evm.mdx b/website/src/pages/ar/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/ar/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/ar/token-api/evm/get-swaps-evm.mdx b/website/src/pages/ar/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/ar/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/ar/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/ar/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/ar/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/ar/token-api/evm/get-transfers-evm.mdx b/website/src/pages/ar/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/ar/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/ar/token-api/monitoring/_meta.js b/website/src/pages/ar/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/ar/token-api/monitoring/_meta.js +++ b/website/src/pages/ar/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/ar/token-api/monitoring/get-health.mdx b/website/src/pages/ar/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/ar/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/ar/token-api/monitoring/get-networks.mdx b/website/src/pages/ar/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/ar/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/ar/token-api/monitoring/get-version.mdx b/website/src/pages/ar/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/ar/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/ar/token-api/monitoring/health.mdx b/website/src/pages/ar/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/ar/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/ar/token-api/monitoring/networks.mdx b/website/src/pages/ar/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/ar/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/ar/token-api/monitoring/version.mdx b/website/src/pages/ar/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/ar/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/ar/token-api/svm-dexs/_meta.js b/website/src/pages/ar/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/ar/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/ar/token-api/svm-dexs/dexes.mdx b/website/src/pages/ar/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/ar/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/ar/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/ar/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/ar/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/ar/token-api/svm-dexs/pools.mdx b/website/src/pages/ar/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/ar/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/ar/token-api/svm-dexs/swaps.mdx b/website/src/pages/ar/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/ar/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/ar/token-api/svm-tokens/_meta.js b/website/src/pages/ar/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/ar/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/ar/token-api/svm-tokens/balances-native.mdx b/website/src/pages/ar/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/ar/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/ar/token-api/svm-tokens/balances.mdx b/website/src/pages/ar/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/ar/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/ar/token-api/svm-tokens/owner.mdx b/website/src/pages/ar/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/ar/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/ar/token-api/svm-tokens/tokens.mdx b/website/src/pages/ar/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/ar/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/ar/token-api/svm-tokens/transfers.mdx b/website/src/pages/ar/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/ar/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/ar/token-api/svm/_meta.js b/website/src/pages/ar/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/ar/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/ar/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/ar/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/ar/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/ar/token-api/svm/get-balances-svm.mdx b/website/src/pages/ar/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/ar/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/ar/token-api/svm/get-dexes-svm.mdx b/website/src/pages/ar/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/ar/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/ar/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/ar/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/ar/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ar/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/ar/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/ar/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/ar/token-api/svm/get-swaps-svm.mdx b/website/src/pages/ar/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/ar/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/ar/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/ar/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/ar/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/ar/token-api/svm/get-transfers-svm.mdx b/website/src/pages/ar/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/ar/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/ar/token-api/upgrade-to-v1.mdx b/website/src/pages/ar/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/ar/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/cs/token-api/_meta.js b/website/src/pages/cs/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/cs/token-api/_meta.js +++ b/website/src/pages/cs/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/cs/token-api/endpoint-pricing.mdx b/website/src/pages/cs/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/cs/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/cs/token-api/evm-dexs/_meta.js b/website/src/pages/cs/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/cs/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/cs/token-api/evm-dexs/dexes.mdx b/website/src/pages/cs/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/cs/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/cs/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/cs/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/cs/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/cs/token-api/evm-dexs/pools.mdx b/website/src/pages/cs/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/cs/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/cs/token-api/evm-dexs/swaps.mdx b/website/src/pages/cs/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/cs/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/cs/token-api/evm-nfts/_meta.js b/website/src/pages/cs/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/cs/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/cs/token-api/evm-nfts/collections.mdx b/website/src/pages/cs/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/cs/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/cs/token-api/evm-nfts/holders.mdx b/website/src/pages/cs/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/cs/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/cs/token-api/evm-nfts/items.mdx b/website/src/pages/cs/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/cs/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/cs/token-api/evm-nfts/ownerships.mdx b/website/src/pages/cs/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/cs/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/cs/token-api/evm-nfts/sales.mdx b/website/src/pages/cs/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/cs/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/cs/token-api/evm-nfts/transfers.mdx b/website/src/pages/cs/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/cs/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/cs/token-api/evm-tokens/_meta.js b/website/src/pages/cs/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/cs/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/cs/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/cs/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/cs/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/cs/token-api/evm-tokens/balances-native.mdx b/website/src/pages/cs/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/cs/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/cs/token-api/evm-tokens/balances.mdx b/website/src/pages/cs/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/cs/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/cs/token-api/evm-tokens/holders.mdx b/website/src/pages/cs/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/cs/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/cs/token-api/evm-tokens/tokens.mdx b/website/src/pages/cs/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/cs/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/cs/token-api/evm-tokens/transfers.mdx b/website/src/pages/cs/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/cs/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/cs/token-api/evm/_meta.js b/website/src/pages/cs/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/cs/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/cs/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/cs/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/cs/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/cs/token-api/evm/get-dexes-evm.mdx b/website/src/pages/cs/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/cs/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/cs/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/cs/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/cs/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/cs/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/cs/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/cs/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/cs/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/cs/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/cs/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/cs/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/cs/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/cs/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/cs/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/cs/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/cs/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/cs/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/cs/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/cs/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/cs/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/cs/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/cs/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/cs/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/cs/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/cs/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/cs/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/cs/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/cs/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/cs/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/cs/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/cs/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/cs/token-api/evm/get-pools-evm.mdx b/website/src/pages/cs/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/cs/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/cs/token-api/evm/get-swaps-evm.mdx b/website/src/pages/cs/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/cs/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/cs/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/cs/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/cs/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/cs/token-api/evm/get-transfers-evm.mdx b/website/src/pages/cs/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/cs/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/cs/token-api/monitoring/_meta.js b/website/src/pages/cs/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/cs/token-api/monitoring/_meta.js +++ b/website/src/pages/cs/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/cs/token-api/monitoring/get-health.mdx b/website/src/pages/cs/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/cs/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/cs/token-api/monitoring/get-networks.mdx b/website/src/pages/cs/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/cs/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/cs/token-api/monitoring/get-version.mdx b/website/src/pages/cs/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/cs/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/cs/token-api/monitoring/health.mdx b/website/src/pages/cs/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/cs/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/cs/token-api/monitoring/networks.mdx b/website/src/pages/cs/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/cs/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/cs/token-api/monitoring/version.mdx b/website/src/pages/cs/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/cs/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/cs/token-api/svm-dexs/_meta.js b/website/src/pages/cs/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/cs/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/cs/token-api/svm-dexs/dexes.mdx b/website/src/pages/cs/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/cs/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/cs/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/cs/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/cs/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/cs/token-api/svm-dexs/pools.mdx b/website/src/pages/cs/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/cs/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/cs/token-api/svm-dexs/swaps.mdx b/website/src/pages/cs/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/cs/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/cs/token-api/svm-tokens/_meta.js b/website/src/pages/cs/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/cs/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/cs/token-api/svm-tokens/balances-native.mdx b/website/src/pages/cs/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/cs/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/cs/token-api/svm-tokens/balances.mdx b/website/src/pages/cs/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/cs/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/cs/token-api/svm-tokens/owner.mdx b/website/src/pages/cs/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/cs/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/cs/token-api/svm-tokens/tokens.mdx b/website/src/pages/cs/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/cs/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/cs/token-api/svm-tokens/transfers.mdx b/website/src/pages/cs/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/cs/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/cs/token-api/svm/_meta.js b/website/src/pages/cs/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/cs/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/cs/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/cs/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/cs/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/cs/token-api/svm/get-balances-svm.mdx b/website/src/pages/cs/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/cs/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/cs/token-api/svm/get-dexes-svm.mdx b/website/src/pages/cs/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/cs/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/cs/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/cs/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/cs/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/cs/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/cs/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/cs/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/cs/token-api/svm/get-swaps-svm.mdx b/website/src/pages/cs/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/cs/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/cs/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/cs/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/cs/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/cs/token-api/svm/get-transfers-svm.mdx b/website/src/pages/cs/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/cs/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/cs/token-api/upgrade-to-v1.mdx b/website/src/pages/cs/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/cs/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/de/token-api/_meta.js b/website/src/pages/de/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/de/token-api/_meta.js +++ b/website/src/pages/de/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/de/token-api/endpoint-pricing.mdx b/website/src/pages/de/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/de/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/de/token-api/evm-dexs/_meta.js b/website/src/pages/de/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/de/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/de/token-api/evm-dexs/dexes.mdx b/website/src/pages/de/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/de/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/de/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/de/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/de/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/de/token-api/evm-dexs/pools.mdx b/website/src/pages/de/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/de/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/de/token-api/evm-dexs/swaps.mdx b/website/src/pages/de/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/de/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/de/token-api/evm-nfts/_meta.js b/website/src/pages/de/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/de/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/de/token-api/evm-nfts/collections.mdx b/website/src/pages/de/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/de/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/de/token-api/evm-nfts/holders.mdx b/website/src/pages/de/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/de/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/de/token-api/evm-nfts/items.mdx b/website/src/pages/de/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/de/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/de/token-api/evm-nfts/ownerships.mdx b/website/src/pages/de/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/de/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/de/token-api/evm-nfts/sales.mdx b/website/src/pages/de/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/de/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/de/token-api/evm-nfts/transfers.mdx b/website/src/pages/de/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/de/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/de/token-api/evm-tokens/_meta.js b/website/src/pages/de/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/de/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/de/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/de/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/de/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/de/token-api/evm-tokens/balances-native.mdx b/website/src/pages/de/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/de/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/de/token-api/evm-tokens/balances.mdx b/website/src/pages/de/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/de/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/de/token-api/evm-tokens/holders.mdx b/website/src/pages/de/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/de/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/de/token-api/evm-tokens/tokens.mdx b/website/src/pages/de/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/de/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/de/token-api/evm-tokens/transfers.mdx b/website/src/pages/de/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/de/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/de/token-api/evm/_meta.js b/website/src/pages/de/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/de/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/de/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/de/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/de/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/de/token-api/evm/get-dexes-evm.mdx b/website/src/pages/de/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/de/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/de/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/de/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/de/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/de/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/de/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/de/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/de/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/de/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/de/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/de/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/de/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/de/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/de/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/de/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/de/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/de/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/de/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/de/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/de/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/de/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/de/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/de/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/de/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/de/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/de/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/de/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/de/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/de/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/de/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/de/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/de/token-api/evm/get-pools-evm.mdx b/website/src/pages/de/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/de/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/de/token-api/evm/get-swaps-evm.mdx b/website/src/pages/de/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/de/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/de/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/de/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/de/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/de/token-api/evm/get-transfers-evm.mdx b/website/src/pages/de/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/de/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/de/token-api/monitoring/_meta.js b/website/src/pages/de/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/de/token-api/monitoring/_meta.js +++ b/website/src/pages/de/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/de/token-api/monitoring/get-health.mdx b/website/src/pages/de/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/de/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/de/token-api/monitoring/get-networks.mdx b/website/src/pages/de/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/de/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/de/token-api/monitoring/get-version.mdx b/website/src/pages/de/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/de/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/de/token-api/monitoring/health.mdx b/website/src/pages/de/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/de/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/de/token-api/monitoring/networks.mdx b/website/src/pages/de/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/de/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/de/token-api/monitoring/version.mdx b/website/src/pages/de/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/de/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/de/token-api/svm-dexs/_meta.js b/website/src/pages/de/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/de/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/de/token-api/svm-dexs/dexes.mdx b/website/src/pages/de/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/de/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/de/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/de/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/de/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/de/token-api/svm-dexs/pools.mdx b/website/src/pages/de/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/de/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/de/token-api/svm-dexs/swaps.mdx b/website/src/pages/de/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/de/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/de/token-api/svm-tokens/_meta.js b/website/src/pages/de/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/de/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/de/token-api/svm-tokens/balances-native.mdx b/website/src/pages/de/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/de/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/de/token-api/svm-tokens/balances.mdx b/website/src/pages/de/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/de/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/de/token-api/svm-tokens/owner.mdx b/website/src/pages/de/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/de/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/de/token-api/svm-tokens/tokens.mdx b/website/src/pages/de/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/de/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/de/token-api/svm-tokens/transfers.mdx b/website/src/pages/de/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/de/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/de/token-api/svm/_meta.js b/website/src/pages/de/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/de/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/de/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/de/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/de/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/de/token-api/svm/get-balances-svm.mdx b/website/src/pages/de/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/de/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/de/token-api/svm/get-dexes-svm.mdx b/website/src/pages/de/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/de/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/de/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/de/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/de/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/de/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/de/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/de/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/de/token-api/svm/get-swaps-svm.mdx b/website/src/pages/de/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/de/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/de/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/de/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/de/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/de/token-api/svm/get-transfers-svm.mdx b/website/src/pages/de/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/de/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/de/token-api/upgrade-to-v1.mdx b/website/src/pages/de/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/de/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/en/subgraphs/developing/creating/graph-ts/CHANGELOG.md b/website/src/pages/en/subgraphs/developing/creating/graph-ts/CHANGELOG.md index edc1d88dc6cf..71dc16517e2a 100644 --- a/website/src/pages/en/subgraphs/developing/creating/graph-ts/CHANGELOG.md +++ b/website/src/pages/en/subgraphs/developing/creating/graph-ts/CHANGELOG.md @@ -1,5 +1,11 @@ # @graphprotocol/graph-ts +## 0.38.2 + +### Patch Changes + +- [#2008](https://github.com/graphprotocol/graph-tooling/pull/2008) [`b9b911e`](https://github.com/graphprotocol/graph-tooling/commit/b9b911e67a5fd404696c1e3d2e68539b1f478724) Thanks [@PaulRBerg](https://github.com/PaulRBerg)! - fixed log namespace reference + ## 0.38.1 ### Patch Changes diff --git a/website/src/pages/en/token-api/_meta-titles.json b/website/src/pages/en/token-api/_meta-titles.json index d58b9770c3e5..f5614ed9b4d9 100644 --- a/website/src/pages/en/token-api/_meta-titles.json +++ b/website/src/pages/en/token-api/_meta-titles.json @@ -1,6 +1,8 @@ { - "evm": "EVM Endpoints", - "svm": "SVM Endpoints", - "monitoring": "Monitoring Endpoints", - "faq": "FAQ" + "evm-tokens": "EVM Token Endpoints", + "evm-dexs": "EVM DEX Endpoints", + "evm-nfts": "EVM NFT Endpoints", + "svm-tokens": "SVM Token Endpoints", + "svm-dexs": "SVM DEX Endpoints", + "monitoring": "Monitoring Endpoints" } diff --git a/website/src/pages/en/token-api/_meta.js b/website/src/pages/en/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/en/token-api/_meta.js +++ b/website/src/pages/en/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/en/token-api/endpoint-pricing.mdx b/website/src/pages/en/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/en/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/en/token-api/evm-dexs/_meta.js b/website/src/pages/en/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/en/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/en/token-api/evm-dexs/dexes.mdx b/website/src/pages/en/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/en/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/en/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/en/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/en/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/en/token-api/evm-dexs/pools.mdx b/website/src/pages/en/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/en/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/en/token-api/evm-dexs/swaps.mdx b/website/src/pages/en/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/en/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/en/token-api/evm-nfts/_meta.js b/website/src/pages/en/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/en/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/en/token-api/evm-nfts/collections.mdx b/website/src/pages/en/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/en/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/en/token-api/evm-nfts/holders.mdx b/website/src/pages/en/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/en/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/en/token-api/evm-nfts/items.mdx b/website/src/pages/en/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/en/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/en/token-api/evm-nfts/ownerships.mdx b/website/src/pages/en/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/en/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/en/token-api/evm-nfts/sales.mdx b/website/src/pages/en/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/en/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/en/token-api/evm-nfts/transfers.mdx b/website/src/pages/en/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/en/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/en/token-api/evm-tokens/_meta.js b/website/src/pages/en/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/en/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/en/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/en/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/en/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/en/token-api/evm-tokens/balances-native.mdx b/website/src/pages/en/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/en/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/en/token-api/evm-tokens/balances.mdx b/website/src/pages/en/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/en/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/en/token-api/evm-tokens/holders.mdx b/website/src/pages/en/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/en/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/en/token-api/evm-tokens/tokens.mdx b/website/src/pages/en/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/en/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/en/token-api/evm-tokens/transfers.mdx b/website/src/pages/en/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/en/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/en/token-api/evm/_meta.js b/website/src/pages/en/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/en/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/en/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/en/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 68385ffc4272..000000000000 --- a/website/src/pages/en/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances by Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -Provides latest ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/en/token-api/evm/get-dexes-evm.mdx b/website/src/pages/en/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/en/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/en/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/en/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/en/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/en/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/en/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 01a52bbf7ad2..000000000000 --- a/website/src/pages/en/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -Provides ERC-20 token holder balances by contract address. diff --git a/website/src/pages/en/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/en/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/en/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/en/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/en/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/en/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/en/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/en/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/en/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/en/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/en/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/en/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/en/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/en/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/en/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/en/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/en/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/en/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/en/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/en/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/en/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/en/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/en/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index ff8f590b0433..000000000000 --- a/website/src/pages/en/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Contract -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/en/token-api/evm/get-pools-evm.mdx b/website/src/pages/en/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/en/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/en/token-api/evm/get-swaps-evm.mdx b/website/src/pages/en/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/en/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/en/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/en/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index aed206c15272..000000000000 --- a/website/src/pages/en/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -Provides ERC-20 token contract metadata. diff --git a/website/src/pages/en/token-api/evm/get-transfers-evm.mdx b/website/src/pages/en/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/en/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/en/token-api/faq.mdx b/website/src/pages/en/token-api/faq.mdx index cbd4771fdc42..fe0fab25df7d 100644 --- a/website/src/pages/en/token-api/faq.mdx +++ b/website/src/pages/en/token-api/faq.mdx @@ -1,5 +1,6 @@ --- title: Token API FAQ +sidebarTitle: FAQ --- Get fast answers to easily integrate and scale with The Graph's high-performance Token API. @@ -32,7 +33,7 @@ Token prices are available with the Open-High-Low-Close (OHLC) endpoints. For a ### Does the Token API support historical token data? -The Token API supports historical token balances with the `/historical/balances/evm/{address}` endpoint. You can query historical price data by pool at `/ohlc/pools/evm/{pool}` and by contract at `/ohlc/prices/evm/{contract}`. Historical balances have a similar OHLC format, but return token balances instead of prices. +The Token API supports historical token balances with the `/v1/evm/balances/historical` endpoint. You can query historical price data by pool at `/v1/evm/pools/ohlc`. Historical balances have a similar OHLC format, but return token balances instead of prices. ### What exchanges does the Token API use for token prices? @@ -167,7 +168,7 @@ SVM addresses are base58-encoded strings that are typically 32-44 characters lon ### Do I need special headers besides authentication? -While recommended, `Accept: application/json` isn't strictly required as the API returns JSON by default. The critical header is `Authorization: Bearer `. Ensure you make a GET request to the correct URL without trailing slashes or path typos (e.g., use `/balances/evm/{address}` not `/balance`). +While recommended, `Accept: application/json` isn't strictly required as the API returns JSON by default. The critical header is `Authorization: Bearer `. Ensure you make a GET request to the correct URL without trailing slashes or path typos (e.g., use `/v1/evm/balances` not `/v1/evm/balance`). ### Is the Token API part of The Graph's GraphQL service? diff --git a/website/src/pages/en/token-api/monitoring/_meta.js b/website/src/pages/en/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/en/token-api/monitoring/_meta.js +++ b/website/src/pages/en/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/en/token-api/monitoring/get-health.mdx b/website/src/pages/en/token-api/monitoring/get-health.mdx deleted file mode 100644 index 09f7b954dbf3..000000000000 --- a/website/src/pages/en/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Health Status -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- - -Get health status of the API diff --git a/website/src/pages/en/token-api/monitoring/get-networks.mdx b/website/src/pages/en/token-api/monitoring/get-networks.mdx deleted file mode 100644 index f4b65492ed15..000000000000 --- a/website/src/pages/en/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported Networks -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- - -Get supported networks of the API diff --git a/website/src/pages/en/token-api/monitoring/get-version.mdx b/website/src/pages/en/token-api/monitoring/get-version.mdx deleted file mode 100644 index fa0040807854..000000000000 --- a/website/src/pages/en/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Version -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- - -Get the version of the API diff --git a/website/src/pages/en/token-api/monitoring/health.mdx b/website/src/pages/en/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/en/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/en/token-api/monitoring/networks.mdx b/website/src/pages/en/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/en/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/en/token-api/monitoring/version.mdx b/website/src/pages/en/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/en/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/en/token-api/svm-dexs/_meta.js b/website/src/pages/en/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/en/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/en/token-api/svm-dexs/dexes.mdx b/website/src/pages/en/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/en/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/en/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/en/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/en/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/en/token-api/svm-dexs/pools.mdx b/website/src/pages/en/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/en/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/en/token-api/svm-dexs/swaps.mdx b/website/src/pages/en/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/en/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/en/token-api/svm-tokens/_meta.js b/website/src/pages/en/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/en/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/en/token-api/svm-tokens/balances-native.mdx b/website/src/pages/en/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/en/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/en/token-api/svm-tokens/balances.mdx b/website/src/pages/en/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/en/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/en/token-api/svm-tokens/owner.mdx b/website/src/pages/en/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/en/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/en/token-api/svm-tokens/tokens.mdx b/website/src/pages/en/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/en/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/en/token-api/svm-tokens/transfers.mdx b/website/src/pages/en/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/en/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/en/token-api/svm/_meta.js b/website/src/pages/en/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/en/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/en/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/en/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/en/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/en/token-api/svm/get-balances-svm.mdx b/website/src/pages/en/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/en/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/en/token-api/svm/get-dexes-svm.mdx b/website/src/pages/en/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/en/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/en/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/en/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/en/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/en/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/en/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/en/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/en/token-api/svm/get-swaps-svm.mdx b/website/src/pages/en/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/en/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/en/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/en/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/en/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/en/token-api/svm/get-transfers-svm.mdx b/website/src/pages/en/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/en/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/en/token-api/upgrade-to-v1.mdx b/website/src/pages/en/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..c4ec087be6a6 --- /dev/null +++ b/website/src/pages/en/token-api/upgrade-to-v1.mdx @@ -0,0 +1,346 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. API Versioning + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. Route Structure Reorganization + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. Path Parameters → Query Parameters + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. Standardized Parameter Naming + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. Batched Parameters + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +## Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +## Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +## Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. New Parameters + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. Pagination Changes + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. Removed Parameters + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +### 9. Cached Queries + +Queries are now cached on the ClickHouse side for better performance. + +You can specifically request to not use the cache by setting the `Cache-Control` header to `no-cache`. + +#### Example + +**Cache** + +```console +$ curl -s 'https://token-api.thegraph.com/v1/...' | jq .statistics +{ + "bytes_read": 221, + "rows_read": 1, + "elapsed": 0.002212065 +} +``` + +**No cache** + +```console +$ curl -s 'http://localhost:8000/v1/...' --header 'Cache-Control: no-cache' | jq .statistics +{ + "bytes_read": 14621174348, + "rows_read": 223244390, + "elapsed": 0.971064066 +} +``` + +## 📚 Example Migrations + +### Example 1: Get Token Balances + +**Before:** + +```bash +GET /token/balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### Example 2: Get NFT Items + +**Before:** + +```bash +GET /nft/items/evm/contract/0xbd3531da5cf5857e7cfaa92426877b022e612cf8/token_id/5712?network_id=mainnet +``` + +**After:** + +```bash +GET /v1/evm/nft/items?network=mainnet&contract=0xbd3531da5cf5857e7cfaa92426877b022e612cf8&token_id=5712 +``` + +### Example 3: Get Token Transfers with Time Filter + +**Before:** + +```bash +GET /token/transfers/evm?network_id=mainnet&from=0xd8da6bf26964af9d7eed9e03e53415d37aa96045&startTime=1735689600&endTime=1767225600 +``` + +**After:** + +```bash +GET /v1/evm/transfers?network=mainnet&from_address=0xd8da6bf26964af9d7eed9e03e53415d37aa96045&start_time=1735689600&end_time=1767225600 +``` + +### Example 4: Get NFT Transfer Activities + +**Before:** + +```bash +GET /nft/activities/evm?network_id=mainnet&contract=0xbd3531da5cf5857e7cfaa92426877b022e612cf8&anyAddress=0xd8da6bf26964af9d7eed9e03e53415d37aa96045 +``` + +**After:** + +```bash +GET /v1/evm/nft/transfers?network=mainnet&contract=0xbd3531da5cf5857e7cfaa92426877b022e612cf8&address=0xd8da6bf26964af9d7eed9e03e53415d37aa96045 +``` + +### Example 5: Get Pool OHLC Data + +**Before:** + +```bash +GET /token/ohlc/pools/evm/0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640?network_id=mainnet&interval=1h&startTime=1735689600 +``` + +**After:** + +```bash +GET /v1/evm/pools/ohlc?network=mainnet&pool=0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640&interval=1h&start_time=1735689600 +``` + +### Example 6: Batched Query (New Feature) + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +Query transfers from multiple addresses: + +```bash +GET /v1/evm/transfers?network=mainnet&from_address=0xabc...,0xdef...,0x123...&start_time=1735689600 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/es/token-api/_meta.js b/website/src/pages/es/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/es/token-api/_meta.js +++ b/website/src/pages/es/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/es/token-api/endpoint-pricing.mdx b/website/src/pages/es/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/es/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/es/token-api/evm-dexs/_meta.js b/website/src/pages/es/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/es/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/es/token-api/evm-dexs/dexes.mdx b/website/src/pages/es/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/es/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/es/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/es/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/es/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/es/token-api/evm-dexs/pools.mdx b/website/src/pages/es/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/es/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/es/token-api/evm-dexs/swaps.mdx b/website/src/pages/es/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/es/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/es/token-api/evm-nfts/_meta.js b/website/src/pages/es/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/es/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/es/token-api/evm-nfts/collections.mdx b/website/src/pages/es/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/es/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/es/token-api/evm-nfts/holders.mdx b/website/src/pages/es/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/es/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/es/token-api/evm-nfts/items.mdx b/website/src/pages/es/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/es/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/es/token-api/evm-nfts/ownerships.mdx b/website/src/pages/es/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/es/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/es/token-api/evm-nfts/sales.mdx b/website/src/pages/es/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/es/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/es/token-api/evm-nfts/transfers.mdx b/website/src/pages/es/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/es/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/es/token-api/evm-tokens/_meta.js b/website/src/pages/es/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/es/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/es/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/es/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/es/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/es/token-api/evm-tokens/balances-native.mdx b/website/src/pages/es/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/es/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/es/token-api/evm-tokens/balances.mdx b/website/src/pages/es/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/es/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/es/token-api/evm-tokens/holders.mdx b/website/src/pages/es/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/es/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/es/token-api/evm-tokens/tokens.mdx b/website/src/pages/es/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/es/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/es/token-api/evm-tokens/transfers.mdx b/website/src/pages/es/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/es/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/es/token-api/evm/_meta.js b/website/src/pages/es/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/es/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/es/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/es/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/es/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/es/token-api/evm/get-dexes-evm.mdx b/website/src/pages/es/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/es/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/es/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/es/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/es/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/es/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/es/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/es/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/es/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/es/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/es/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/es/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/es/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/es/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/es/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/es/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/es/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/es/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/es/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/es/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/es/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/es/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/es/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/es/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/es/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/es/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/es/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/es/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/es/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/es/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/es/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/es/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/es/token-api/evm/get-pools-evm.mdx b/website/src/pages/es/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/es/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/es/token-api/evm/get-swaps-evm.mdx b/website/src/pages/es/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/es/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/es/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/es/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/es/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/es/token-api/evm/get-transfers-evm.mdx b/website/src/pages/es/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/es/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/es/token-api/monitoring/_meta.js b/website/src/pages/es/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/es/token-api/monitoring/_meta.js +++ b/website/src/pages/es/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/es/token-api/monitoring/get-health.mdx b/website/src/pages/es/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/es/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/es/token-api/monitoring/get-networks.mdx b/website/src/pages/es/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/es/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/es/token-api/monitoring/get-version.mdx b/website/src/pages/es/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/es/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/es/token-api/monitoring/health.mdx b/website/src/pages/es/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/es/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/es/token-api/monitoring/networks.mdx b/website/src/pages/es/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/es/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/es/token-api/monitoring/version.mdx b/website/src/pages/es/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/es/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/es/token-api/svm-dexs/_meta.js b/website/src/pages/es/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/es/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/es/token-api/svm-dexs/dexes.mdx b/website/src/pages/es/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/es/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/es/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/es/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/es/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/es/token-api/svm-dexs/pools.mdx b/website/src/pages/es/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/es/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/es/token-api/svm-dexs/swaps.mdx b/website/src/pages/es/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/es/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/es/token-api/svm-tokens/_meta.js b/website/src/pages/es/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/es/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/es/token-api/svm-tokens/balances-native.mdx b/website/src/pages/es/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/es/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/es/token-api/svm-tokens/balances.mdx b/website/src/pages/es/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/es/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/es/token-api/svm-tokens/owner.mdx b/website/src/pages/es/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/es/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/es/token-api/svm-tokens/tokens.mdx b/website/src/pages/es/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/es/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/es/token-api/svm-tokens/transfers.mdx b/website/src/pages/es/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/es/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/es/token-api/svm/_meta.js b/website/src/pages/es/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/es/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/es/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/es/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/es/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/es/token-api/svm/get-balances-svm.mdx b/website/src/pages/es/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/es/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/es/token-api/svm/get-dexes-svm.mdx b/website/src/pages/es/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/es/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/es/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/es/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/es/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/es/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/es/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/es/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/es/token-api/svm/get-swaps-svm.mdx b/website/src/pages/es/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/es/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/es/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/es/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/es/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/es/token-api/svm/get-transfers-svm.mdx b/website/src/pages/es/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/es/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/es/token-api/upgrade-to-v1.mdx b/website/src/pages/es/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/es/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/fr/token-api/_meta.js b/website/src/pages/fr/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/fr/token-api/_meta.js +++ b/website/src/pages/fr/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/fr/token-api/endpoint-pricing.mdx b/website/src/pages/fr/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/fr/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/fr/token-api/evm-dexs/_meta.js b/website/src/pages/fr/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/fr/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/fr/token-api/evm-dexs/dexes.mdx b/website/src/pages/fr/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/fr/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/fr/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/fr/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/fr/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/fr/token-api/evm-dexs/pools.mdx b/website/src/pages/fr/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/fr/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/fr/token-api/evm-dexs/swaps.mdx b/website/src/pages/fr/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/fr/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/fr/token-api/evm-nfts/_meta.js b/website/src/pages/fr/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/fr/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/fr/token-api/evm-nfts/collections.mdx b/website/src/pages/fr/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/fr/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/fr/token-api/evm-nfts/holders.mdx b/website/src/pages/fr/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/fr/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/fr/token-api/evm-nfts/items.mdx b/website/src/pages/fr/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/fr/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/fr/token-api/evm-nfts/ownerships.mdx b/website/src/pages/fr/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/fr/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/fr/token-api/evm-nfts/sales.mdx b/website/src/pages/fr/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/fr/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/fr/token-api/evm-nfts/transfers.mdx b/website/src/pages/fr/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/fr/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/fr/token-api/evm-tokens/_meta.js b/website/src/pages/fr/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/fr/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/fr/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/fr/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/fr/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/fr/token-api/evm-tokens/balances-native.mdx b/website/src/pages/fr/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/fr/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/fr/token-api/evm-tokens/balances.mdx b/website/src/pages/fr/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/fr/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/fr/token-api/evm-tokens/holders.mdx b/website/src/pages/fr/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/fr/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/fr/token-api/evm-tokens/tokens.mdx b/website/src/pages/fr/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/fr/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/fr/token-api/evm-tokens/transfers.mdx b/website/src/pages/fr/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/fr/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/fr/token-api/evm/_meta.js b/website/src/pages/fr/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/fr/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/fr/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/fr/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/fr/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/fr/token-api/evm/get-dexes-evm.mdx b/website/src/pages/fr/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/fr/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/fr/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/fr/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/fr/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/fr/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/fr/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/fr/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/fr/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/fr/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/fr/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/fr/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/fr/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/fr/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/fr/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/fr/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/fr/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/fr/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/fr/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/fr/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/fr/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/fr/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/fr/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/fr/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/fr/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/fr/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/fr/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/fr/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/fr/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/fr/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/fr/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/fr/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/fr/token-api/evm/get-pools-evm.mdx b/website/src/pages/fr/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/fr/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/fr/token-api/evm/get-swaps-evm.mdx b/website/src/pages/fr/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/fr/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/fr/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/fr/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/fr/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/fr/token-api/evm/get-transfers-evm.mdx b/website/src/pages/fr/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/fr/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/fr/token-api/monitoring/_meta.js b/website/src/pages/fr/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/fr/token-api/monitoring/_meta.js +++ b/website/src/pages/fr/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/fr/token-api/monitoring/get-health.mdx b/website/src/pages/fr/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/fr/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/fr/token-api/monitoring/get-networks.mdx b/website/src/pages/fr/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/fr/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/fr/token-api/monitoring/get-version.mdx b/website/src/pages/fr/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/fr/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/fr/token-api/monitoring/health.mdx b/website/src/pages/fr/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/fr/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/fr/token-api/monitoring/networks.mdx b/website/src/pages/fr/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/fr/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/fr/token-api/monitoring/version.mdx b/website/src/pages/fr/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/fr/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/fr/token-api/svm-dexs/_meta.js b/website/src/pages/fr/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/fr/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/fr/token-api/svm-dexs/dexes.mdx b/website/src/pages/fr/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/fr/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/fr/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/fr/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/fr/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/fr/token-api/svm-dexs/pools.mdx b/website/src/pages/fr/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/fr/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/fr/token-api/svm-dexs/swaps.mdx b/website/src/pages/fr/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/fr/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/fr/token-api/svm-tokens/_meta.js b/website/src/pages/fr/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/fr/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/fr/token-api/svm-tokens/balances-native.mdx b/website/src/pages/fr/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/fr/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/fr/token-api/svm-tokens/balances.mdx b/website/src/pages/fr/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/fr/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/fr/token-api/svm-tokens/owner.mdx b/website/src/pages/fr/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/fr/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/fr/token-api/svm-tokens/tokens.mdx b/website/src/pages/fr/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/fr/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/fr/token-api/svm-tokens/transfers.mdx b/website/src/pages/fr/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/fr/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/fr/token-api/svm/_meta.js b/website/src/pages/fr/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/fr/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/fr/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/fr/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/fr/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/fr/token-api/svm/get-balances-svm.mdx b/website/src/pages/fr/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/fr/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/fr/token-api/svm/get-dexes-svm.mdx b/website/src/pages/fr/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/fr/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/fr/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/fr/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/fr/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/fr/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/fr/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/fr/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/fr/token-api/svm/get-swaps-svm.mdx b/website/src/pages/fr/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/fr/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/fr/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/fr/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/fr/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/fr/token-api/svm/get-transfers-svm.mdx b/website/src/pages/fr/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/fr/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/fr/token-api/upgrade-to-v1.mdx b/website/src/pages/fr/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/fr/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/hi/token-api/_meta.js b/website/src/pages/hi/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/hi/token-api/_meta.js +++ b/website/src/pages/hi/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/hi/token-api/endpoint-pricing.mdx b/website/src/pages/hi/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/hi/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/hi/token-api/evm-dexs/_meta.js b/website/src/pages/hi/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/hi/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/hi/token-api/evm-dexs/dexes.mdx b/website/src/pages/hi/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/hi/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/hi/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/hi/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/hi/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/hi/token-api/evm-dexs/pools.mdx b/website/src/pages/hi/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/hi/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/hi/token-api/evm-dexs/swaps.mdx b/website/src/pages/hi/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/hi/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/hi/token-api/evm-nfts/_meta.js b/website/src/pages/hi/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/hi/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/hi/token-api/evm-nfts/collections.mdx b/website/src/pages/hi/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/hi/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/hi/token-api/evm-nfts/holders.mdx b/website/src/pages/hi/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/hi/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/hi/token-api/evm-nfts/items.mdx b/website/src/pages/hi/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/hi/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/hi/token-api/evm-nfts/ownerships.mdx b/website/src/pages/hi/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/hi/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/hi/token-api/evm-nfts/sales.mdx b/website/src/pages/hi/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/hi/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/hi/token-api/evm-nfts/transfers.mdx b/website/src/pages/hi/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/hi/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/hi/token-api/evm-tokens/_meta.js b/website/src/pages/hi/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/hi/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/hi/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/hi/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/hi/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/hi/token-api/evm-tokens/balances-native.mdx b/website/src/pages/hi/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/hi/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/hi/token-api/evm-tokens/balances.mdx b/website/src/pages/hi/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/hi/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/hi/token-api/evm-tokens/holders.mdx b/website/src/pages/hi/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/hi/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/hi/token-api/evm-tokens/tokens.mdx b/website/src/pages/hi/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/hi/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/hi/token-api/evm-tokens/transfers.mdx b/website/src/pages/hi/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/hi/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/hi/token-api/evm/_meta.js b/website/src/pages/hi/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/hi/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/hi/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/hi/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/hi/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/hi/token-api/evm/get-dexes-evm.mdx b/website/src/pages/hi/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/hi/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/hi/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/hi/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/hi/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/hi/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/hi/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/hi/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/hi/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/hi/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/hi/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/hi/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/hi/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/hi/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/hi/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/hi/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/hi/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/hi/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/hi/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/hi/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/hi/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/hi/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/hi/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/hi/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/hi/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/hi/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/hi/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/hi/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/hi/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/hi/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/hi/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/hi/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/hi/token-api/evm/get-pools-evm.mdx b/website/src/pages/hi/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/hi/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/hi/token-api/evm/get-swaps-evm.mdx b/website/src/pages/hi/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/hi/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/hi/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/hi/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/hi/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/hi/token-api/evm/get-transfers-evm.mdx b/website/src/pages/hi/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/hi/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/hi/token-api/monitoring/_meta.js b/website/src/pages/hi/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/hi/token-api/monitoring/_meta.js +++ b/website/src/pages/hi/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/hi/token-api/monitoring/get-health.mdx b/website/src/pages/hi/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/hi/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/hi/token-api/monitoring/get-networks.mdx b/website/src/pages/hi/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/hi/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/hi/token-api/monitoring/get-version.mdx b/website/src/pages/hi/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/hi/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/hi/token-api/monitoring/health.mdx b/website/src/pages/hi/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/hi/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/hi/token-api/monitoring/networks.mdx b/website/src/pages/hi/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/hi/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/hi/token-api/monitoring/version.mdx b/website/src/pages/hi/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/hi/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/hi/token-api/svm-dexs/_meta.js b/website/src/pages/hi/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/hi/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/hi/token-api/svm-dexs/dexes.mdx b/website/src/pages/hi/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/hi/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/hi/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/hi/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/hi/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/hi/token-api/svm-dexs/pools.mdx b/website/src/pages/hi/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/hi/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/hi/token-api/svm-dexs/swaps.mdx b/website/src/pages/hi/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/hi/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/hi/token-api/svm-tokens/_meta.js b/website/src/pages/hi/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/hi/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/hi/token-api/svm-tokens/balances-native.mdx b/website/src/pages/hi/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/hi/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/hi/token-api/svm-tokens/balances.mdx b/website/src/pages/hi/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/hi/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/hi/token-api/svm-tokens/owner.mdx b/website/src/pages/hi/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/hi/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/hi/token-api/svm-tokens/tokens.mdx b/website/src/pages/hi/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/hi/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/hi/token-api/svm-tokens/transfers.mdx b/website/src/pages/hi/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/hi/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/hi/token-api/svm/_meta.js b/website/src/pages/hi/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/hi/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/hi/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/hi/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/hi/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/hi/token-api/svm/get-balances-svm.mdx b/website/src/pages/hi/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/hi/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/hi/token-api/svm/get-dexes-svm.mdx b/website/src/pages/hi/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/hi/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/hi/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/hi/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/hi/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/hi/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/hi/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/hi/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/hi/token-api/svm/get-swaps-svm.mdx b/website/src/pages/hi/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/hi/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/hi/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/hi/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/hi/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/hi/token-api/svm/get-transfers-svm.mdx b/website/src/pages/hi/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/hi/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/hi/token-api/upgrade-to-v1.mdx b/website/src/pages/hi/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/hi/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/it/token-api/_meta.js b/website/src/pages/it/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/it/token-api/_meta.js +++ b/website/src/pages/it/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/it/token-api/endpoint-pricing.mdx b/website/src/pages/it/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/it/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/it/token-api/evm-dexs/_meta.js b/website/src/pages/it/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/it/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/it/token-api/evm-dexs/dexes.mdx b/website/src/pages/it/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/it/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/it/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/it/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/it/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/it/token-api/evm-dexs/pools.mdx b/website/src/pages/it/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/it/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/it/token-api/evm-dexs/swaps.mdx b/website/src/pages/it/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/it/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/it/token-api/evm-nfts/_meta.js b/website/src/pages/it/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/it/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/it/token-api/evm-nfts/collections.mdx b/website/src/pages/it/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/it/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/it/token-api/evm-nfts/holders.mdx b/website/src/pages/it/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/it/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/it/token-api/evm-nfts/items.mdx b/website/src/pages/it/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/it/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/it/token-api/evm-nfts/ownerships.mdx b/website/src/pages/it/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/it/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/it/token-api/evm-nfts/sales.mdx b/website/src/pages/it/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/it/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/it/token-api/evm-nfts/transfers.mdx b/website/src/pages/it/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/it/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/it/token-api/evm-tokens/_meta.js b/website/src/pages/it/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/it/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/it/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/it/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/it/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/it/token-api/evm-tokens/balances-native.mdx b/website/src/pages/it/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/it/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/it/token-api/evm-tokens/balances.mdx b/website/src/pages/it/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/it/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/it/token-api/evm-tokens/holders.mdx b/website/src/pages/it/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/it/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/it/token-api/evm-tokens/tokens.mdx b/website/src/pages/it/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/it/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/it/token-api/evm-tokens/transfers.mdx b/website/src/pages/it/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/it/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/it/token-api/evm/_meta.js b/website/src/pages/it/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/it/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/it/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/it/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/it/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/it/token-api/evm/get-dexes-evm.mdx b/website/src/pages/it/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/it/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/it/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/it/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/it/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/it/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/it/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/it/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/it/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/it/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/it/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/it/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/it/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/it/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/it/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/it/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/it/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/it/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/it/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/it/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/it/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/it/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/it/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/it/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/it/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/it/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/it/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/it/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/it/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/it/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/it/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/it/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/it/token-api/evm/get-pools-evm.mdx b/website/src/pages/it/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/it/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/it/token-api/evm/get-swaps-evm.mdx b/website/src/pages/it/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/it/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/it/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/it/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/it/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/it/token-api/evm/get-transfers-evm.mdx b/website/src/pages/it/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/it/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/it/token-api/monitoring/_meta.js b/website/src/pages/it/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/it/token-api/monitoring/_meta.js +++ b/website/src/pages/it/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/it/token-api/monitoring/get-health.mdx b/website/src/pages/it/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/it/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/it/token-api/monitoring/get-networks.mdx b/website/src/pages/it/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/it/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/it/token-api/monitoring/get-version.mdx b/website/src/pages/it/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/it/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/it/token-api/monitoring/health.mdx b/website/src/pages/it/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/it/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/it/token-api/monitoring/networks.mdx b/website/src/pages/it/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/it/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/it/token-api/monitoring/version.mdx b/website/src/pages/it/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/it/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/it/token-api/svm-dexs/_meta.js b/website/src/pages/it/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/it/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/it/token-api/svm-dexs/dexes.mdx b/website/src/pages/it/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/it/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/it/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/it/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/it/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/it/token-api/svm-dexs/pools.mdx b/website/src/pages/it/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/it/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/it/token-api/svm-dexs/swaps.mdx b/website/src/pages/it/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/it/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/it/token-api/svm-tokens/_meta.js b/website/src/pages/it/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/it/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/it/token-api/svm-tokens/balances-native.mdx b/website/src/pages/it/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/it/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/it/token-api/svm-tokens/balances.mdx b/website/src/pages/it/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/it/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/it/token-api/svm-tokens/owner.mdx b/website/src/pages/it/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/it/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/it/token-api/svm-tokens/tokens.mdx b/website/src/pages/it/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/it/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/it/token-api/svm-tokens/transfers.mdx b/website/src/pages/it/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/it/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/it/token-api/svm/_meta.js b/website/src/pages/it/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/it/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/it/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/it/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/it/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/it/token-api/svm/get-balances-svm.mdx b/website/src/pages/it/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/it/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/it/token-api/svm/get-dexes-svm.mdx b/website/src/pages/it/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/it/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/it/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/it/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/it/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/it/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/it/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/it/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/it/token-api/svm/get-swaps-svm.mdx b/website/src/pages/it/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/it/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/it/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/it/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/it/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/it/token-api/svm/get-transfers-svm.mdx b/website/src/pages/it/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/it/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/it/token-api/upgrade-to-v1.mdx b/website/src/pages/it/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/it/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/ja/token-api/_meta.js b/website/src/pages/ja/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/ja/token-api/_meta.js +++ b/website/src/pages/ja/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/ja/token-api/endpoint-pricing.mdx b/website/src/pages/ja/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/ja/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/ja/token-api/evm-dexs/_meta.js b/website/src/pages/ja/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/ja/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/ja/token-api/evm-dexs/dexes.mdx b/website/src/pages/ja/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/ja/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/ja/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/ja/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/ja/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/ja/token-api/evm-dexs/pools.mdx b/website/src/pages/ja/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/ja/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/ja/token-api/evm-dexs/swaps.mdx b/website/src/pages/ja/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/ja/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/ja/token-api/evm-nfts/_meta.js b/website/src/pages/ja/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/ja/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/ja/token-api/evm-nfts/collections.mdx b/website/src/pages/ja/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/ja/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/ja/token-api/evm-nfts/holders.mdx b/website/src/pages/ja/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/ja/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/ja/token-api/evm-nfts/items.mdx b/website/src/pages/ja/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/ja/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/ja/token-api/evm-nfts/ownerships.mdx b/website/src/pages/ja/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/ja/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/ja/token-api/evm-nfts/sales.mdx b/website/src/pages/ja/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/ja/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/ja/token-api/evm-nfts/transfers.mdx b/website/src/pages/ja/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/ja/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/ja/token-api/evm-tokens/_meta.js b/website/src/pages/ja/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/ja/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/ja/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/ja/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/ja/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/ja/token-api/evm-tokens/balances-native.mdx b/website/src/pages/ja/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/ja/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/ja/token-api/evm-tokens/balances.mdx b/website/src/pages/ja/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/ja/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/ja/token-api/evm-tokens/holders.mdx b/website/src/pages/ja/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/ja/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/ja/token-api/evm-tokens/tokens.mdx b/website/src/pages/ja/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/ja/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/ja/token-api/evm-tokens/transfers.mdx b/website/src/pages/ja/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/ja/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/ja/token-api/evm/_meta.js b/website/src/pages/ja/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/ja/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/ja/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/ja/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/ja/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/ja/token-api/evm/get-dexes-evm.mdx b/website/src/pages/ja/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/ja/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/ja/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/ja/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/ja/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/ja/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/ja/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/ja/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/ja/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/ja/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/ja/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/ja/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/ja/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/ja/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/ja/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/ja/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/ja/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/ja/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/ja/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/ja/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/ja/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/ja/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/ja/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/ja/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/ja/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/ja/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/ja/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/ja/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/ja/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ja/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/ja/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/ja/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ja/token-api/evm/get-pools-evm.mdx b/website/src/pages/ja/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/ja/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/ja/token-api/evm/get-swaps-evm.mdx b/website/src/pages/ja/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/ja/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/ja/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/ja/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/ja/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/ja/token-api/evm/get-transfers-evm.mdx b/website/src/pages/ja/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/ja/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/ja/token-api/monitoring/_meta.js b/website/src/pages/ja/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/ja/token-api/monitoring/_meta.js +++ b/website/src/pages/ja/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/ja/token-api/monitoring/get-health.mdx b/website/src/pages/ja/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/ja/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/ja/token-api/monitoring/get-networks.mdx b/website/src/pages/ja/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/ja/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/ja/token-api/monitoring/get-version.mdx b/website/src/pages/ja/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/ja/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/ja/token-api/monitoring/health.mdx b/website/src/pages/ja/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/ja/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/ja/token-api/monitoring/networks.mdx b/website/src/pages/ja/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/ja/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/ja/token-api/monitoring/version.mdx b/website/src/pages/ja/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/ja/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/ja/token-api/svm-dexs/_meta.js b/website/src/pages/ja/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/ja/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/ja/token-api/svm-dexs/dexes.mdx b/website/src/pages/ja/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/ja/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/ja/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/ja/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/ja/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/ja/token-api/svm-dexs/pools.mdx b/website/src/pages/ja/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/ja/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/ja/token-api/svm-dexs/swaps.mdx b/website/src/pages/ja/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/ja/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/ja/token-api/svm-tokens/_meta.js b/website/src/pages/ja/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/ja/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/ja/token-api/svm-tokens/balances-native.mdx b/website/src/pages/ja/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/ja/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/ja/token-api/svm-tokens/balances.mdx b/website/src/pages/ja/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/ja/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/ja/token-api/svm-tokens/owner.mdx b/website/src/pages/ja/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/ja/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/ja/token-api/svm-tokens/tokens.mdx b/website/src/pages/ja/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/ja/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/ja/token-api/svm-tokens/transfers.mdx b/website/src/pages/ja/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/ja/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/ja/token-api/svm/_meta.js b/website/src/pages/ja/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/ja/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/ja/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/ja/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/ja/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/ja/token-api/svm/get-balances-svm.mdx b/website/src/pages/ja/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/ja/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/ja/token-api/svm/get-dexes-svm.mdx b/website/src/pages/ja/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/ja/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/ja/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/ja/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/ja/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ja/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/ja/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/ja/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/ja/token-api/svm/get-swaps-svm.mdx b/website/src/pages/ja/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/ja/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/ja/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/ja/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/ja/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/ja/token-api/svm/get-transfers-svm.mdx b/website/src/pages/ja/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/ja/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/ja/token-api/upgrade-to-v1.mdx b/website/src/pages/ja/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/ja/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/ko/token-api/_meta.js b/website/src/pages/ko/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/ko/token-api/_meta.js +++ b/website/src/pages/ko/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/ko/token-api/endpoint-pricing.mdx b/website/src/pages/ko/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/ko/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/ko/token-api/evm-dexs/_meta.js b/website/src/pages/ko/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/ko/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/ko/token-api/evm-dexs/dexes.mdx b/website/src/pages/ko/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/ko/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/ko/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/ko/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/ko/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/ko/token-api/evm-dexs/pools.mdx b/website/src/pages/ko/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/ko/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/ko/token-api/evm-dexs/swaps.mdx b/website/src/pages/ko/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/ko/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/ko/token-api/evm-nfts/_meta.js b/website/src/pages/ko/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/ko/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/ko/token-api/evm-nfts/collections.mdx b/website/src/pages/ko/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/ko/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/ko/token-api/evm-nfts/holders.mdx b/website/src/pages/ko/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/ko/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/ko/token-api/evm-nfts/items.mdx b/website/src/pages/ko/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/ko/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/ko/token-api/evm-nfts/ownerships.mdx b/website/src/pages/ko/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/ko/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/ko/token-api/evm-nfts/sales.mdx b/website/src/pages/ko/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/ko/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/ko/token-api/evm-nfts/transfers.mdx b/website/src/pages/ko/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/ko/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/ko/token-api/evm-tokens/_meta.js b/website/src/pages/ko/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/ko/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/ko/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/ko/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/ko/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/ko/token-api/evm-tokens/balances-native.mdx b/website/src/pages/ko/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/ko/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/ko/token-api/evm-tokens/balances.mdx b/website/src/pages/ko/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/ko/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/ko/token-api/evm-tokens/holders.mdx b/website/src/pages/ko/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/ko/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/ko/token-api/evm-tokens/tokens.mdx b/website/src/pages/ko/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/ko/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/ko/token-api/evm-tokens/transfers.mdx b/website/src/pages/ko/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/ko/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/ko/token-api/evm/_meta.js b/website/src/pages/ko/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/ko/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/ko/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/ko/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/ko/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/ko/token-api/evm/get-dexes-evm.mdx b/website/src/pages/ko/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/ko/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/ko/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/ko/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/ko/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/ko/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/ko/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/ko/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/ko/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/ko/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/ko/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/ko/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/ko/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/ko/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/ko/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/ko/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/ko/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/ko/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/ko/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/ko/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/ko/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/ko/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/ko/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/ko/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/ko/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/ko/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/ko/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/ko/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/ko/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ko/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/ko/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/ko/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ko/token-api/evm/get-pools-evm.mdx b/website/src/pages/ko/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/ko/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/ko/token-api/evm/get-swaps-evm.mdx b/website/src/pages/ko/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/ko/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/ko/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/ko/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/ko/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/ko/token-api/evm/get-transfers-evm.mdx b/website/src/pages/ko/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/ko/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/ko/token-api/monitoring/_meta.js b/website/src/pages/ko/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/ko/token-api/monitoring/_meta.js +++ b/website/src/pages/ko/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/ko/token-api/monitoring/get-health.mdx b/website/src/pages/ko/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/ko/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/ko/token-api/monitoring/get-networks.mdx b/website/src/pages/ko/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/ko/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/ko/token-api/monitoring/get-version.mdx b/website/src/pages/ko/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/ko/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/ko/token-api/monitoring/health.mdx b/website/src/pages/ko/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/ko/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/ko/token-api/monitoring/networks.mdx b/website/src/pages/ko/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/ko/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/ko/token-api/monitoring/version.mdx b/website/src/pages/ko/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/ko/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/ko/token-api/svm-dexs/_meta.js b/website/src/pages/ko/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/ko/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/ko/token-api/svm-dexs/dexes.mdx b/website/src/pages/ko/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/ko/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/ko/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/ko/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/ko/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/ko/token-api/svm-dexs/pools.mdx b/website/src/pages/ko/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/ko/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/ko/token-api/svm-dexs/swaps.mdx b/website/src/pages/ko/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/ko/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/ko/token-api/svm-tokens/_meta.js b/website/src/pages/ko/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/ko/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/ko/token-api/svm-tokens/balances-native.mdx b/website/src/pages/ko/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/ko/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/ko/token-api/svm-tokens/balances.mdx b/website/src/pages/ko/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/ko/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/ko/token-api/svm-tokens/owner.mdx b/website/src/pages/ko/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/ko/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/ko/token-api/svm-tokens/tokens.mdx b/website/src/pages/ko/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/ko/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/ko/token-api/svm-tokens/transfers.mdx b/website/src/pages/ko/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/ko/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/ko/token-api/svm/_meta.js b/website/src/pages/ko/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/ko/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/ko/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/ko/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/ko/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/ko/token-api/svm/get-balances-svm.mdx b/website/src/pages/ko/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/ko/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/ko/token-api/svm/get-dexes-svm.mdx b/website/src/pages/ko/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/ko/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/ko/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/ko/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/ko/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ko/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/ko/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/ko/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/ko/token-api/svm/get-swaps-svm.mdx b/website/src/pages/ko/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/ko/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/ko/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/ko/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/ko/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/ko/token-api/svm/get-transfers-svm.mdx b/website/src/pages/ko/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/ko/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/ko/token-api/upgrade-to-v1.mdx b/website/src/pages/ko/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/ko/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/mr/token-api/_meta.js b/website/src/pages/mr/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/mr/token-api/_meta.js +++ b/website/src/pages/mr/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/mr/token-api/endpoint-pricing.mdx b/website/src/pages/mr/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/mr/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/mr/token-api/evm-dexs/_meta.js b/website/src/pages/mr/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/mr/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/mr/token-api/evm-dexs/dexes.mdx b/website/src/pages/mr/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/mr/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/mr/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/mr/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/mr/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/mr/token-api/evm-dexs/pools.mdx b/website/src/pages/mr/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/mr/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/mr/token-api/evm-dexs/swaps.mdx b/website/src/pages/mr/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/mr/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/mr/token-api/evm-nfts/_meta.js b/website/src/pages/mr/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/mr/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/mr/token-api/evm-nfts/collections.mdx b/website/src/pages/mr/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/mr/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/mr/token-api/evm-nfts/holders.mdx b/website/src/pages/mr/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/mr/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/mr/token-api/evm-nfts/items.mdx b/website/src/pages/mr/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/mr/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/mr/token-api/evm-nfts/ownerships.mdx b/website/src/pages/mr/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/mr/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/mr/token-api/evm-nfts/sales.mdx b/website/src/pages/mr/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/mr/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/mr/token-api/evm-nfts/transfers.mdx b/website/src/pages/mr/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/mr/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/mr/token-api/evm-tokens/_meta.js b/website/src/pages/mr/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/mr/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/mr/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/mr/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/mr/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/mr/token-api/evm-tokens/balances-native.mdx b/website/src/pages/mr/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/mr/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/mr/token-api/evm-tokens/balances.mdx b/website/src/pages/mr/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/mr/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/mr/token-api/evm-tokens/holders.mdx b/website/src/pages/mr/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/mr/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/mr/token-api/evm-tokens/tokens.mdx b/website/src/pages/mr/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/mr/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/mr/token-api/evm-tokens/transfers.mdx b/website/src/pages/mr/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/mr/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/mr/token-api/evm/_meta.js b/website/src/pages/mr/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/mr/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/mr/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/mr/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/mr/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/mr/token-api/evm/get-dexes-evm.mdx b/website/src/pages/mr/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/mr/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/mr/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/mr/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/mr/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/mr/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/mr/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/mr/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/mr/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/mr/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/mr/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/mr/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/mr/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/mr/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/mr/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/mr/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/mr/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/mr/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/mr/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/mr/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/mr/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/mr/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/mr/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/mr/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/mr/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/mr/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/mr/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/mr/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/mr/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/mr/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/mr/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/mr/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/mr/token-api/evm/get-pools-evm.mdx b/website/src/pages/mr/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/mr/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/mr/token-api/evm/get-swaps-evm.mdx b/website/src/pages/mr/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/mr/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/mr/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/mr/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/mr/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/mr/token-api/evm/get-transfers-evm.mdx b/website/src/pages/mr/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/mr/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/mr/token-api/monitoring/_meta.js b/website/src/pages/mr/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/mr/token-api/monitoring/_meta.js +++ b/website/src/pages/mr/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/mr/token-api/monitoring/get-health.mdx b/website/src/pages/mr/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/mr/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/mr/token-api/monitoring/get-networks.mdx b/website/src/pages/mr/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/mr/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/mr/token-api/monitoring/get-version.mdx b/website/src/pages/mr/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/mr/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/mr/token-api/monitoring/health.mdx b/website/src/pages/mr/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/mr/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/mr/token-api/monitoring/networks.mdx b/website/src/pages/mr/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/mr/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/mr/token-api/monitoring/version.mdx b/website/src/pages/mr/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/mr/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/mr/token-api/svm-dexs/_meta.js b/website/src/pages/mr/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/mr/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/mr/token-api/svm-dexs/dexes.mdx b/website/src/pages/mr/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/mr/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/mr/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/mr/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/mr/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/mr/token-api/svm-dexs/pools.mdx b/website/src/pages/mr/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/mr/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/mr/token-api/svm-dexs/swaps.mdx b/website/src/pages/mr/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/mr/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/mr/token-api/svm-tokens/_meta.js b/website/src/pages/mr/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/mr/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/mr/token-api/svm-tokens/balances-native.mdx b/website/src/pages/mr/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/mr/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/mr/token-api/svm-tokens/balances.mdx b/website/src/pages/mr/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/mr/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/mr/token-api/svm-tokens/owner.mdx b/website/src/pages/mr/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/mr/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/mr/token-api/svm-tokens/tokens.mdx b/website/src/pages/mr/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/mr/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/mr/token-api/svm-tokens/transfers.mdx b/website/src/pages/mr/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/mr/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/mr/token-api/svm/_meta.js b/website/src/pages/mr/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/mr/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/mr/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/mr/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/mr/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/mr/token-api/svm/get-balances-svm.mdx b/website/src/pages/mr/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/mr/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/mr/token-api/svm/get-dexes-svm.mdx b/website/src/pages/mr/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/mr/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/mr/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/mr/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/mr/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/mr/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/mr/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/mr/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/mr/token-api/svm/get-swaps-svm.mdx b/website/src/pages/mr/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/mr/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/mr/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/mr/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/mr/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/mr/token-api/svm/get-transfers-svm.mdx b/website/src/pages/mr/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/mr/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/mr/token-api/upgrade-to-v1.mdx b/website/src/pages/mr/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/mr/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/nl/token-api/_meta.js b/website/src/pages/nl/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/nl/token-api/_meta.js +++ b/website/src/pages/nl/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/nl/token-api/endpoint-pricing.mdx b/website/src/pages/nl/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/nl/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/nl/token-api/evm-dexs/_meta.js b/website/src/pages/nl/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/nl/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/nl/token-api/evm-dexs/dexes.mdx b/website/src/pages/nl/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/nl/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/nl/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/nl/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/nl/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/nl/token-api/evm-dexs/pools.mdx b/website/src/pages/nl/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/nl/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/nl/token-api/evm-dexs/swaps.mdx b/website/src/pages/nl/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/nl/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/nl/token-api/evm-nfts/_meta.js b/website/src/pages/nl/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/nl/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/nl/token-api/evm-nfts/collections.mdx b/website/src/pages/nl/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/nl/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/nl/token-api/evm-nfts/holders.mdx b/website/src/pages/nl/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/nl/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/nl/token-api/evm-nfts/items.mdx b/website/src/pages/nl/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/nl/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/nl/token-api/evm-nfts/ownerships.mdx b/website/src/pages/nl/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/nl/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/nl/token-api/evm-nfts/sales.mdx b/website/src/pages/nl/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/nl/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/nl/token-api/evm-nfts/transfers.mdx b/website/src/pages/nl/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/nl/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/nl/token-api/evm-tokens/_meta.js b/website/src/pages/nl/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/nl/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/nl/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/nl/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/nl/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/nl/token-api/evm-tokens/balances-native.mdx b/website/src/pages/nl/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/nl/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/nl/token-api/evm-tokens/balances.mdx b/website/src/pages/nl/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/nl/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/nl/token-api/evm-tokens/holders.mdx b/website/src/pages/nl/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/nl/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/nl/token-api/evm-tokens/tokens.mdx b/website/src/pages/nl/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/nl/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/nl/token-api/evm-tokens/transfers.mdx b/website/src/pages/nl/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/nl/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/nl/token-api/evm/_meta.js b/website/src/pages/nl/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/nl/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/nl/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/nl/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/nl/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/nl/token-api/evm/get-dexes-evm.mdx b/website/src/pages/nl/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/nl/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/nl/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/nl/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/nl/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/nl/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/nl/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/nl/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/nl/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/nl/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/nl/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/nl/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/nl/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/nl/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/nl/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/nl/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/nl/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/nl/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/nl/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/nl/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/nl/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/nl/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/nl/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/nl/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/nl/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/nl/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/nl/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/nl/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/nl/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/nl/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/nl/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/nl/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/nl/token-api/evm/get-pools-evm.mdx b/website/src/pages/nl/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/nl/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/nl/token-api/evm/get-swaps-evm.mdx b/website/src/pages/nl/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/nl/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/nl/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/nl/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/nl/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/nl/token-api/evm/get-transfers-evm.mdx b/website/src/pages/nl/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/nl/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/nl/token-api/monitoring/_meta.js b/website/src/pages/nl/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/nl/token-api/monitoring/_meta.js +++ b/website/src/pages/nl/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/nl/token-api/monitoring/get-health.mdx b/website/src/pages/nl/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/nl/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/nl/token-api/monitoring/get-networks.mdx b/website/src/pages/nl/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/nl/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/nl/token-api/monitoring/get-version.mdx b/website/src/pages/nl/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/nl/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/nl/token-api/monitoring/health.mdx b/website/src/pages/nl/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/nl/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/nl/token-api/monitoring/networks.mdx b/website/src/pages/nl/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/nl/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/nl/token-api/monitoring/version.mdx b/website/src/pages/nl/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/nl/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/nl/token-api/svm-dexs/_meta.js b/website/src/pages/nl/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/nl/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/nl/token-api/svm-dexs/dexes.mdx b/website/src/pages/nl/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/nl/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/nl/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/nl/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/nl/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/nl/token-api/svm-dexs/pools.mdx b/website/src/pages/nl/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/nl/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/nl/token-api/svm-dexs/swaps.mdx b/website/src/pages/nl/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/nl/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/nl/token-api/svm-tokens/_meta.js b/website/src/pages/nl/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/nl/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/nl/token-api/svm-tokens/balances-native.mdx b/website/src/pages/nl/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/nl/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/nl/token-api/svm-tokens/balances.mdx b/website/src/pages/nl/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/nl/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/nl/token-api/svm-tokens/owner.mdx b/website/src/pages/nl/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/nl/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/nl/token-api/svm-tokens/tokens.mdx b/website/src/pages/nl/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/nl/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/nl/token-api/svm-tokens/transfers.mdx b/website/src/pages/nl/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/nl/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/nl/token-api/svm/_meta.js b/website/src/pages/nl/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/nl/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/nl/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/nl/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/nl/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/nl/token-api/svm/get-balances-svm.mdx b/website/src/pages/nl/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/nl/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/nl/token-api/svm/get-dexes-svm.mdx b/website/src/pages/nl/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/nl/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/nl/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/nl/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/nl/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/nl/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/nl/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/nl/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/nl/token-api/svm/get-swaps-svm.mdx b/website/src/pages/nl/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/nl/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/nl/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/nl/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/nl/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/nl/token-api/svm/get-transfers-svm.mdx b/website/src/pages/nl/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/nl/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/nl/token-api/upgrade-to-v1.mdx b/website/src/pages/nl/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/nl/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/pl/token-api/_meta.js b/website/src/pages/pl/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/pl/token-api/_meta.js +++ b/website/src/pages/pl/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/pl/token-api/endpoint-pricing.mdx b/website/src/pages/pl/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/pl/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/pl/token-api/evm-dexs/_meta.js b/website/src/pages/pl/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/pl/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/pl/token-api/evm-dexs/dexes.mdx b/website/src/pages/pl/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/pl/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/pl/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/pl/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/pl/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/pl/token-api/evm-dexs/pools.mdx b/website/src/pages/pl/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/pl/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/pl/token-api/evm-dexs/swaps.mdx b/website/src/pages/pl/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/pl/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/pl/token-api/evm-nfts/_meta.js b/website/src/pages/pl/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/pl/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/pl/token-api/evm-nfts/collections.mdx b/website/src/pages/pl/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/pl/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/pl/token-api/evm-nfts/holders.mdx b/website/src/pages/pl/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/pl/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/pl/token-api/evm-nfts/items.mdx b/website/src/pages/pl/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/pl/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/pl/token-api/evm-nfts/ownerships.mdx b/website/src/pages/pl/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/pl/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/pl/token-api/evm-nfts/sales.mdx b/website/src/pages/pl/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/pl/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/pl/token-api/evm-nfts/transfers.mdx b/website/src/pages/pl/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/pl/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/pl/token-api/evm-tokens/_meta.js b/website/src/pages/pl/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/pl/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/pl/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/pl/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/pl/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/pl/token-api/evm-tokens/balances-native.mdx b/website/src/pages/pl/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/pl/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/pl/token-api/evm-tokens/balances.mdx b/website/src/pages/pl/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/pl/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/pl/token-api/evm-tokens/holders.mdx b/website/src/pages/pl/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/pl/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/pl/token-api/evm-tokens/tokens.mdx b/website/src/pages/pl/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/pl/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/pl/token-api/evm-tokens/transfers.mdx b/website/src/pages/pl/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/pl/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/pl/token-api/evm/_meta.js b/website/src/pages/pl/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/pl/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/pl/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/pl/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/pl/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/pl/token-api/evm/get-dexes-evm.mdx b/website/src/pages/pl/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/pl/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/pl/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/pl/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/pl/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/pl/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/pl/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/pl/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/pl/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/pl/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/pl/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/pl/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/pl/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/pl/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/pl/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/pl/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/pl/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/pl/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/pl/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/pl/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/pl/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/pl/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/pl/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/pl/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/pl/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/pl/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/pl/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/pl/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/pl/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/pl/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/pl/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/pl/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/pl/token-api/evm/get-pools-evm.mdx b/website/src/pages/pl/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/pl/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/pl/token-api/evm/get-swaps-evm.mdx b/website/src/pages/pl/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/pl/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/pl/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/pl/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/pl/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/pl/token-api/evm/get-transfers-evm.mdx b/website/src/pages/pl/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/pl/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/pl/token-api/monitoring/_meta.js b/website/src/pages/pl/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/pl/token-api/monitoring/_meta.js +++ b/website/src/pages/pl/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/pl/token-api/monitoring/get-health.mdx b/website/src/pages/pl/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/pl/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/pl/token-api/monitoring/get-networks.mdx b/website/src/pages/pl/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/pl/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/pl/token-api/monitoring/get-version.mdx b/website/src/pages/pl/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/pl/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/pl/token-api/monitoring/health.mdx b/website/src/pages/pl/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/pl/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/pl/token-api/monitoring/networks.mdx b/website/src/pages/pl/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/pl/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/pl/token-api/monitoring/version.mdx b/website/src/pages/pl/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/pl/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/pl/token-api/svm-dexs/_meta.js b/website/src/pages/pl/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/pl/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/pl/token-api/svm-dexs/dexes.mdx b/website/src/pages/pl/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/pl/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/pl/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/pl/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/pl/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/pl/token-api/svm-dexs/pools.mdx b/website/src/pages/pl/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/pl/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/pl/token-api/svm-dexs/swaps.mdx b/website/src/pages/pl/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/pl/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/pl/token-api/svm-tokens/_meta.js b/website/src/pages/pl/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/pl/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/pl/token-api/svm-tokens/balances-native.mdx b/website/src/pages/pl/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/pl/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/pl/token-api/svm-tokens/balances.mdx b/website/src/pages/pl/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/pl/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/pl/token-api/svm-tokens/owner.mdx b/website/src/pages/pl/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/pl/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/pl/token-api/svm-tokens/tokens.mdx b/website/src/pages/pl/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/pl/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/pl/token-api/svm-tokens/transfers.mdx b/website/src/pages/pl/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/pl/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/pl/token-api/svm/_meta.js b/website/src/pages/pl/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/pl/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/pl/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/pl/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/pl/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/pl/token-api/svm/get-balances-svm.mdx b/website/src/pages/pl/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/pl/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/pl/token-api/svm/get-dexes-svm.mdx b/website/src/pages/pl/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/pl/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/pl/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/pl/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/pl/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/pl/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/pl/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/pl/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/pl/token-api/svm/get-swaps-svm.mdx b/website/src/pages/pl/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/pl/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/pl/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/pl/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/pl/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/pl/token-api/svm/get-transfers-svm.mdx b/website/src/pages/pl/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/pl/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/pl/token-api/upgrade-to-v1.mdx b/website/src/pages/pl/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/pl/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/pt/token-api/_meta.js b/website/src/pages/pt/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/pt/token-api/_meta.js +++ b/website/src/pages/pt/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/pt/token-api/endpoint-pricing.mdx b/website/src/pages/pt/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/pt/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/pt/token-api/evm-dexs/_meta.js b/website/src/pages/pt/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/pt/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/pt/token-api/evm-dexs/dexes.mdx b/website/src/pages/pt/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/pt/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/pt/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/pt/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/pt/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/pt/token-api/evm-dexs/pools.mdx b/website/src/pages/pt/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/pt/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/pt/token-api/evm-dexs/swaps.mdx b/website/src/pages/pt/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/pt/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/pt/token-api/evm-nfts/_meta.js b/website/src/pages/pt/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/pt/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/pt/token-api/evm-nfts/collections.mdx b/website/src/pages/pt/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/pt/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/pt/token-api/evm-nfts/holders.mdx b/website/src/pages/pt/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/pt/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/pt/token-api/evm-nfts/items.mdx b/website/src/pages/pt/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/pt/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/pt/token-api/evm-nfts/ownerships.mdx b/website/src/pages/pt/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/pt/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/pt/token-api/evm-nfts/sales.mdx b/website/src/pages/pt/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/pt/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/pt/token-api/evm-nfts/transfers.mdx b/website/src/pages/pt/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/pt/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/pt/token-api/evm-tokens/_meta.js b/website/src/pages/pt/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/pt/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/pt/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/pt/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/pt/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/pt/token-api/evm-tokens/balances-native.mdx b/website/src/pages/pt/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/pt/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/pt/token-api/evm-tokens/balances.mdx b/website/src/pages/pt/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/pt/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/pt/token-api/evm-tokens/holders.mdx b/website/src/pages/pt/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/pt/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/pt/token-api/evm-tokens/tokens.mdx b/website/src/pages/pt/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/pt/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/pt/token-api/evm-tokens/transfers.mdx b/website/src/pages/pt/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/pt/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/pt/token-api/evm/_meta.js b/website/src/pages/pt/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/pt/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/pt/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/pt/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/pt/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/pt/token-api/evm/get-dexes-evm.mdx b/website/src/pages/pt/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/pt/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/pt/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/pt/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/pt/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/pt/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/pt/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/pt/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/pt/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/pt/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/pt/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/pt/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/pt/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/pt/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/pt/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/pt/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/pt/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/pt/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/pt/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/pt/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/pt/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/pt/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/pt/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/pt/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/pt/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/pt/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/pt/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/pt/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/pt/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/pt/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/pt/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/pt/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/pt/token-api/evm/get-pools-evm.mdx b/website/src/pages/pt/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/pt/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/pt/token-api/evm/get-swaps-evm.mdx b/website/src/pages/pt/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/pt/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/pt/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/pt/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/pt/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/pt/token-api/evm/get-transfers-evm.mdx b/website/src/pages/pt/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/pt/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/pt/token-api/monitoring/_meta.js b/website/src/pages/pt/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/pt/token-api/monitoring/_meta.js +++ b/website/src/pages/pt/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/pt/token-api/monitoring/get-health.mdx b/website/src/pages/pt/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/pt/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/pt/token-api/monitoring/get-networks.mdx b/website/src/pages/pt/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/pt/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/pt/token-api/monitoring/get-version.mdx b/website/src/pages/pt/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/pt/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/pt/token-api/monitoring/health.mdx b/website/src/pages/pt/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/pt/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/pt/token-api/monitoring/networks.mdx b/website/src/pages/pt/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/pt/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/pt/token-api/monitoring/version.mdx b/website/src/pages/pt/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/pt/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/pt/token-api/svm-dexs/_meta.js b/website/src/pages/pt/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/pt/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/pt/token-api/svm-dexs/dexes.mdx b/website/src/pages/pt/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/pt/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/pt/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/pt/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/pt/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/pt/token-api/svm-dexs/pools.mdx b/website/src/pages/pt/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/pt/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/pt/token-api/svm-dexs/swaps.mdx b/website/src/pages/pt/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/pt/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/pt/token-api/svm-tokens/_meta.js b/website/src/pages/pt/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/pt/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/pt/token-api/svm-tokens/balances-native.mdx b/website/src/pages/pt/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/pt/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/pt/token-api/svm-tokens/balances.mdx b/website/src/pages/pt/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/pt/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/pt/token-api/svm-tokens/owner.mdx b/website/src/pages/pt/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/pt/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/pt/token-api/svm-tokens/tokens.mdx b/website/src/pages/pt/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/pt/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/pt/token-api/svm-tokens/transfers.mdx b/website/src/pages/pt/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/pt/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/pt/token-api/svm/_meta.js b/website/src/pages/pt/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/pt/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/pt/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/pt/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/pt/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/pt/token-api/svm/get-balances-svm.mdx b/website/src/pages/pt/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/pt/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/pt/token-api/svm/get-dexes-svm.mdx b/website/src/pages/pt/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/pt/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/pt/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/pt/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/pt/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/pt/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/pt/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/pt/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/pt/token-api/svm/get-swaps-svm.mdx b/website/src/pages/pt/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/pt/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/pt/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/pt/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/pt/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/pt/token-api/svm/get-transfers-svm.mdx b/website/src/pages/pt/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/pt/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/pt/token-api/upgrade-to-v1.mdx b/website/src/pages/pt/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/pt/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/ro/token-api/_meta.js b/website/src/pages/ro/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/ro/token-api/_meta.js +++ b/website/src/pages/ro/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/ro/token-api/endpoint-pricing.mdx b/website/src/pages/ro/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/ro/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/ro/token-api/evm-dexs/_meta.js b/website/src/pages/ro/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/ro/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/ro/token-api/evm-dexs/dexes.mdx b/website/src/pages/ro/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/ro/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/ro/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/ro/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/ro/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/ro/token-api/evm-dexs/pools.mdx b/website/src/pages/ro/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/ro/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/ro/token-api/evm-dexs/swaps.mdx b/website/src/pages/ro/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/ro/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/ro/token-api/evm-nfts/_meta.js b/website/src/pages/ro/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/ro/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/ro/token-api/evm-nfts/collections.mdx b/website/src/pages/ro/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/ro/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/ro/token-api/evm-nfts/holders.mdx b/website/src/pages/ro/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/ro/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/ro/token-api/evm-nfts/items.mdx b/website/src/pages/ro/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/ro/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/ro/token-api/evm-nfts/ownerships.mdx b/website/src/pages/ro/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/ro/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/ro/token-api/evm-nfts/sales.mdx b/website/src/pages/ro/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/ro/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/ro/token-api/evm-nfts/transfers.mdx b/website/src/pages/ro/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/ro/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/ro/token-api/evm-tokens/_meta.js b/website/src/pages/ro/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/ro/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/ro/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/ro/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/ro/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/ro/token-api/evm-tokens/balances-native.mdx b/website/src/pages/ro/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/ro/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/ro/token-api/evm-tokens/balances.mdx b/website/src/pages/ro/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/ro/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/ro/token-api/evm-tokens/holders.mdx b/website/src/pages/ro/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/ro/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/ro/token-api/evm-tokens/tokens.mdx b/website/src/pages/ro/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/ro/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/ro/token-api/evm-tokens/transfers.mdx b/website/src/pages/ro/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/ro/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/ro/token-api/evm/_meta.js b/website/src/pages/ro/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/ro/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/ro/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/ro/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/ro/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/ro/token-api/evm/get-dexes-evm.mdx b/website/src/pages/ro/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/ro/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/ro/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/ro/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/ro/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/ro/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/ro/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/ro/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/ro/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/ro/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/ro/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/ro/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/ro/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/ro/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/ro/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/ro/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/ro/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/ro/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/ro/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/ro/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/ro/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/ro/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/ro/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/ro/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/ro/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/ro/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/ro/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/ro/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/ro/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ro/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/ro/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/ro/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ro/token-api/evm/get-pools-evm.mdx b/website/src/pages/ro/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/ro/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/ro/token-api/evm/get-swaps-evm.mdx b/website/src/pages/ro/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/ro/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/ro/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/ro/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/ro/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/ro/token-api/evm/get-transfers-evm.mdx b/website/src/pages/ro/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/ro/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/ro/token-api/monitoring/_meta.js b/website/src/pages/ro/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/ro/token-api/monitoring/_meta.js +++ b/website/src/pages/ro/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/ro/token-api/monitoring/get-health.mdx b/website/src/pages/ro/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/ro/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/ro/token-api/monitoring/get-networks.mdx b/website/src/pages/ro/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/ro/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/ro/token-api/monitoring/get-version.mdx b/website/src/pages/ro/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/ro/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/ro/token-api/monitoring/health.mdx b/website/src/pages/ro/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/ro/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/ro/token-api/monitoring/networks.mdx b/website/src/pages/ro/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/ro/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/ro/token-api/monitoring/version.mdx b/website/src/pages/ro/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/ro/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/ro/token-api/svm-dexs/_meta.js b/website/src/pages/ro/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/ro/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/ro/token-api/svm-dexs/dexes.mdx b/website/src/pages/ro/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/ro/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/ro/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/ro/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/ro/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/ro/token-api/svm-dexs/pools.mdx b/website/src/pages/ro/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/ro/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/ro/token-api/svm-dexs/swaps.mdx b/website/src/pages/ro/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/ro/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/ro/token-api/svm-tokens/_meta.js b/website/src/pages/ro/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/ro/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/ro/token-api/svm-tokens/balances-native.mdx b/website/src/pages/ro/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/ro/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/ro/token-api/svm-tokens/balances.mdx b/website/src/pages/ro/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/ro/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/ro/token-api/svm-tokens/owner.mdx b/website/src/pages/ro/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/ro/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/ro/token-api/svm-tokens/tokens.mdx b/website/src/pages/ro/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/ro/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/ro/token-api/svm-tokens/transfers.mdx b/website/src/pages/ro/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/ro/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/ro/token-api/svm/_meta.js b/website/src/pages/ro/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/ro/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/ro/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/ro/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/ro/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/ro/token-api/svm/get-balances-svm.mdx b/website/src/pages/ro/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/ro/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/ro/token-api/svm/get-dexes-svm.mdx b/website/src/pages/ro/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/ro/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/ro/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/ro/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/ro/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ro/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/ro/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/ro/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/ro/token-api/svm/get-swaps-svm.mdx b/website/src/pages/ro/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/ro/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/ro/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/ro/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/ro/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/ro/token-api/svm/get-transfers-svm.mdx b/website/src/pages/ro/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/ro/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/ro/token-api/upgrade-to-v1.mdx b/website/src/pages/ro/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/ro/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/ru/token-api/_meta.js b/website/src/pages/ru/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/ru/token-api/_meta.js +++ b/website/src/pages/ru/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/ru/token-api/endpoint-pricing.mdx b/website/src/pages/ru/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/ru/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/ru/token-api/evm-dexs/_meta.js b/website/src/pages/ru/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/ru/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/ru/token-api/evm-dexs/dexes.mdx b/website/src/pages/ru/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/ru/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/ru/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/ru/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/ru/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/ru/token-api/evm-dexs/pools.mdx b/website/src/pages/ru/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/ru/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/ru/token-api/evm-dexs/swaps.mdx b/website/src/pages/ru/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/ru/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/ru/token-api/evm-nfts/_meta.js b/website/src/pages/ru/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/ru/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/ru/token-api/evm-nfts/collections.mdx b/website/src/pages/ru/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/ru/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/ru/token-api/evm-nfts/holders.mdx b/website/src/pages/ru/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/ru/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/ru/token-api/evm-nfts/items.mdx b/website/src/pages/ru/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/ru/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/ru/token-api/evm-nfts/ownerships.mdx b/website/src/pages/ru/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/ru/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/ru/token-api/evm-nfts/sales.mdx b/website/src/pages/ru/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/ru/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/ru/token-api/evm-nfts/transfers.mdx b/website/src/pages/ru/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/ru/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/ru/token-api/evm-tokens/_meta.js b/website/src/pages/ru/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/ru/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/ru/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/ru/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/ru/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/ru/token-api/evm-tokens/balances-native.mdx b/website/src/pages/ru/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/ru/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/ru/token-api/evm-tokens/balances.mdx b/website/src/pages/ru/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/ru/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/ru/token-api/evm-tokens/holders.mdx b/website/src/pages/ru/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/ru/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/ru/token-api/evm-tokens/tokens.mdx b/website/src/pages/ru/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/ru/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/ru/token-api/evm-tokens/transfers.mdx b/website/src/pages/ru/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/ru/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/ru/token-api/evm/_meta.js b/website/src/pages/ru/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/ru/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/ru/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/ru/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/ru/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/ru/token-api/evm/get-dexes-evm.mdx b/website/src/pages/ru/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/ru/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/ru/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/ru/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/ru/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/ru/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/ru/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/ru/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/ru/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/ru/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/ru/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/ru/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/ru/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/ru/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/ru/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/ru/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/ru/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/ru/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/ru/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/ru/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/ru/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/ru/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/ru/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/ru/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/ru/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/ru/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/ru/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/ru/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/ru/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ru/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/ru/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/ru/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ru/token-api/evm/get-pools-evm.mdx b/website/src/pages/ru/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/ru/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/ru/token-api/evm/get-swaps-evm.mdx b/website/src/pages/ru/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/ru/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/ru/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/ru/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/ru/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/ru/token-api/evm/get-transfers-evm.mdx b/website/src/pages/ru/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/ru/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/ru/token-api/monitoring/_meta.js b/website/src/pages/ru/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/ru/token-api/monitoring/_meta.js +++ b/website/src/pages/ru/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/ru/token-api/monitoring/get-health.mdx b/website/src/pages/ru/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/ru/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/ru/token-api/monitoring/get-networks.mdx b/website/src/pages/ru/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/ru/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/ru/token-api/monitoring/get-version.mdx b/website/src/pages/ru/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/ru/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/ru/token-api/monitoring/health.mdx b/website/src/pages/ru/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/ru/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/ru/token-api/monitoring/networks.mdx b/website/src/pages/ru/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/ru/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/ru/token-api/monitoring/version.mdx b/website/src/pages/ru/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/ru/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/ru/token-api/svm-dexs/_meta.js b/website/src/pages/ru/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/ru/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/ru/token-api/svm-dexs/dexes.mdx b/website/src/pages/ru/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/ru/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/ru/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/ru/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/ru/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/ru/token-api/svm-dexs/pools.mdx b/website/src/pages/ru/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/ru/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/ru/token-api/svm-dexs/swaps.mdx b/website/src/pages/ru/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/ru/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/ru/token-api/svm-tokens/_meta.js b/website/src/pages/ru/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/ru/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/ru/token-api/svm-tokens/balances-native.mdx b/website/src/pages/ru/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/ru/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/ru/token-api/svm-tokens/balances.mdx b/website/src/pages/ru/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/ru/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/ru/token-api/svm-tokens/owner.mdx b/website/src/pages/ru/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/ru/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/ru/token-api/svm-tokens/tokens.mdx b/website/src/pages/ru/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/ru/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/ru/token-api/svm-tokens/transfers.mdx b/website/src/pages/ru/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/ru/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/ru/token-api/svm/_meta.js b/website/src/pages/ru/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/ru/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/ru/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/ru/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/ru/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/ru/token-api/svm/get-balances-svm.mdx b/website/src/pages/ru/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/ru/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/ru/token-api/svm/get-dexes-svm.mdx b/website/src/pages/ru/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/ru/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/ru/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/ru/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/ru/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ru/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/ru/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/ru/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/ru/token-api/svm/get-swaps-svm.mdx b/website/src/pages/ru/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/ru/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/ru/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/ru/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/ru/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/ru/token-api/svm/get-transfers-svm.mdx b/website/src/pages/ru/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/ru/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/ru/token-api/upgrade-to-v1.mdx b/website/src/pages/ru/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/ru/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/sv/token-api/_meta.js b/website/src/pages/sv/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/sv/token-api/_meta.js +++ b/website/src/pages/sv/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/sv/token-api/endpoint-pricing.mdx b/website/src/pages/sv/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/sv/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/sv/token-api/evm-dexs/_meta.js b/website/src/pages/sv/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/sv/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/sv/token-api/evm-dexs/dexes.mdx b/website/src/pages/sv/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/sv/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/sv/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/sv/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/sv/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/sv/token-api/evm-dexs/pools.mdx b/website/src/pages/sv/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/sv/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/sv/token-api/evm-dexs/swaps.mdx b/website/src/pages/sv/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/sv/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/sv/token-api/evm-nfts/_meta.js b/website/src/pages/sv/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/sv/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/sv/token-api/evm-nfts/collections.mdx b/website/src/pages/sv/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/sv/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/sv/token-api/evm-nfts/holders.mdx b/website/src/pages/sv/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/sv/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/sv/token-api/evm-nfts/items.mdx b/website/src/pages/sv/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/sv/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/sv/token-api/evm-nfts/ownerships.mdx b/website/src/pages/sv/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/sv/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/sv/token-api/evm-nfts/sales.mdx b/website/src/pages/sv/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/sv/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/sv/token-api/evm-nfts/transfers.mdx b/website/src/pages/sv/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/sv/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/sv/token-api/evm-tokens/_meta.js b/website/src/pages/sv/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/sv/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/sv/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/sv/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/sv/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/sv/token-api/evm-tokens/balances-native.mdx b/website/src/pages/sv/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/sv/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/sv/token-api/evm-tokens/balances.mdx b/website/src/pages/sv/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/sv/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/sv/token-api/evm-tokens/holders.mdx b/website/src/pages/sv/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/sv/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/sv/token-api/evm-tokens/tokens.mdx b/website/src/pages/sv/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/sv/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/sv/token-api/evm-tokens/transfers.mdx b/website/src/pages/sv/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/sv/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/sv/token-api/evm/_meta.js b/website/src/pages/sv/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/sv/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/sv/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/sv/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/sv/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/sv/token-api/evm/get-dexes-evm.mdx b/website/src/pages/sv/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/sv/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/sv/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/sv/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/sv/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/sv/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/sv/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/sv/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/sv/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/sv/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/sv/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/sv/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/sv/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/sv/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/sv/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/sv/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/sv/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/sv/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/sv/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/sv/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/sv/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/sv/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/sv/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/sv/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/sv/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/sv/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/sv/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/sv/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/sv/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/sv/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/sv/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/sv/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/sv/token-api/evm/get-pools-evm.mdx b/website/src/pages/sv/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/sv/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/sv/token-api/evm/get-swaps-evm.mdx b/website/src/pages/sv/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/sv/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/sv/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/sv/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/sv/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/sv/token-api/evm/get-transfers-evm.mdx b/website/src/pages/sv/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/sv/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/sv/token-api/monitoring/_meta.js b/website/src/pages/sv/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/sv/token-api/monitoring/_meta.js +++ b/website/src/pages/sv/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/sv/token-api/monitoring/get-health.mdx b/website/src/pages/sv/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/sv/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/sv/token-api/monitoring/get-networks.mdx b/website/src/pages/sv/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/sv/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/sv/token-api/monitoring/get-version.mdx b/website/src/pages/sv/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/sv/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/sv/token-api/monitoring/health.mdx b/website/src/pages/sv/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/sv/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/sv/token-api/monitoring/networks.mdx b/website/src/pages/sv/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/sv/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/sv/token-api/monitoring/version.mdx b/website/src/pages/sv/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/sv/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/sv/token-api/svm-dexs/_meta.js b/website/src/pages/sv/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/sv/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/sv/token-api/svm-dexs/dexes.mdx b/website/src/pages/sv/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/sv/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/sv/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/sv/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/sv/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/sv/token-api/svm-dexs/pools.mdx b/website/src/pages/sv/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/sv/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/sv/token-api/svm-dexs/swaps.mdx b/website/src/pages/sv/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/sv/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/sv/token-api/svm-tokens/_meta.js b/website/src/pages/sv/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/sv/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/sv/token-api/svm-tokens/balances-native.mdx b/website/src/pages/sv/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/sv/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/sv/token-api/svm-tokens/balances.mdx b/website/src/pages/sv/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/sv/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/sv/token-api/svm-tokens/owner.mdx b/website/src/pages/sv/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/sv/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/sv/token-api/svm-tokens/tokens.mdx b/website/src/pages/sv/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/sv/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/sv/token-api/svm-tokens/transfers.mdx b/website/src/pages/sv/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/sv/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/sv/token-api/svm/_meta.js b/website/src/pages/sv/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/sv/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/sv/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/sv/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/sv/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/sv/token-api/svm/get-balances-svm.mdx b/website/src/pages/sv/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/sv/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/sv/token-api/svm/get-dexes-svm.mdx b/website/src/pages/sv/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/sv/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/sv/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/sv/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/sv/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/sv/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/sv/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/sv/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/sv/token-api/svm/get-swaps-svm.mdx b/website/src/pages/sv/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/sv/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/sv/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/sv/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/sv/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/sv/token-api/svm/get-transfers-svm.mdx b/website/src/pages/sv/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/sv/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/sv/token-api/upgrade-to-v1.mdx b/website/src/pages/sv/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/sv/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/tr/token-api/_meta.js b/website/src/pages/tr/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/tr/token-api/_meta.js +++ b/website/src/pages/tr/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/tr/token-api/endpoint-pricing.mdx b/website/src/pages/tr/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/tr/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/tr/token-api/evm-dexs/_meta.js b/website/src/pages/tr/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/tr/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/tr/token-api/evm-dexs/dexes.mdx b/website/src/pages/tr/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/tr/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/tr/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/tr/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/tr/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/tr/token-api/evm-dexs/pools.mdx b/website/src/pages/tr/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/tr/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/tr/token-api/evm-dexs/swaps.mdx b/website/src/pages/tr/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/tr/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/tr/token-api/evm-nfts/_meta.js b/website/src/pages/tr/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/tr/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/tr/token-api/evm-nfts/collections.mdx b/website/src/pages/tr/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/tr/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/tr/token-api/evm-nfts/holders.mdx b/website/src/pages/tr/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/tr/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/tr/token-api/evm-nfts/items.mdx b/website/src/pages/tr/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/tr/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/tr/token-api/evm-nfts/ownerships.mdx b/website/src/pages/tr/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/tr/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/tr/token-api/evm-nfts/sales.mdx b/website/src/pages/tr/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/tr/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/tr/token-api/evm-nfts/transfers.mdx b/website/src/pages/tr/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/tr/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/tr/token-api/evm-tokens/_meta.js b/website/src/pages/tr/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/tr/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/tr/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/tr/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/tr/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/tr/token-api/evm-tokens/balances-native.mdx b/website/src/pages/tr/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/tr/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/tr/token-api/evm-tokens/balances.mdx b/website/src/pages/tr/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/tr/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/tr/token-api/evm-tokens/holders.mdx b/website/src/pages/tr/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/tr/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/tr/token-api/evm-tokens/tokens.mdx b/website/src/pages/tr/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/tr/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/tr/token-api/evm-tokens/transfers.mdx b/website/src/pages/tr/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/tr/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/tr/token-api/evm/_meta.js b/website/src/pages/tr/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/tr/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/tr/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/tr/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/tr/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/tr/token-api/evm/get-dexes-evm.mdx b/website/src/pages/tr/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/tr/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/tr/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/tr/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/tr/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/tr/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/tr/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/tr/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/tr/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/tr/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/tr/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/tr/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/tr/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/tr/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/tr/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/tr/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/tr/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/tr/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/tr/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/tr/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/tr/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/tr/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/tr/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/tr/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/tr/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/tr/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/tr/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/tr/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/tr/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/tr/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/tr/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/tr/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/tr/token-api/evm/get-pools-evm.mdx b/website/src/pages/tr/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/tr/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/tr/token-api/evm/get-swaps-evm.mdx b/website/src/pages/tr/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/tr/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/tr/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/tr/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/tr/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/tr/token-api/evm/get-transfers-evm.mdx b/website/src/pages/tr/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/tr/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/tr/token-api/monitoring/_meta.js b/website/src/pages/tr/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/tr/token-api/monitoring/_meta.js +++ b/website/src/pages/tr/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/tr/token-api/monitoring/get-health.mdx b/website/src/pages/tr/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/tr/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/tr/token-api/monitoring/get-networks.mdx b/website/src/pages/tr/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/tr/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/tr/token-api/monitoring/get-version.mdx b/website/src/pages/tr/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/tr/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/tr/token-api/monitoring/health.mdx b/website/src/pages/tr/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/tr/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/tr/token-api/monitoring/networks.mdx b/website/src/pages/tr/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/tr/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/tr/token-api/monitoring/version.mdx b/website/src/pages/tr/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/tr/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/tr/token-api/svm-dexs/_meta.js b/website/src/pages/tr/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/tr/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/tr/token-api/svm-dexs/dexes.mdx b/website/src/pages/tr/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/tr/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/tr/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/tr/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/tr/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/tr/token-api/svm-dexs/pools.mdx b/website/src/pages/tr/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/tr/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/tr/token-api/svm-dexs/swaps.mdx b/website/src/pages/tr/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/tr/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/tr/token-api/svm-tokens/_meta.js b/website/src/pages/tr/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/tr/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/tr/token-api/svm-tokens/balances-native.mdx b/website/src/pages/tr/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/tr/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/tr/token-api/svm-tokens/balances.mdx b/website/src/pages/tr/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/tr/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/tr/token-api/svm-tokens/owner.mdx b/website/src/pages/tr/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/tr/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/tr/token-api/svm-tokens/tokens.mdx b/website/src/pages/tr/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/tr/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/tr/token-api/svm-tokens/transfers.mdx b/website/src/pages/tr/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/tr/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/tr/token-api/svm/_meta.js b/website/src/pages/tr/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/tr/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/tr/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/tr/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/tr/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/tr/token-api/svm/get-balances-svm.mdx b/website/src/pages/tr/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/tr/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/tr/token-api/svm/get-dexes-svm.mdx b/website/src/pages/tr/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/tr/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/tr/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/tr/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/tr/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/tr/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/tr/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/tr/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/tr/token-api/svm/get-swaps-svm.mdx b/website/src/pages/tr/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/tr/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/tr/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/tr/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/tr/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/tr/token-api/svm/get-transfers-svm.mdx b/website/src/pages/tr/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/tr/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/tr/token-api/upgrade-to-v1.mdx b/website/src/pages/tr/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/tr/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/uk/token-api/_meta.js b/website/src/pages/uk/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/uk/token-api/_meta.js +++ b/website/src/pages/uk/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/uk/token-api/endpoint-pricing.mdx b/website/src/pages/uk/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/uk/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/uk/token-api/evm-dexs/_meta.js b/website/src/pages/uk/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/uk/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/uk/token-api/evm-dexs/dexes.mdx b/website/src/pages/uk/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/uk/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/uk/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/uk/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/uk/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/uk/token-api/evm-dexs/pools.mdx b/website/src/pages/uk/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/uk/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/uk/token-api/evm-dexs/swaps.mdx b/website/src/pages/uk/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/uk/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/uk/token-api/evm-nfts/_meta.js b/website/src/pages/uk/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/uk/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/uk/token-api/evm-nfts/collections.mdx b/website/src/pages/uk/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/uk/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/uk/token-api/evm-nfts/holders.mdx b/website/src/pages/uk/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/uk/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/uk/token-api/evm-nfts/items.mdx b/website/src/pages/uk/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/uk/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/uk/token-api/evm-nfts/ownerships.mdx b/website/src/pages/uk/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/uk/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/uk/token-api/evm-nfts/sales.mdx b/website/src/pages/uk/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/uk/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/uk/token-api/evm-nfts/transfers.mdx b/website/src/pages/uk/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/uk/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/uk/token-api/evm-tokens/_meta.js b/website/src/pages/uk/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/uk/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/uk/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/uk/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/uk/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/uk/token-api/evm-tokens/balances-native.mdx b/website/src/pages/uk/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/uk/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/uk/token-api/evm-tokens/balances.mdx b/website/src/pages/uk/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/uk/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/uk/token-api/evm-tokens/holders.mdx b/website/src/pages/uk/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/uk/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/uk/token-api/evm-tokens/tokens.mdx b/website/src/pages/uk/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/uk/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/uk/token-api/evm-tokens/transfers.mdx b/website/src/pages/uk/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/uk/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/uk/token-api/evm/_meta.js b/website/src/pages/uk/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/uk/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/uk/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/uk/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/uk/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/uk/token-api/evm/get-dexes-evm.mdx b/website/src/pages/uk/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/uk/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/uk/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/uk/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/uk/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/uk/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/uk/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/uk/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/uk/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/uk/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/uk/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/uk/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/uk/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/uk/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/uk/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/uk/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/uk/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/uk/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/uk/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/uk/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/uk/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/uk/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/uk/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/uk/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/uk/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/uk/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/uk/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/uk/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/uk/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/uk/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/uk/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/uk/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/uk/token-api/evm/get-pools-evm.mdx b/website/src/pages/uk/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/uk/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/uk/token-api/evm/get-swaps-evm.mdx b/website/src/pages/uk/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/uk/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/uk/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/uk/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/uk/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/uk/token-api/evm/get-transfers-evm.mdx b/website/src/pages/uk/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/uk/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/uk/token-api/monitoring/_meta.js b/website/src/pages/uk/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/uk/token-api/monitoring/_meta.js +++ b/website/src/pages/uk/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/uk/token-api/monitoring/get-health.mdx b/website/src/pages/uk/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/uk/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/uk/token-api/monitoring/get-networks.mdx b/website/src/pages/uk/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/uk/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/uk/token-api/monitoring/get-version.mdx b/website/src/pages/uk/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/uk/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/uk/token-api/monitoring/health.mdx b/website/src/pages/uk/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/uk/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/uk/token-api/monitoring/networks.mdx b/website/src/pages/uk/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/uk/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/uk/token-api/monitoring/version.mdx b/website/src/pages/uk/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/uk/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/uk/token-api/svm-dexs/_meta.js b/website/src/pages/uk/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/uk/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/uk/token-api/svm-dexs/dexes.mdx b/website/src/pages/uk/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/uk/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/uk/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/uk/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/uk/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/uk/token-api/svm-dexs/pools.mdx b/website/src/pages/uk/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/uk/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/uk/token-api/svm-dexs/swaps.mdx b/website/src/pages/uk/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/uk/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/uk/token-api/svm-tokens/_meta.js b/website/src/pages/uk/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/uk/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/uk/token-api/svm-tokens/balances-native.mdx b/website/src/pages/uk/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/uk/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/uk/token-api/svm-tokens/balances.mdx b/website/src/pages/uk/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/uk/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/uk/token-api/svm-tokens/owner.mdx b/website/src/pages/uk/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/uk/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/uk/token-api/svm-tokens/tokens.mdx b/website/src/pages/uk/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/uk/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/uk/token-api/svm-tokens/transfers.mdx b/website/src/pages/uk/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/uk/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/uk/token-api/svm/_meta.js b/website/src/pages/uk/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/uk/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/uk/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/uk/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/uk/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/uk/token-api/svm/get-balances-svm.mdx b/website/src/pages/uk/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/uk/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/uk/token-api/svm/get-dexes-svm.mdx b/website/src/pages/uk/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/uk/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/uk/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/uk/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/uk/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/uk/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/uk/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/uk/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/uk/token-api/svm/get-swaps-svm.mdx b/website/src/pages/uk/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/uk/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/uk/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/uk/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/uk/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/uk/token-api/svm/get-transfers-svm.mdx b/website/src/pages/uk/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/uk/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/uk/token-api/upgrade-to-v1.mdx b/website/src/pages/uk/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/uk/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/ur/token-api/_meta.js b/website/src/pages/ur/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/ur/token-api/_meta.js +++ b/website/src/pages/ur/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/ur/token-api/endpoint-pricing.mdx b/website/src/pages/ur/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/ur/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/ur/token-api/evm-dexs/_meta.js b/website/src/pages/ur/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/ur/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/ur/token-api/evm-dexs/dexes.mdx b/website/src/pages/ur/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/ur/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/ur/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/ur/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/ur/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/ur/token-api/evm-dexs/pools.mdx b/website/src/pages/ur/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/ur/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/ur/token-api/evm-dexs/swaps.mdx b/website/src/pages/ur/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/ur/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/ur/token-api/evm-nfts/_meta.js b/website/src/pages/ur/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/ur/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/ur/token-api/evm-nfts/collections.mdx b/website/src/pages/ur/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/ur/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/ur/token-api/evm-nfts/holders.mdx b/website/src/pages/ur/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/ur/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/ur/token-api/evm-nfts/items.mdx b/website/src/pages/ur/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/ur/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/ur/token-api/evm-nfts/ownerships.mdx b/website/src/pages/ur/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/ur/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/ur/token-api/evm-nfts/sales.mdx b/website/src/pages/ur/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/ur/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/ur/token-api/evm-nfts/transfers.mdx b/website/src/pages/ur/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/ur/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/ur/token-api/evm-tokens/_meta.js b/website/src/pages/ur/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/ur/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/ur/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/ur/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/ur/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/ur/token-api/evm-tokens/balances-native.mdx b/website/src/pages/ur/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/ur/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/ur/token-api/evm-tokens/balances.mdx b/website/src/pages/ur/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/ur/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/ur/token-api/evm-tokens/holders.mdx b/website/src/pages/ur/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/ur/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/ur/token-api/evm-tokens/tokens.mdx b/website/src/pages/ur/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/ur/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/ur/token-api/evm-tokens/transfers.mdx b/website/src/pages/ur/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/ur/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/ur/token-api/evm/_meta.js b/website/src/pages/ur/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/ur/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/ur/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/ur/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/ur/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/ur/token-api/evm/get-dexes-evm.mdx b/website/src/pages/ur/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/ur/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/ur/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/ur/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/ur/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/ur/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/ur/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/ur/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/ur/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/ur/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/ur/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/ur/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/ur/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/ur/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/ur/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/ur/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/ur/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/ur/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/ur/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/ur/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/ur/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/ur/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/ur/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/ur/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/ur/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/ur/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/ur/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/ur/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/ur/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ur/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/ur/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/ur/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ur/token-api/evm/get-pools-evm.mdx b/website/src/pages/ur/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/ur/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/ur/token-api/evm/get-swaps-evm.mdx b/website/src/pages/ur/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/ur/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/ur/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/ur/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/ur/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/ur/token-api/evm/get-transfers-evm.mdx b/website/src/pages/ur/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/ur/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/ur/token-api/monitoring/_meta.js b/website/src/pages/ur/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/ur/token-api/monitoring/_meta.js +++ b/website/src/pages/ur/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/ur/token-api/monitoring/get-health.mdx b/website/src/pages/ur/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/ur/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/ur/token-api/monitoring/get-networks.mdx b/website/src/pages/ur/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/ur/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/ur/token-api/monitoring/get-version.mdx b/website/src/pages/ur/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/ur/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/ur/token-api/monitoring/health.mdx b/website/src/pages/ur/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/ur/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/ur/token-api/monitoring/networks.mdx b/website/src/pages/ur/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/ur/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/ur/token-api/monitoring/version.mdx b/website/src/pages/ur/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/ur/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/ur/token-api/svm-dexs/_meta.js b/website/src/pages/ur/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/ur/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/ur/token-api/svm-dexs/dexes.mdx b/website/src/pages/ur/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/ur/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/ur/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/ur/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/ur/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/ur/token-api/svm-dexs/pools.mdx b/website/src/pages/ur/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/ur/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/ur/token-api/svm-dexs/swaps.mdx b/website/src/pages/ur/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/ur/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/ur/token-api/svm-tokens/_meta.js b/website/src/pages/ur/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/ur/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/ur/token-api/svm-tokens/balances-native.mdx b/website/src/pages/ur/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/ur/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/ur/token-api/svm-tokens/balances.mdx b/website/src/pages/ur/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/ur/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/ur/token-api/svm-tokens/owner.mdx b/website/src/pages/ur/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/ur/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/ur/token-api/svm-tokens/tokens.mdx b/website/src/pages/ur/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/ur/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/ur/token-api/svm-tokens/transfers.mdx b/website/src/pages/ur/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/ur/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/ur/token-api/svm/_meta.js b/website/src/pages/ur/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/ur/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/ur/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/ur/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/ur/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/ur/token-api/svm/get-balances-svm.mdx b/website/src/pages/ur/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/ur/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/ur/token-api/svm/get-dexes-svm.mdx b/website/src/pages/ur/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/ur/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/ur/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/ur/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/ur/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/ur/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/ur/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/ur/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/ur/token-api/svm/get-swaps-svm.mdx b/website/src/pages/ur/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/ur/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/ur/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/ur/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/ur/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/ur/token-api/svm/get-transfers-svm.mdx b/website/src/pages/ur/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/ur/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/ur/token-api/upgrade-to-v1.mdx b/website/src/pages/ur/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/ur/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/vi/token-api/_meta.js b/website/src/pages/vi/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/vi/token-api/_meta.js +++ b/website/src/pages/vi/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/vi/token-api/endpoint-pricing.mdx b/website/src/pages/vi/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/vi/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/vi/token-api/evm-dexs/_meta.js b/website/src/pages/vi/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/vi/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/vi/token-api/evm-dexs/dexes.mdx b/website/src/pages/vi/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/vi/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/vi/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/vi/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/vi/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/vi/token-api/evm-dexs/pools.mdx b/website/src/pages/vi/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/vi/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/vi/token-api/evm-dexs/swaps.mdx b/website/src/pages/vi/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/vi/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/vi/token-api/evm-nfts/_meta.js b/website/src/pages/vi/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/vi/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/vi/token-api/evm-nfts/collections.mdx b/website/src/pages/vi/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/vi/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/vi/token-api/evm-nfts/holders.mdx b/website/src/pages/vi/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/vi/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/vi/token-api/evm-nfts/items.mdx b/website/src/pages/vi/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/vi/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/vi/token-api/evm-nfts/ownerships.mdx b/website/src/pages/vi/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/vi/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/vi/token-api/evm-nfts/sales.mdx b/website/src/pages/vi/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/vi/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/vi/token-api/evm-nfts/transfers.mdx b/website/src/pages/vi/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/vi/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/vi/token-api/evm-tokens/_meta.js b/website/src/pages/vi/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/vi/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/vi/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/vi/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/vi/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/vi/token-api/evm-tokens/balances-native.mdx b/website/src/pages/vi/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/vi/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/vi/token-api/evm-tokens/balances.mdx b/website/src/pages/vi/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/vi/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/vi/token-api/evm-tokens/holders.mdx b/website/src/pages/vi/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/vi/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/vi/token-api/evm-tokens/tokens.mdx b/website/src/pages/vi/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/vi/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/vi/token-api/evm-tokens/transfers.mdx b/website/src/pages/vi/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/vi/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/vi/token-api/evm/_meta.js b/website/src/pages/vi/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/vi/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/vi/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/vi/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 3386fd078059..000000000000 --- a/website/src/pages/vi/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Balances by Wallet Address -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -The EVM Balances endpoint provides a snapshot of an account’s current token holdings. The endpoint returns the current balances of native and ERC-20 tokens held by a specified wallet address on an Ethereum-compatible blockchain. diff --git a/website/src/pages/vi/token-api/evm/get-dexes-evm.mdx b/website/src/pages/vi/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/vi/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/vi/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/vi/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/vi/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/vi/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/vi/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 0bb79e41ed54..000000000000 --- a/website/src/pages/vi/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -The EVM Holders endpoint provides information about the addresses holding a specific token, including each holder’s balance. This is useful for analyzing token distribution for a particular contract. diff --git a/website/src/pages/vi/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/vi/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/vi/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/vi/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/vi/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/vi/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/vi/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/vi/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/vi/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/vi/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/vi/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/vi/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/vi/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/vi/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/vi/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/vi/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/vi/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/vi/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/vi/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/vi/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/vi/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/vi/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/vi/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index d1558ddd6e78..000000000000 --- a/website/src/pages/vi/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token OHLCV prices by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -The EVM Prices endpoint provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/vi/token-api/evm/get-pools-evm.mdx b/website/src/pages/vi/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/vi/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/vi/token-api/evm/get-swaps-evm.mdx b/website/src/pages/vi/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/vi/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/vi/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/vi/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index b6fab8011fc2..000000000000 --- a/website/src/pages/vi/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Holders and Supply by Contract Address -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -The Tokens endpoint delivers contract metadata for a specific ERC-20 token contract from a supported EVM blockchain. Metadata includes name, symbol, number of holders, circulating supply, decimals, and more. diff --git a/website/src/pages/vi/token-api/evm/get-transfers-evm.mdx b/website/src/pages/vi/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/vi/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/vi/token-api/monitoring/_meta.js b/website/src/pages/vi/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/vi/token-api/monitoring/_meta.js +++ b/website/src/pages/vi/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/vi/token-api/monitoring/get-health.mdx b/website/src/pages/vi/token-api/monitoring/get-health.mdx deleted file mode 100644 index 57a827b3343b..000000000000 --- a/website/src/pages/vi/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get health status of the API -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/vi/token-api/monitoring/get-networks.mdx b/website/src/pages/vi/token-api/monitoring/get-networks.mdx deleted file mode 100644 index 0ea3c485ddb9..000000000000 --- a/website/src/pages/vi/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get supported networks of the API -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/vi/token-api/monitoring/get-version.mdx b/website/src/pages/vi/token-api/monitoring/get-version.mdx deleted file mode 100644 index 0be6b7e92d04..000000000000 --- a/website/src/pages/vi/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: Get the version of the API -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/vi/token-api/monitoring/health.mdx b/website/src/pages/vi/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/vi/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/vi/token-api/monitoring/networks.mdx b/website/src/pages/vi/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/vi/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/vi/token-api/monitoring/version.mdx b/website/src/pages/vi/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/vi/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/vi/token-api/svm-dexs/_meta.js b/website/src/pages/vi/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/vi/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/vi/token-api/svm-dexs/dexes.mdx b/website/src/pages/vi/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/vi/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/vi/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/vi/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/vi/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/vi/token-api/svm-dexs/pools.mdx b/website/src/pages/vi/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/vi/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/vi/token-api/svm-dexs/swaps.mdx b/website/src/pages/vi/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/vi/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/vi/token-api/svm-tokens/_meta.js b/website/src/pages/vi/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/vi/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/vi/token-api/svm-tokens/balances-native.mdx b/website/src/pages/vi/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/vi/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/vi/token-api/svm-tokens/balances.mdx b/website/src/pages/vi/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/vi/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/vi/token-api/svm-tokens/owner.mdx b/website/src/pages/vi/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/vi/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/vi/token-api/svm-tokens/tokens.mdx b/website/src/pages/vi/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/vi/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/vi/token-api/svm-tokens/transfers.mdx b/website/src/pages/vi/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/vi/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/vi/token-api/svm/_meta.js b/website/src/pages/vi/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/vi/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/vi/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/vi/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/vi/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/vi/token-api/svm/get-balances-svm.mdx b/website/src/pages/vi/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/vi/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/vi/token-api/svm/get-dexes-svm.mdx b/website/src/pages/vi/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/vi/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/vi/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/vi/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/vi/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/vi/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/vi/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/vi/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/vi/token-api/svm/get-swaps-svm.mdx b/website/src/pages/vi/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/vi/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/vi/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/vi/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/vi/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/vi/token-api/svm/get-transfers-svm.mdx b/website/src/pages/vi/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/vi/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/vi/token-api/upgrade-to-v1.mdx b/website/src/pages/vi/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/vi/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data. diff --git a/website/src/pages/zh/token-api/_meta.js b/website/src/pages/zh/token-api/_meta.js index fb7f7334ea0c..6161cf8b7aeb 100644 --- a/website/src/pages/zh/token-api/_meta.js +++ b/website/src/pages/zh/token-api/_meta.js @@ -2,8 +2,13 @@ import titles from './_meta-titles.json' export default { 'quick-start': '', - evm: titles.evm ?? '', - svm: titles.svm ?? '', - monitoring: titles.monitoring ?? '', + 'evm-tokens': titles['evm-tokens'] ?? '', + 'evm-dexs': titles['evm-dexs'] ?? '', + 'evm-nfts': titles['evm-nfts'] ?? '', + 'svm-tokens': titles['svm-tokens'] ?? '', + 'svm-dexs': titles['svm-dexs'] ?? '', + monitoring: titles['monitoring'] ?? '', + 'endpoint-pricing': '', faq: '', + 'upgrade-to-v1': '', } diff --git a/website/src/pages/zh/token-api/endpoint-pricing.mdx b/website/src/pages/zh/token-api/endpoint-pricing.mdx new file mode 100644 index 000000000000..611f233f5bb9 --- /dev/null +++ b/website/src/pages/zh/token-api/endpoint-pricing.mdx @@ -0,0 +1,51 @@ +--- +title: Endpoint Pricing +--- + +## Metadata Endpoints + +| Endpoint | Price | +| ----------------------- | ------------------- | +| GET /v1/health | Free | +| GET /v1/version | Free | +| GET /v1/networks | Free | +| GET /v1/evm/tokens | $15/million queries | +| GET /v1/evm/balances | $15/million queries | +| GET /v1/evm/pools | $15/million queries | +| GET /v1/evm/dexes | $15/million queries | +| GET /v1/evm/nft/holders | $15/million queries | +| GET /v1/evm/nft/items | $15/million queries | +| GET /v1/svm/tokens | $15/million queries | +| GET /v1/svm/owner | $15/million queries | +| GET /v1/svm/holders | $15/million queries | +| GET /v1/svm/dexes | $15/million queries | + +## Activity Endpoints + +| Endpoint | Price | +| --------------------------- | ------------------- | +| GET /v1/evm/nft/transfers | $50/million queries | +| GET /v1/evm/transfers | $50/million queries | +| GET /v1/evm/nft/collections | $50/million queries | +| GET /v1/evm/nft/ownerships | $50/million queries | +| GET /v1/evm/nft/sales | $50/million queries | + +## Balance Endpoints + +| Endpoint | Price | +| ------------------------------- | -------------------- | +| GET /v1/evm/holders | $200/million queries | +| GET /v1/evm/balances/historical | $200/million queries | +| GET /v1/evm/swaps | $400/million queries | +| GET /v1/svm/balances | $200/million queries | +| GET /v1/svm/balances/native | $200/million queries | +| GET /v1/svm/transfers | $200/million queries | +| GET /v1/svm/swaps | $200/million queries | +| GET /v1/svm/pools | $200/million queries | + +## Historical Price Endpoints + +| Endpoint | Price | +| ---------------------- | -------------------- | +| GET /v1/evm/pools/ohlc | $400/million queries | +| GET /v1/svm/pools/ohlc | $400/million queries | diff --git a/website/src/pages/zh/token-api/evm-dexs/_meta.js b/website/src/pages/zh/token-api/evm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/zh/token-api/evm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/zh/token-api/evm-dexs/dexes.mdx b/website/src/pages/zh/token-api/evm-dexs/dexes.mdx new file mode 100644 index 000000000000..5b3aa0969af4 --- /dev/null +++ b/website/src/pages/zh/token-api/evm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmDexes +--- + +Returns supported EVM DEXs. diff --git a/website/src/pages/zh/token-api/evm-dexs/pools-ohlc.mdx b/website/src/pages/zh/token-api/evm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..7bcda1650d43 --- /dev/null +++ b/website/src/pages/zh/token-api/evm-dexs/pools-ohlc.mdx @@ -0,0 +1,11 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPoolsOhlc +--- + +Returns OHLCV price data for liquidity pools. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/zh/token-api/evm-dexs/pools.mdx b/website/src/pages/zh/token-api/evm-dexs/pools.mdx new file mode 100644 index 000000000000..5cdd6b65d534 --- /dev/null +++ b/website/src/pages/zh/token-api/evm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmPools +--- + +Returns Uniswap liquidity pool metadata including token pairs, fees, and protocol versions. diff --git a/website/src/pages/zh/token-api/evm-dexs/swaps.mdx b/website/src/pages/zh/token-api/evm-dexs/swaps.mdx new file mode 100644 index 000000000000..a3b3148a1582 --- /dev/null +++ b/website/src/pages/zh/token-api/evm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmSwaps +--- + +Returns DEX swap transactions from Uniswap protocols with token amounts and prices. diff --git a/website/src/pages/zh/token-api/evm-nfts/_meta.js b/website/src/pages/zh/token-api/evm-nfts/_meta.js new file mode 100644 index 000000000000..cf28cdab3c1a --- /dev/null +++ b/website/src/pages/zh/token-api/evm-nfts/_meta.js @@ -0,0 +1,8 @@ +export default { + collections: '', + holders: '', + items: '', + ownerships: '', + sales: '', + transfers: '', +} diff --git a/website/src/pages/zh/token-api/evm-nfts/collections.mdx b/website/src/pages/zh/token-api/evm-nfts/collections.mdx new file mode 100644 index 000000000000..b4f66107475c --- /dev/null +++ b/website/src/pages/zh/token-api/evm-nfts/collections.mdx @@ -0,0 +1,16 @@ +--- +title: NFT Collection +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftCollections +--- + +Returns NFT collection metadata, supply stats, owner count, and transfer history. + +The `spam_status` flag indicates if the NFT is likely spam. If status shows `pending`, retry in a few seconds. + +Spam detection is supported for: + +- mainnet +- base diff --git a/website/src/pages/zh/token-api/evm-nfts/holders.mdx b/website/src/pages/zh/token-api/evm-nfts/holders.mdx new file mode 100644 index 000000000000..b9de134c00e2 --- /dev/null +++ b/website/src/pages/zh/token-api/evm-nfts/holders.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftHolders +--- + +Returns wallet addresses holding NFT collection tokens with quantity and percentage distribution. diff --git a/website/src/pages/zh/token-api/evm-nfts/items.mdx b/website/src/pages/zh/token-api/evm-nfts/items.mdx new file mode 100644 index 000000000000..ae78e867b143 --- /dev/null +++ b/website/src/pages/zh/token-api/evm-nfts/items.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Items +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftItems +--- + +Returns NFT token metadata, attributes, current owner, and media URIs. diff --git a/website/src/pages/zh/token-api/evm-nfts/ownerships.mdx b/website/src/pages/zh/token-api/evm-nfts/ownerships.mdx new file mode 100644 index 000000000000..d3ebd7f772b2 --- /dev/null +++ b/website/src/pages/zh/token-api/evm-nfts/ownerships.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Ownerships by Address +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftOwnerships +--- + +Returns NFT tokens owned by a wallet address with metadata and ownership information. diff --git a/website/src/pages/zh/token-api/evm-nfts/sales.mdx b/website/src/pages/zh/token-api/evm-nfts/sales.mdx new file mode 100644 index 000000000000..dfb27f946162 --- /dev/null +++ b/website/src/pages/zh/token-api/evm-nfts/sales.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Sales +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftSales +--- + +Returns NFT marketplace sales with price, buyer, seller, and transaction data. diff --git a/website/src/pages/zh/token-api/evm-nfts/transfers.mdx b/website/src/pages/zh/token-api/evm-nfts/transfers.mdx new file mode 100644 index 000000000000..88c748d0e1b8 --- /dev/null +++ b/website/src/pages/zh/token-api/evm-nfts/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: NFT Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmNftTransfers +--- + +Returns NFT transfer events including mints, burns, and ownership changes. diff --git a/website/src/pages/zh/token-api/evm-tokens/_meta.js b/website/src/pages/zh/token-api/evm-tokens/_meta.js new file mode 100644 index 000000000000..8098de7e23ab --- /dev/null +++ b/website/src/pages/zh/token-api/evm-tokens/_meta.js @@ -0,0 +1,8 @@ +export default { + 'balances-historical': '', + 'balances-native': '', + balances: '', + holders: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/zh/token-api/evm-tokens/balances-historical.mdx b/website/src/pages/zh/token-api/evm-tokens/balances-historical.mdx new file mode 100644 index 000000000000..fc7239bea8b9 --- /dev/null +++ b/website/src/pages/zh/token-api/evm-tokens/balances-historical.mdx @@ -0,0 +1,11 @@ +--- +title: Historical Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesHistorical +--- + +Returns wallet token balance changes over time in OHLCV format. + +OHLCV historical depth is subject to plan restrictions. diff --git a/website/src/pages/zh/token-api/evm-tokens/balances-native.mdx b/website/src/pages/zh/token-api/evm-tokens/balances-native.mdx new file mode 100644 index 000000000000..5c3f9f237648 --- /dev/null +++ b/website/src/pages/zh/token-api/evm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalancesNative +--- + +Returns EVM native balances for wallet addresses. diff --git a/website/src/pages/zh/token-api/evm-tokens/balances.mdx b/website/src/pages/zh/token-api/evm-tokens/balances.mdx new file mode 100644 index 000000000000..5cb634f740c2 --- /dev/null +++ b/website/src/pages/zh/token-api/evm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmBalances +--- + +Returns ERC-20 token balances for a wallet address. diff --git a/website/src/pages/zh/token-api/evm-tokens/holders.mdx b/website/src/pages/zh/token-api/evm-tokens/holders.mdx new file mode 100644 index 000000000000..caaf96ad62db --- /dev/null +++ b/website/src/pages/zh/token-api/evm-tokens/holders.mdx @@ -0,0 +1,9 @@ +--- +title: Token Holders +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmHolders +--- + +Returns top token holders ranked by balance. diff --git a/website/src/pages/zh/token-api/evm-tokens/tokens.mdx b/website/src/pages/zh/token-api/evm-tokens/tokens.mdx new file mode 100644 index 000000000000..d4ff4aca81be --- /dev/null +++ b/website/src/pages/zh/token-api/evm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTokens +--- + +Returns ERC-20 token metadata including supply and holder count. diff --git a/website/src/pages/zh/token-api/evm-tokens/transfers.mdx b/website/src/pages/zh/token-api/evm-tokens/transfers.mdx new file mode 100644 index 000000000000..48f722f3ba86 --- /dev/null +++ b/website/src/pages/zh/token-api/evm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1EvmTransfers +--- + +Returns ERC-20 and native token transfers with transaction and block data. diff --git a/website/src/pages/zh/token-api/evm/_meta.js b/website/src/pages/zh/token-api/evm/_meta.js deleted file mode 100644 index 0049d0fccc7b..000000000000 --- a/website/src/pages/zh/token-api/evm/_meta.js +++ /dev/null @@ -1,11 +0,0 @@ -export default { - 'get-balances-evm-by-address': '', - 'get-historical-balances-evm-by-address': '', - 'get-transfers-evm': '', - 'get-swaps-evm': '', - 'get-holders-evm-by-contract': '', - 'get-tokens-evm-by-contract': '', - 'get-pools-evm': '', - 'get-ohlc-prices-evm-by-contract': '', - 'get-ohlc-pools-evm-by-pool': '', -} diff --git a/website/src/pages/zh/token-api/evm/get-balances-evm-by-address.mdx b/website/src/pages/zh/token-api/evm/get-balances-evm-by-address.mdx deleted file mode 100644 index 799a52e67504..000000000000 --- a/website/src/pages/zh/token-api/evm/get-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: 钱包地址代币余额 -template: - type: openApi - apiId: tokenApi - operationId: getBalancesEvmByAddress ---- - -EVM 余额端点提供了帐户当前代币持有情况的快照。 端点返回本地和ERC-20代币的当前余额,这些代币由一个指定的钱包地址在一个兼容的Etherum-blockchain上持有。 diff --git a/website/src/pages/zh/token-api/evm/get-dexes-evm.mdx b/website/src/pages/zh/token-api/evm/get-dexes-evm.mdx deleted file mode 100644 index a7c4d6bd9a7d..000000000000 --- a/website/src/pages/zh/token-api/evm/get-dexes-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesEvm ---- - -Returns supported EVM DEXs. diff --git a/website/src/pages/zh/token-api/evm/get-historical-balances-evm-by-address.mdx b/website/src/pages/zh/token-api/evm/get-historical-balances-evm-by-address.mdx deleted file mode 100644 index d96ed1b81fa2..000000000000 --- a/website/src/pages/zh/token-api/evm/get-historical-balances-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Historical Balances -template: - type: openApi - apiId: tokenApi - operationId: getHistoricalBalancesEvmByAddress ---- - -Provides historical ERC-20 & Native balances by wallet address. diff --git a/website/src/pages/zh/token-api/evm/get-holders-evm-by-contract.mdx b/website/src/pages/zh/token-api/evm/get-holders-evm-by-contract.mdx deleted file mode 100644 index 8c3776959410..000000000000 --- a/website/src/pages/zh/token-api/evm/get-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: 按合约地址分类的代币持有人 -template: - type: openApi - apiId: tokenApi - operationId: getHoldersEvmByContract ---- - -EVM 控件端点提供关于持有特定代币地址的信息,包括每个控件持有人的余额。 这有助于分析特定合约的代币分布情况。 diff --git a/website/src/pages/zh/token-api/evm/get-nft-activities-evm.mdx b/website/src/pages/zh/token-api/evm/get-nft-activities-evm.mdx deleted file mode 100644 index f76eb35f653a..000000000000 --- a/website/src/pages/zh/token-api/evm/get-nft-activities-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Activities -template: - type: openApi - apiId: tokenApi - operationId: getNftActivitiesEvm ---- - -Provides NFT Activities (ex: transfers, mints & burns). diff --git a/website/src/pages/zh/token-api/evm/get-nft-collections-evm-by-contract.mdx b/website/src/pages/zh/token-api/evm/get-nft-collections-evm-by-contract.mdx deleted file mode 100644 index c8e9bfb64219..000000000000 --- a/website/src/pages/zh/token-api/evm/get-nft-collections-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Collection -template: - type: openApi - apiId: tokenApi - operationId: getNftCollectionsEvmByContract ---- - -Provides single NFT collection metadata, total supply, owners & total transfers. diff --git a/website/src/pages/zh/token-api/evm/get-nft-holders-evm-by-contract.mdx b/website/src/pages/zh/token-api/evm/get-nft-holders-evm-by-contract.mdx deleted file mode 100644 index 091d01a197f4..000000000000 --- a/website/src/pages/zh/token-api/evm/get-nft-holders-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Holders -template: - type: openApi - apiId: tokenApi - operationId: getNftHoldersEvmByContract ---- - -Provides NFT holders per contract. diff --git a/website/src/pages/zh/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx b/website/src/pages/zh/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx deleted file mode 100644 index cf9ff1c6e1b8..000000000000 --- a/website/src/pages/zh/token-api/evm/get-nft-items-evm-contract-by-contract-token_id-by-token_id.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Items -template: - type: openApi - apiId: tokenApi - operationId: getNftItemsEvmContractByContractToken_idByToken_id ---- - -Provides single NFT token metadata, ownership & traits. diff --git a/website/src/pages/zh/token-api/evm/get-nft-ownerships-evm-by-address.mdx b/website/src/pages/zh/token-api/evm/get-nft-ownerships-evm-by-address.mdx deleted file mode 100644 index 4c33526eceb7..000000000000 --- a/website/src/pages/zh/token-api/evm/get-nft-ownerships-evm-by-address.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Ownerships -template: - type: openApi - apiId: tokenApi - operationId: getNftOwnershipsEvmByAddress ---- - -Provides NFT Ownerships for Account. diff --git a/website/src/pages/zh/token-api/evm/get-nft-sales-evm.mdx b/website/src/pages/zh/token-api/evm/get-nft-sales-evm.mdx deleted file mode 100644 index f2d78bea4052..000000000000 --- a/website/src/pages/zh/token-api/evm/get-nft-sales-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: NFT Sales -template: - type: openApi - apiId: tokenApi - operationId: getNftSalesEvm ---- - -Provides latest NFT marketplace sales. diff --git a/website/src/pages/zh/token-api/evm/get-ohlc-pools-evm-by-pool.mdx b/website/src/pages/zh/token-api/evm/get-ohlc-pools-evm-by-pool.mdx deleted file mode 100644 index d5bc5357eadf..000000000000 --- a/website/src/pages/zh/token-api/evm/get-ohlc-pools-evm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: OHLCV by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsEvmByPool ---- - -Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/zh/token-api/evm/get-ohlc-prices-evm-by-contract.mdx b/website/src/pages/zh/token-api/evm/get-ohlc-prices-evm-by-contract.mdx deleted file mode 100644 index 086b1d8a5dc3..000000000000 --- a/website/src/pages/zh/token-api/evm/get-ohlc-prices-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: 按合约地址列出的代币OHLCV价格 -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPricesEvmByContract ---- - -EVM 价格端点以Open/High/Low/Close/Volume (OHCLV) 格式提供定价数据。 diff --git a/website/src/pages/zh/token-api/evm/get-pools-evm.mdx b/website/src/pages/zh/token-api/evm/get-pools-evm.mdx deleted file mode 100644 index db32376f5a17..000000000000 --- a/website/src/pages/zh/token-api/evm/get-pools-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Liquidity Pools -template: - type: openApi - apiId: tokenApi - operationId: getPoolsEvm ---- - -Provides Uniswap V2 & V3 liquidity pool metadata. diff --git a/website/src/pages/zh/token-api/evm/get-swaps-evm.mdx b/website/src/pages/zh/token-api/evm/get-swaps-evm.mdx deleted file mode 100644 index 0a7697f38c8b..000000000000 --- a/website/src/pages/zh/token-api/evm/get-swaps-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsEvm ---- - -Provides Uniswap V2 & V3 swap events. diff --git a/website/src/pages/zh/token-api/evm/get-tokens-evm-by-contract.mdx b/website/src/pages/zh/token-api/evm/get-tokens-evm-by-contract.mdx deleted file mode 100644 index bb65c736edef..000000000000 --- a/website/src/pages/zh/token-api/evm/get-tokens-evm-by-contract.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: 代币持有人和按合约地址的供应 -template: - type: openApi - apiId: tokenApi - operationId: getTokensEvmByContract ---- - -代币端点提供了来自支持的EVM区块链的具体ERC-20代币合约的元数据。 元数据包括名称、符号、持有者人数、循环供应、小数等等。 diff --git a/website/src/pages/zh/token-api/evm/get-transfers-evm.mdx b/website/src/pages/zh/token-api/evm/get-transfers-evm.mdx deleted file mode 100644 index d8e73c90a03c..000000000000 --- a/website/src/pages/zh/token-api/evm/get-transfers-evm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersEvm ---- - -Provides ERC-20 & Native transfer events. diff --git a/website/src/pages/zh/token-api/monitoring/_meta.js b/website/src/pages/zh/token-api/monitoring/_meta.js index 61e7f073c1fb..7905c8d46fe8 100644 --- a/website/src/pages/zh/token-api/monitoring/_meta.js +++ b/website/src/pages/zh/token-api/monitoring/_meta.js @@ -1,5 +1,5 @@ export default { - 'get-networks': '', - 'get-version': '', - 'get-health': '', + health: '', + networks: '', + version: '', } diff --git a/website/src/pages/zh/token-api/monitoring/get-health.mdx b/website/src/pages/zh/token-api/monitoring/get-health.mdx deleted file mode 100644 index ca7c078746e0..000000000000 --- a/website/src/pages/zh/token-api/monitoring/get-health.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: 获取 API 的健康状况 -template: - type: openApi - apiId: tokenApi - operationId: getHealth ---- diff --git a/website/src/pages/zh/token-api/monitoring/get-networks.mdx b/website/src/pages/zh/token-api/monitoring/get-networks.mdx deleted file mode 100644 index b54ba746cf5d..000000000000 --- a/website/src/pages/zh/token-api/monitoring/get-networks.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: 获取 API 的支持网络 -template: - type: openApi - apiId: tokenApi - operationId: getNetworks ---- diff --git a/website/src/pages/zh/token-api/monitoring/get-version.mdx b/website/src/pages/zh/token-api/monitoring/get-version.mdx deleted file mode 100644 index 3f7d769d7135..000000000000 --- a/website/src/pages/zh/token-api/monitoring/get-version.mdx +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: 获取API版本 -template: - type: openApi - apiId: tokenApi - operationId: getVersion ---- diff --git a/website/src/pages/zh/token-api/monitoring/health.mdx b/website/src/pages/zh/token-api/monitoring/health.mdx new file mode 100644 index 000000000000..a4ac581c99ee --- /dev/null +++ b/website/src/pages/zh/token-api/monitoring/health.mdx @@ -0,0 +1,11 @@ +--- +title: Health Check +template: + type: openApi + apiId: tokenApi + operationId: getV1Health +--- + +Returns API operational status and dependency health with optional endpoint testing. + +Use `skip_endpoints` to bypass endpoint responses checks. diff --git a/website/src/pages/zh/token-api/monitoring/networks.mdx b/website/src/pages/zh/token-api/monitoring/networks.mdx new file mode 100644 index 000000000000..a29d27b4cf81 --- /dev/null +++ b/website/src/pages/zh/token-api/monitoring/networks.mdx @@ -0,0 +1,9 @@ +--- +title: Supported Networks +template: + type: openApi + apiId: tokenApi + operationId: getV1Networks +--- + +Returns supported blockchain networks with identifiers and metadata. diff --git a/website/src/pages/zh/token-api/monitoring/version.mdx b/website/src/pages/zh/token-api/monitoring/version.mdx new file mode 100644 index 000000000000..6ae341acc17d --- /dev/null +++ b/website/src/pages/zh/token-api/monitoring/version.mdx @@ -0,0 +1,9 @@ +--- +title: API Version Info +template: + type: openApi + apiId: tokenApi + operationId: getV1Version +--- + +Returns API version, build date, and commit information. diff --git a/website/src/pages/zh/token-api/svm-dexs/_meta.js b/website/src/pages/zh/token-api/svm-dexs/_meta.js new file mode 100644 index 000000000000..df1d9ecf4a6b --- /dev/null +++ b/website/src/pages/zh/token-api/svm-dexs/_meta.js @@ -0,0 +1,6 @@ +export default { + dexes: '', + 'pools-ohlc': '', + pools: '', + swaps: '', +} diff --git a/website/src/pages/zh/token-api/svm-dexs/dexes.mdx b/website/src/pages/zh/token-api/svm-dexs/dexes.mdx new file mode 100644 index 000000000000..7ff60161efae --- /dev/null +++ b/website/src/pages/zh/token-api/svm-dexs/dexes.mdx @@ -0,0 +1,9 @@ +--- +title: Supported DEXs +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmDexes +--- + +Returns supported Solana DEXs. diff --git a/website/src/pages/zh/token-api/svm-dexs/pools-ohlc.mdx b/website/src/pages/zh/token-api/svm-dexs/pools-ohlc.mdx new file mode 100644 index 000000000000..547a886f1f5e --- /dev/null +++ b/website/src/pages/zh/token-api/svm-dexs/pools-ohlc.mdx @@ -0,0 +1,9 @@ +--- +title: Pool OHLCV Data +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPoolsOhlc +--- + +Provides pricing data in the Open/High/Low/Close/Volume (OHCLV) format for DEX pools. diff --git a/website/src/pages/zh/token-api/svm-dexs/pools.mdx b/website/src/pages/zh/token-api/svm-dexs/pools.mdx new file mode 100644 index 000000000000..9a142c3dc92a --- /dev/null +++ b/website/src/pages/zh/token-api/svm-dexs/pools.mdx @@ -0,0 +1,9 @@ +--- +title: Liquidity Pools +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmPools +--- + +Returns AMM pool information from Solana DEX protocols with transaction counts. diff --git a/website/src/pages/zh/token-api/svm-dexs/swaps.mdx b/website/src/pages/zh/token-api/svm-dexs/swaps.mdx new file mode 100644 index 000000000000..d4a926108511 --- /dev/null +++ b/website/src/pages/zh/token-api/svm-dexs/swaps.mdx @@ -0,0 +1,9 @@ +--- +title: Swap Events +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmSwaps +--- + +Returns AMM swap events from Solana DEXs with input/output tokens and amounts. diff --git a/website/src/pages/zh/token-api/svm-tokens/_meta.js b/website/src/pages/zh/token-api/svm-tokens/_meta.js new file mode 100644 index 000000000000..78cef8966836 --- /dev/null +++ b/website/src/pages/zh/token-api/svm-tokens/_meta.js @@ -0,0 +1,7 @@ +export default { + 'balances-native': '', + balances: '', + owner: '', + tokens: '', + transfers: '', +} diff --git a/website/src/pages/zh/token-api/svm-tokens/balances-native.mdx b/website/src/pages/zh/token-api/svm-tokens/balances-native.mdx new file mode 100644 index 000000000000..1264519ccb97 --- /dev/null +++ b/website/src/pages/zh/token-api/svm-tokens/balances-native.mdx @@ -0,0 +1,9 @@ +--- +title: Native Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalancesNative +--- + +Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/zh/token-api/svm-tokens/balances.mdx b/website/src/pages/zh/token-api/svm-tokens/balances.mdx new file mode 100644 index 000000000000..65146b2525fd --- /dev/null +++ b/website/src/pages/zh/token-api/svm-tokens/balances.mdx @@ -0,0 +1,9 @@ +--- +title: Token Balances +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmBalances +--- + +Returns SPL token balances for Solana token owners with mint and program data. diff --git a/website/src/pages/zh/token-api/svm-tokens/owner.mdx b/website/src/pages/zh/token-api/svm-tokens/owner.mdx new file mode 100644 index 000000000000..65bc50d9a321 --- /dev/null +++ b/website/src/pages/zh/token-api/svm-tokens/owner.mdx @@ -0,0 +1,9 @@ +--- +title: Account Owner Lookup +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmOwner +--- + +Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/zh/token-api/svm-tokens/tokens.mdx b/website/src/pages/zh/token-api/svm-tokens/tokens.mdx new file mode 100644 index 000000000000..c6c37ef458d1 --- /dev/null +++ b/website/src/pages/zh/token-api/svm-tokens/tokens.mdx @@ -0,0 +1,9 @@ +--- +title: Token Metadata +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTokens +--- + +Provides SVM token contract metadata. diff --git a/website/src/pages/zh/token-api/svm-tokens/transfers.mdx b/website/src/pages/zh/token-api/svm-tokens/transfers.mdx new file mode 100644 index 000000000000..2bbb89588916 --- /dev/null +++ b/website/src/pages/zh/token-api/svm-tokens/transfers.mdx @@ -0,0 +1,9 @@ +--- +title: Token Transfers +template: + type: openApi + apiId: tokenApi + operationId: getV1SvmTransfers +--- + +Returns SPL token transfers with program, authority, and account information. diff --git a/website/src/pages/zh/token-api/svm/_meta.js b/website/src/pages/zh/token-api/svm/_meta.js deleted file mode 100644 index 8a949cb4d28a..000000000000 --- a/website/src/pages/zh/token-api/svm/_meta.js +++ /dev/null @@ -1,8 +0,0 @@ -export default { - 'get-balances-svm': '', - 'get-balances-native-svm': '', - 'get-owner-svm-by-account': '', - 'get-transfers-svm': '', - 'get-swaps-svm': '', - 'get-ohlc-pools-svm-by-pool': '', -} diff --git a/website/src/pages/zh/token-api/svm/get-balances-native-svm.mdx b/website/src/pages/zh/token-api/svm/get-balances-native-svm.mdx deleted file mode 100644 index 0c59cb422820..000000000000 --- a/website/src/pages/zh/token-api/svm/get-balances-native-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Native Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesNativeSvm ---- - -Returns SOL native balances for wallet addresses. diff --git a/website/src/pages/zh/token-api/svm/get-balances-svm.mdx b/website/src/pages/zh/token-api/svm/get-balances-svm.mdx deleted file mode 100644 index c2946c190bf9..000000000000 --- a/website/src/pages/zh/token-api/svm/get-balances-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Balances -template: - type: openApi - apiId: tokenApi - operationId: getBalancesSvm ---- - -Provides Solana tokens balances by token account address. diff --git a/website/src/pages/zh/token-api/svm/get-dexes-svm.mdx b/website/src/pages/zh/token-api/svm/get-dexes-svm.mdx deleted file mode 100644 index 5fb03ad41534..000000000000 --- a/website/src/pages/zh/token-api/svm/get-dexes-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Supported DEXs -template: - type: openApi - apiId: tokenApi - operationId: getDexesSvm ---- - -Returns supported Solana DEXs. diff --git a/website/src/pages/zh/token-api/svm/get-ohlc-pools-svm-by-pool.mdx b/website/src/pages/zh/token-api/svm/get-ohlc-pools-svm-by-pool.mdx deleted file mode 100644 index af58f74d3066..000000000000 --- a/website/src/pages/zh/token-api/svm/get-ohlc-pools-svm-by-pool.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana OHLCV prices (SOL) by Pool -template: - type: openApi - apiId: tokenApi - operationId: getOhlcPoolsSvmByPool ---- - -Provides pricing data in native SOL in the Open/High/Low/Close/Volume (OHCLV) format. diff --git a/website/src/pages/zh/token-api/svm/get-owner-svm-by-account.mdx b/website/src/pages/zh/token-api/svm/get-owner-svm-by-account.mdx deleted file mode 100644 index 9fe100013000..000000000000 --- a/website/src/pages/zh/token-api/svm/get-owner-svm-by-account.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Solana Account Owner Lookup -template: - type: openApi - apiId: tokenApi - operationId: getOwnerSvmByAccount ---- - -Returns owner address of an associated token account (ATA) with closure status. diff --git a/website/src/pages/zh/token-api/svm/get-swaps-svm.mdx b/website/src/pages/zh/token-api/svm/get-swaps-svm.mdx deleted file mode 100644 index 95282a38ac9f..000000000000 --- a/website/src/pages/zh/token-api/svm/get-swaps-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Swap Events -template: - type: openApi - apiId: tokenApi - operationId: getSwapsSvm ---- - -Provides Raydium swap events. diff --git a/website/src/pages/zh/token-api/svm/get-tokens-svm-by-mint.mdx b/website/src/pages/zh/token-api/svm/get-tokens-svm-by-mint.mdx deleted file mode 100644 index aee1e1e288c3..000000000000 --- a/website/src/pages/zh/token-api/svm/get-tokens-svm-by-mint.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Token Metadata -template: - type: openApi - apiId: tokenApi - operationId: getTokensSvmByMint ---- - -Provides SVM token contract metadata. diff --git a/website/src/pages/zh/token-api/svm/get-transfers-svm.mdx b/website/src/pages/zh/token-api/svm/get-transfers-svm.mdx deleted file mode 100644 index ac297d86dd7a..000000000000 --- a/website/src/pages/zh/token-api/svm/get-transfers-svm.mdx +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: Transfer Events -template: - type: openApi - apiId: tokenApi - operationId: getTransfersSvm ---- - -Provides SVM transfer events. diff --git a/website/src/pages/zh/token-api/upgrade-to-v1.mdx b/website/src/pages/zh/token-api/upgrade-to-v1.mdx new file mode 100644 index 000000000000..fbe09101eaa5 --- /dev/null +++ b/website/src/pages/zh/token-api/upgrade-to-v1.mdx @@ -0,0 +1,254 @@ +--- +title: Upgrade to v1 +--- + +This guide covers the migration from the legacy API structure to the new v1 API. The refactoring introduces versioned endpoints, standardized query parameters, improved batching support, and consistent naming conventions. + +**Note** + +- `EVM` = Ethereum Virtual Machine + +Used to describe endpoints supporting EVM-based chains (e.g. `base`, `bsc`, `mainnet`, ...). + +- `SVM` = Solana Virtual Machine + +Used to describe endpoints supporting Solana (currently the only SVM chain supported). + +## 🔑 Breaking Changes Summary + +### 1. **API Versioning** + +All endpoints now use the `/v1` prefix. + +**Before:** + +``` +GET /balances/evm +GET /nft/items/contract/:contract/token_id/:token_id +``` + +**After:** + +``` +GET /v1/evm/balances +GET /v1/evm/nft/items +``` + +### 2. **Route Structure Reorganization** + +#### 2.1 EVM Endpoints + +Consolidated under `/v1/evm/*` + +| Old Endpoint | New Endpoint | +| ------------------------------------------------------ | ----------------------------- | +| `/balances/evm` | `/v1/evm/balances` | +| `/historical/balances/evm` | `/v1/evm/balances/historical` | +| `/holders/evm/:contract` | `/v1/evm/holders` | +| `/tokens/evm/:contract` | `/v1/evm/tokens` | +| `/transfers/evm` | `/v1/evm/transfers` | +| `/pools/evm` | `/v1/evm/pools` | +| `/swaps/evm` | `/v1/evm/swaps` | +| `/dexes/evm` | `/v1/evm/dexes` | +| `/ohlc/prices/evm/:contract` | _(removed)_ | +| `/ohlc/pools/evm/:pool` | `/v1/evm/pools/ohlc` | +| `/nft/ownerships/evm/:address` | `/v1/evm/nft/ownerships` | +| `/nft/collections/evm/:contract` | `/v1/evm/nft/collections` | +| `/nft/items/evm/contract/:contract/token_id/:token_id` | `/v1/evm/nft/items` | +| `/nft/holders/evm/:contract` | `/v1/evm/nft/holders` | +| `/nft/activities/evm` | `/v1/evm/nft/transfers` | +| `/nft/sales/evm` | `/v1/evm/nft/sales` | + +**Important:** The NFT endpoint `/nft/activities` has been renamed to `/v1/evm/nft/transfers` to better reflect its purpose. + +**Important:** The EVM Token OHLCV Data endpoint `/ohlc/prices/evm/{contract}` has been removed. You can use `/v1/evm/pools` to find stablecoin pairs for your contract and `/v1/evm/pools/ohlc` for OHLCV data for that pair. + +--- + +#### 2.2 New EVM native balances endpoint + +Native balances for EVM chains can be found under `/v1/evm/balances/native`. They will not show up in the `/v1/evm/balances` endpoint. + +Other endpoints can still use native token under the `0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee` contract. + +--- + +#### 2.3 SVM Endpoints + +Consolidated under `/v1/svm/*` + +| Old Endpoint | New Endpoint | +| ------------------------ | ------------------------- | +| `/balances/svm` | `/v1/svm/balances` | +| `/balances/native/svm` | `/v1/svm/balances/native` | +| `/holders/svm/:contract` | `/v1/svm/holders` | +| `/tokens/svm/:mint` | `/v1/svm/tokens` | +| `/transfers/svm` | `/v1/svm/transfers` | +| `/pools/svm` | `/v1/svm/pools` | +| `/swaps/svm` | `/v1/svm/swaps` | +| `/dexes/svm` | `/v1/svm/dexes` | +| `/owner/svm/:account` | `/v1/svm/owner` | +| `/ohlc/pools/svm/:pool` | `/v1/svm/pools/ohlc` | + +## 📝 Parameter Changes + +### 3. **Path Parameters → Query Parameters** + +All path parameters have been moved to query parameters. + +**Before:** + +```bash +GET /balances/evm/:address +GET /holders/evm/:contract +GET /nft/items/evm/contract/:contract/token_id/:token_id +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0x... +GET /v1/evm/holders?network=mainnet&contract=0x... +GET /v1/evm/nft/items?network=mainnet&contract=0x...&token_id=5712 +``` + +### 4. **Standardized Parameter Naming** + +All query parameters have been standardized to use snake_case naming convention. + +| Old Parameter | New Parameter | Notes | +| --- | --- | --- | +| `network_id` | `network` | Renamed, `matic` has also been renamed to `polygon` | +| `anyAddress` | `address` | Matches either `from` or `to` address | +| `from`, `fromAddress`, `offererAddress` | `from_address`, `offerer` | - | +| `to`, `toAddress`, `recipientAddress` | `to_address`, `recipient` | - | +| `startTime` | `start_time` | Default: `1735689600` (`2025-01-01`) | +| `endTime` | `end_time` | Default: `9999999999` | +| - | `start_block` | New parameter, default: `0` | +| - | `end_block` | New parameter, default: `9999999999` | +| - | `include_null_balances` | New parameter, default: `false` | +| `tx_hash` | `transaction_id` | - | +| `token` | `input_token`, `output_token` | More explicit for pool queries | +| `pool` | `amm_pool` | - | +| `orderBy`, `orderDirection` | _(removed)_ | Always sorted by most recent timestamp first | + +**Important:** The `network_id` parameter has been renamed to `network`. + +**Important:** `matic` network has been renamed to `polygon`. + +### 5. **Batched Parameters** + +Many parameters now support batching - accepting single values or comma-separated strings. + +**Supported Batched Parameters:** + +- `address`, `from_address`, `to_address` +- `contract`, `token_id` +- `factory`, `pool` +- `owner`, `token_account`, `mint` +- `transaction_id`, `signature` + +**Examples:** + +```console +# Single value +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 + +# Comma-separated, single parameter +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 + +# Repeated parameter values +?contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2&contract=0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +### 6. **New Parameters** + +#### `include_null_balances` + +Added to balance endpoints to optionally include zero/null balances. + +```bash +?include_null_balances=true +``` + +**Default:** `false` + +## 🔄 Response Changes + +### 7. **Pagination Changes** + +Pagination responses have been simplified. The API no longer computes total result counts due to performance and accuracy considerations when working with ClickHouse views and materialized tables. + +**Before:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2, + "next_page": 3, + "total_pages": 10 + }, + "total_results": 1234 +} +``` + +**After:** + +```json +{ + "pagination": { + "previous_page": 1, + "current_page": 2 + } +} +``` + +**Removed fields:** + +- `next_page` +- `total_pages` +- `total_results` + +**Important:** To retrieve all results, continue incrementing the `page` parameter until the API returns an empty `data` array. This indicates you've reached the end of the results. + +### 8. **Removed Parameters** + +The following deprecated parameters have been removed: + +- `orderBy` - Results are now ordered by timestamp/block by default +- `orderDirection` - Always descending (newest first) + +## 📚 Example Migrations + +### Old vs New: Get Token Balances + +**Before:** + +```bash +GET /balances/evm/0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045?network_id=mainnet&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +**After:** + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2 +``` + +### New Feature: Batched Queries + +Query balances for multiple contracts in a single request: + +```bash +GET /v1/evm/balances?network=mainnet&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&contract=0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2,0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 +``` + +## ⚠️ Important Notes + +1. **Backward Compatibility:** The old endpoints are deprecated and will be removed in the future. Migrate by **Oct 30, 2025**. + +2. **Default Sorting:** All results are now sorted by timestamp (descending) by default. Custom sorting is no longer supported. + +3. **Pagination:** Continue paging through results by incrementing the `page` parameter until you receive an empty `data` array. The API no longer provides total counts due to performance optimizations with ClickHouse. + +4. **Time Defaults:** If you previously relied on fetching all historical data without time filters, note that `start_time` now defaults to `2025-01-01`. Adjust accordingly if you need earlier data.