{"id":20863573,"url":"https://github.com/jkorf/coinbase.net","last_synced_at":"2026-02-10T17:05:48.432Z","repository":{"id":257813462,"uuid":"865437560","full_name":"JKorf/Coinbase.Net","owner":"JKorf","description":"A C# .netstandard client library for the Bybit REST and Websocket V5 API focusing on clear usage and models","archived":false,"fork":false,"pushed_at":"2026-02-03T19:35:51.000Z","size":4465,"stargazers_count":14,"open_issues_count":1,"forks_count":13,"subscribers_count":4,"default_branch":"main","last_synced_at":"2026-02-04T08:43:16.599Z","etag":null,"topics":["coinbase","coinbase-api","coinbase-pro","coinbase-wallet","crypto","cryptocurrencies","cryptocurrency","cryptocurrency-exchanges","dotnet","exchange","market-data"],"latest_commit_sha":null,"homepage":"https://cryptoexchange.jkorf.dev?library=Coinbase.Net","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JKorf.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"JKorf"}},"created_at":"2024-09-30T14:28:25.000Z","updated_at":"2026-02-02T08:38:29.000Z","dependencies_parsed_at":null,"dependency_job_id":"e053abac-9137-48a2-a0df-58ed8febd72e","html_url":"https://github.com/JKorf/Coinbase.Net","commit_stats":null,"previous_names":["jkorf/coinbase.net"],"tags_count":47,"template":false,"template_full_name":null,"purl":"pkg:github/JKorf/Coinbase.Net","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JKorf%2FCoinbase.Net","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JKorf%2FCoinbase.Net/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JKorf%2FCoinbase.Net/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JKorf%2FCoinbase.Net/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JKorf","download_url":"https://codeload.github.com/JKorf/Coinbase.Net/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JKorf%2FCoinbase.Net/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29308969,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-10T16:09:25.305Z","status":"ssl_error","status_checked_at":"2026-02-10T16:08:52.170Z","response_time":65,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["coinbase","coinbase-api","coinbase-pro","coinbase-wallet","crypto","cryptocurrencies","cryptocurrency","cryptocurrency-exchanges","dotnet","exchange","market-data"],"created_at":"2024-11-18T05:29:48.583Z","updated_at":"2026-02-10T17:05:48.421Z","avatar_url":"https://github.com/JKorf.png","language":"C#","funding_links":["https://github.com/sponsors/JKorf"],"categories":[],"sub_categories":[],"readme":"# ![Coinbase.Net](https://raw.githubusercontent.com/JKorf/Coinbase.Net/master/Coinbase.Net/Icon/icon.png) Coinbase.Net  \n\n[![.NET](https://img.shields.io/github/actions/workflow/status/JKorf/Coinbase.Net/dotnet.yml?style=for-the-badge)](https://github.com/JKorf/Coinbase.Net/actions/workflows/dotnet.yml) ![License](https://img.shields.io/github/license/JKorf/Coinbase.Net?style=for-the-badge)\n\nCoinbase.Net is a client library for accessing the [Coinbase Advanced Trade REST and Websocket API](https://docs.cdp.coinbase.com/advanced-trade/docs/welcome) and [Coinbase App REST API](https://docs.cdp.coinbase.com/coinbase-app/docs/welcome). \n\n## Features\n* Response data is mapped to descriptive models\n* Input parameters and response values are mapped to discriptive enum values where possible\n* High performance\n* Automatic websocket (re)connection management \n* Client side rate limiting \n* Client side order book implementation\n* Support for managing different accounts\n* Extensive logging\n* Support for different environments\n* Easy integration with other exchange client based on the CryptoExchange.Net base library\n* Native AOT support\n\n## Supported Frameworks\nThe library is targeting both `.NET Standard 2.0` and `.NET Standard 2.1` for optimal compatibility, as well as the latest dotnet versions to use the latest framework features.\n\n|.NET implementation|Version Support|\n|--|--|\n|.NET Core|`2.0` and higher|\n|.NET Framework|`4.6.1` and higher|\n|Mono|`5.4` and higher|\n|Xamarin.iOS|`10.14` and higher|\n|Xamarin.Android|`8.0` and higher|\n|UWP|`10.0.16299` and higher|\n|Unity|`2018.1` and higher|\n\n## Install the library\n\n### NuGet \n[![NuGet version](https://img.shields.io/nuget/v/Jkorf.Coinbase.net.svg?style=for-the-badge)](https://www.nuget.org/packages/Jkorf.Coinbase.Net)  [![Nuget downloads](https://img.shields.io/nuget/dt/Jkorf.Coinbase.Net.svg?style=for-the-badge)](https://www.nuget.org/packages/Jkorf.Coinbase.Net)\n\n\tdotnet add package Coinbase.Net\n\t\n### GitHub packages\nCoinbase.Net is available on [GitHub packages](https://github.com/JKorf/Coinbase.Net/pkgs/nuget/Jkorf.Coinbase.Net). You'll need to add `https://nuget.pkg.github.com/JKorf/index.json` as a NuGet package source.\n\n### Download release\n[![GitHub Release](https://img.shields.io/github/v/release/JKorf/Coinbase.Net?style=for-the-badge\u0026label=GitHub)](https://github.com/JKorf/Coinbase.Net/releases)\n\nThe NuGet package files are added along side the source with the latest GitHub release which can found [here](https://github.com/JKorf/Coinbase.Net/releases).\n\n## How to use\n* REST Endpoints\n\t```csharp\n\t// Get the ETH/USDT ticker via rest request\n\tvar restClient = new CoinbaseRestClient();\n\tvar tickerResult = await restClient.AdvancedTradeApi.ExchangeData.GetSymbolAsync(\"ETH-USDT\");\n\tvar lastPrice = tickerResult.Data.LastPrice;\n\t```\n* Websocket streams\n\t```csharp\n\t// Subscribe to ETH/USDT ticker updates via the websocket API\n\tvar socketClient = new CoinbaseSocketClient();\n\tvar tickerSubscriptionResult = socketClient.AdvancedTradeApi.SubscribeToTickerUpdatesAsync(\"ETHUSDT\", (update) =\u003e \n\t{\n\t  var lastPrice = update.Data.LastPrice;\n\t});\n\t```\n\nFor information on the clients, dependency injection, response processing and more see the [documentation](https://cryptoexchange.jkorf.dev?library=Coinbase.Net), or have a look at the examples [here](https://github.com/JKorf/Coinbase.Net/tree/main/Examples) or [here](https://github.com/JKorf/CryptoExchange.Net/tree/master/Examples).\n\n## CryptoExchange.Net\nCoinbase.Net is based on the [CryptoExchange.Net](https://github.com/JKorf/CryptoExchange.Net) base library. Other exchange API implementations based on the CryptoExchange.Net base library are available and follow the same logic.\n\nCryptoExchange.Net also allows for [easy access to different exchange API's](https://cryptoexchange.jkorf.dev/client-libs/shared).\n\n|Exchange|Repository|Nuget|\n|--|--|--|\n|Aster|[JKorf/Aster.Net](https://github.com/JKorf/Aster.Net)|[![Nuget version](https://img.shields.io/nuget/v/JKorf.Aster.net.svg?style=flat-square)](https://www.nuget.org/packages/JKorf.Aster.Net)|\n|Binance|[JKorf/Binance.Net](https://github.com/JKorf/Binance.Net)|[![Nuget version](https://img.shields.io/nuget/v/Binance.net.svg?style=flat-square)](https://www.nuget.org/packages/Binance.Net)|\n|BingX|[JKorf/BingX.Net](https://github.com/JKorf/BingX.Net)|[![Nuget version](https://img.shields.io/nuget/v/JK.BingX.net.svg?style=flat-square)](https://www.nuget.org/packages/JK.BingX.Net)|\n|Bitfinex|[JKorf/Bitfinex.Net](https://github.com/JKorf/Bitfinex.Net)|[![Nuget version](https://img.shields.io/nuget/v/Bitfinex.net.svg?style=flat-square)](https://www.nuget.org/packages/Bitfinex.Net)|\n|Bitget|[JKorf/Bitget.Net](https://github.com/JKorf/Bitget.Net)|[![Nuget version](https://img.shields.io/nuget/v/JK.Bitget.net.svg?style=flat-square)](https://www.nuget.org/packages/JK.Bitget.Net)|\n|BitMart|[JKorf/BitMart.Net](https://github.com/JKorf/BitMart.Net)|[![Nuget version](https://img.shields.io/nuget/v/BitMart.net.svg?style=flat-square)](https://www.nuget.org/packages/BitMart.Net)|\n|BitMEX|[JKorf/BitMEX.Net](https://github.com/JKorf/BitMEX.Net)|[![Nuget version](https://img.shields.io/nuget/v/JKorf.BitMEX.net.svg?style=flat-square)](https://www.nuget.org/packages/JKorf.BitMEX.Net)|\n|Bybit|[JKorf/Bybit.Net](https://github.com/JKorf/Bybit.Net)|[![Nuget version](https://img.shields.io/nuget/v/Bybit.net.svg?style=flat-square)](https://www.nuget.org/packages/Bybit.Net)|\n|BloFin|[JKorf/BloFin.Net](https://github.com/JKorf/BloFin.Net)|[![Nuget version](https://img.shields.io/nuget/v/BloFin.net.svg?style=flat-square)](https://www.nuget.org/packages/BloFin.Net)|\n|CoinEx|[JKorf/CoinEx.Net](https://github.com/JKorf/CoinEx.Net)|[![Nuget version](https://img.shields.io/nuget/v/CoinEx.net.svg?style=flat-square)](https://www.nuget.org/packages/CoinEx.Net)|\n|CoinGecko|[JKorf/CoinGecko.Net](https://github.com/JKorf/CoinGecko.Net)|[![Nuget version](https://img.shields.io/nuget/v/CoinGecko.net.svg?style=flat-square)](https://www.nuget.org/packages/CoinGecko.Net)|\n|CoinW|[JKorf/CoinW.Net](https://github.com/JKorf/CoinW.Net)|[![Nuget version](https://img.shields.io/nuget/v/CoinW.net.svg?style=flat-square)](https://www.nuget.org/packages/CoinW.Net)|\n|Crypto.com|[JKorf/CryptoCom.Net](https://github.com/JKorf/CryptoCom.Net)|[![Nuget version](https://img.shields.io/nuget/v/CryptoCom.net.svg?style=flat-square)](https://www.nuget.org/packages/CryptoCom.Net)|\n|DeepCoin|[JKorf/DeepCoin.Net](https://github.com/JKorf/DeepCoin.Net)|[![Nuget version](https://img.shields.io/nuget/v/DeepCoin.net.svg?style=flat-square)](https://www.nuget.org/packages/DeepCoin.Net)|\n|Gate.io|[JKorf/GateIo.Net](https://github.com/JKorf/GateIo.Net)|[![Nuget version](https://img.shields.io/nuget/v/GateIo.net.svg?style=flat-square)](https://www.nuget.org/packages/GateIo.Net)|\n|HTX|[JKorf/HTX.Net](https://github.com/JKorf/HTX.Net)|[![Nuget version](https://img.shields.io/nuget/v/JKorf.HTX.net.svg?style=flat-square)](https://www.nuget.org/packages/Jkorf.HTX.Net)|\n|HyperLiquid|[JKorf/HyperLiquid.Net](https://github.com/JKorf/HyperLiquid.Net)|[![Nuget version](https://img.shields.io/nuget/v/HyperLiquid.Net.svg?style=flat-square)](https://www.nuget.org/packages/HyperLiquid.Net)|\n|Gate.io|[JKorf/GateIo.Net](https://github.com/JKorf/GateIo.Net)|[![Nuget version](https://img.shields.io/nuget/v/GateIo.net.svg?style=flat-square)](https://www.nuget.org/packages/GateIo.Net)|\n|Kraken|[JKorf/Kraken.Net](https://github.com/JKorf/Kraken.Net)|[![Nuget version](https://img.shields.io/nuget/v/KrakenExchange.net.svg?style=flat-square)](https://www.nuget.org/packages/KrakenExchange.Net)|\n|Kucoin|[JKorf/Kucoin.Net](https://github.com/JKorf/Kucoin.Net)|[![Nuget version](https://img.shields.io/nuget/v/Kucoin.net.svg?style=flat-square)](https://www.nuget.org/packages/Kucoin.Net)|\n|Mexc|[JKorf/Mexc.Net](https://github.com/JKorf/Mexc.Net)|[![Nuget version](https://img.shields.io/nuget/v/JK.Mexc.net.svg?style=flat-square)](https://www.nuget.org/packages/JK.Mexc.Net)|\n|OKX|[JKorf/OKX.Net](https://github.com/JKorf/OKX.Net)|[![Nuget version](https://img.shields.io/nuget/v/JK.OKX.net.svg?style=flat-square)](https://www.nuget.org/packages/JK.OKX.Net)|\n|Polymarket|[JKorf/Polymarket.Net](https://github.com/JKorf/Polymarket.Net)|[![Nuget version](https://img.shields.io/nuget/v/Polymarket.net.svg?style=flat-square)](https://www.nuget.org/packages/Polymarket.Net)|\n|Toobit|[JKorf/Toobit.Net](https://github.com/JKorf/Toobit.Net)|[![Nuget version](https://img.shields.io/nuget/v/Toobit.net.svg?style=flat-square)](https://www.nuget.org/packages/Toobit.Net)|\n|Upbit|[JKorf/Upbit.Net](https://github.com/JKorf/Upbit.Net)|[![Nuget version](https://img.shields.io/nuget/v/JKorf.Upbit.net.svg?style=flat-square)](https://www.nuget.org/packages/JKorf.Upbit.Net)|\n|WhiteBit|[JKorf/WhiteBit.Net](https://github.com/JKorf/WhiteBit.Net)|[![Nuget version](https://img.shields.io/nuget/v/WhiteBit.net.svg?style=flat-square)](https://www.nuget.org/packages/WhiteBit.Net)|\n|XT|[JKorf/XT.Net](https://github.com/JKorf/XT.Net)|[![Nuget version](https://img.shields.io/nuget/v/XT.net.svg?style=flat-square)](https://www.nuget.org/packages/XT.Net)|\n\nWhen using multiple of these API's the [CryptoClients.Net](https://github.com/JKorf/CryptoClients.Net) package can be used which combines this and the other packages and allows easy access to all exchange API's.\n\n## Discord\n[![Discord](https://img.shields.io/discord/847020490588422145?style=for-the-badge)](https://discord.gg/MSpeEtSY8t)  \nA Discord server is available [here](https://discord.gg/MSpeEtSY8t). For discussion and/or questions around the CryptoExchange.Net and implementation libraries, feel free to join.\n\n## Supported functionality\n\n*Due to framework restrictions for signing requests only .netstandard 2.1 can currently use private endpoints*\n\n### Advanced Trade REST\n|API|Supported|Location|\n|--|--:|--|\n|Account|✓|`restClient.AdvancedTradeApi.Account`|\n|Products|✓|`restClient.AdvancedTradeApi.ExchangeData`|\n|Orders|✓|`restClient.AdvancedTradeApi.Trading`|\n|Portfolios|✓|`restClient.AdvancedTradeApi.Account`|\n|Futures|✓|`restClient.AdvancedTradeApi.Account`/`restClient.AdvancedTradeApi.Trading`|\n|Perpetuals|✓|`restClient.AdvancedTradeApi.Account`/`restClient.AdvancedTradeApi.Trading`|\n|Fees|✓|`restClient.AdvancedTradeApi.Account`|\n|Convert|✓|`restClient.AdvancedTradeApi.Account`|\n|Public|✓|`restClient.AdvancedTradeApi.ExchangeData`|\n|Payment Methods|✓|`restClient.AdvancedTradeApi.Account`|\n|Data API|✓|`restClient.AdvancedTradeApi.Account`|\n\n### Advanced Trade Websocket\n|API|Supported|Location|\n|--|--:|--|\n|All channels|✓|`socketClient.AdvancedTradeApi`|\n\n### App\n|API|Supported|Location|\n|--|--:|--|\n|Accounts|X|*Functionality supported in Advanced Trade API*|\n|Addresses|✓|`restClient.AdvancedTradeApi.Account`|\n|Transactions|✓|`restClient.AdvancedTradeApi.Account`|\n|Deposits|✓|`restClient.AdvancedTradeApi.Account`|\n|Withdrawals|✓|`restClient.AdvancedTradeApi.Account`|\n|Currencies|✓|`restClient.AdvancedTradeApi.ExchangeData`|\n|Exchange Rates|✓|`restClient.AdvancedTradeApi.ExchangeData`|\n|Prices|✓|`restClient.AdvancedTradeApi.ExchangeData`|\n|Time|✓|`restClient.AdvancedTradeApi.ExchangeData`|\n\n## Support the project\nAny support is greatly appreciated.\n\n### Referal\nIf you do not yet have an account please consider using this referal link to sign up:  \n[Link](https://advanced.coinbase.com/join/T6H54H8)\n\n### Donate\nMake a one time donation in a crypto currency of your choice. If you prefer to donate a currency not listed here please contact me.\n\n**Btc**:  bc1q277a5n54s2l2mzlu778ef7lpkwhjhyvghuv8qf  \n**Eth**:  0xcb1b63aCF9fef2755eBf4a0506250074496Ad5b7   \n**USDT (TRX)**  TKigKeJPXZYyMVDgMyXxMf17MWYia92Rjd \n\n### Sponsor\nAlternatively, sponsor me on Github using [Github Sponsors](https://github.com/sponsors/JKorf). \n\n## Release notes\n* Version 3.5.1 - 10 Feb 2026\n    * Fixed handling of websocket snapshot messages without any data\n\n* Version 3.5.0 - 10 Feb 2026\n    * Updated CryptoExchange.Net to version 10.5.1, see https://github.com/JKorf/CryptoExchange.Net/releases/ for full release notes\n    * Added websocket symbol event topic mapping\n    * Updated UserClientProvider internal client cache to non-static to prevent cleanup issues\n\n* Version 3.4.0 - 06 Feb 2026\n    * Updated CryptoExchange.Net to version 10.4.0, see https://github.com/JKorf/CryptoExchange.Net/releases/ for full release notes\n    * Added CoinbaseUserSpotDataTracker and CoinbaseUserFuturesDataTracker\n    * Added additional methods for requesting supported symbols to Shared ISpotSymbolRestClient/IFuturesSymbolRestClient interfaces\n    * Added PositionMode mapping on SharedPosition models\n    * Added Status mapping for SharedDeposit models\n    * Updated socket receive buffer size\n    * Fixed unsubscription query not register sequence number\n    * Fixed disposed clients getting returned from UserClientProvider\n    * Fixed deserialization warning in futures symbols\n\n* Version 3.3.1 - 27 Jan 2026\n    * Updated CryptoExchange.Net to version 10.3.1, see https://github.com/JKorf/CryptoExchange.Net/releases/ for full release notes\n\n* Version 3.3.0 - 22 Jan 2026\n    * Updated CryptoExchange.Net to version 10.3.0, see https://github.com/JKorf/CryptoExchange.Net/releases/ for full release notes\n    * Removed legacy websocket message handling and the corresponding UseUpdatedDeserialization client option\n    * Added Metadata to AsterExchange\n\n* Version 3.2.2 - 14 Jan 2026\n    * Updated CryptoExchange.Net to version 10.2.3, see https://github.com/JKorf/CryptoExchange.Net/releases/ for full release notes\n\n* Version 3.2.1 - 13 Jan 2026\n    * Updated CryptoExchange.Net to version 10.2.2 to fix issue with socket message sequencing when having duplicate subscriptions\n\n* Version 3.2.0 - 13 Jan 2026\n    * Updated CryptoExchange.Net to version 10.2.1, see https://github.com/JKorf/CryptoExchange.Net/releases/ for full release notes\n    * Added SequenceNumber to websocket updates\n    * Added validation of sequence numbers for websocket connections\n    * Fixed restClient.AdvancedTradeApi.Account.GetFeeInfoAsync deserialization, updated response model\n\n* Version 3.1.0 - 07 Jan 2026\n    * Updated CryptoExchange.Net version to 10.1.0, see https://github.com/JKorf/CryptoExchange.Net/releases/ for full release notes\n    * Added DataTimeLocal and DataAge properties to DataEvent object\n    * Added UpdateServerTime, UpdateLocalTime and DataAge properties to (I)SymbolOrderBook\n    * Added ExchangeApi to Rest client with some basic endpoints\n    * Added check for max number of symbols to SubscribeToOrderBookUpdatesAsync stream\n\n* Version 3.0.1 - 18 Dec 2025\n    * Updated CryptoExchange.Net to 10.0.1 to fix parameter serialization error\n\n* Version 3.0.0 - 16 Dec 2025\n    * Added Net10.0 target framework\n    * Updated CryptoExchange.Net version to 10.0.0, see https://github.com/JKorf/CryptoExchange.Net/releases/ for full release notes\n    * Improved performance across the board, biggest gains in websocket message processing\n    * Updated REST message response handling\n    * Updated WebSocket message handling\n    * Added UseUpdatedDeserialization socket client options to toggle by new and old message handlings\n    * Added SocketIndividualSubscriptionCombineTarget socket client option\n    * Updated Shared API's subscription update types from ExchangeEvent to DataEvent\n    * Updated authentication to use Microsoft.IdentityModel.JsonWebTokens instead of jose-jwt\n\n* Version 2.11.3 - 27 Nov 2025\n    * Fixed AUDD-USDC symbol subscriptions in AdvancedTradeApi\n\n* Version 2.11.2 - 19 Nov 2025\n    * Fixed XSGD-USDC symbol subscriptions in AdvancedTradeApi\n\n* Version 2.11.1 - 12 Nov 2025\n    * Fixed socketClient.ExchangeApi subscriptions\n\n* Version 2.11.0 - 11 Nov 2025\n    * Updated CryptoExchange.Net version to 9.13.0, see https://github.com/JKorf/CryptoExchange.Net/releases/\n    * Added public streams for socketClient.ExchangeApi for the institutional websocket API\n\n* Version 2.10.0 - 03 Nov 2025\n    * Updated CryptoExchange.Net to version 9.12.0\n    * Added support for using SharedSymbol.UsdOrStable in Shared APIs\n    * Add AssetMigration type to TransactionType enum\n    * Fixed exception when initial trade snapshot has no items in TradeTracker\n    * Removed some unhelpful verbose logs\n\n* Version 2.9.1 - 27 Oct 2025\n    * Fixed quantity in Shared Rest UserTrade models not correctly handling quantities in quote asset\n\n* Version 2.9.0 - 16 Oct 2025\n    * Updated CryptoExchange.Net version to 9.10.0, see https://github.com/JKorf/CryptoExchange.Net/releases/\n\n* Version 2.8.0 - 30 Sep 2025\n    * Updated CryptoExchange.Net version to 9.8.0, see https://github.com/JKorf/CryptoExchange.Net/releases/\n    * Added ITrackerFactory to TrackerFactory implementation\n    * Updated CoinbaseTransaction response model\n\n* Version 2.7.0 - 01 Sep 2025\n    * Updated CryptoExchange.Net version to 9.7.0, see https://github.com/JKorf/CryptoExchange.Net/releases/\n    * HTTP REST requests will now use HTTP version 2.0 by default\n\n* Version 2.6.0 - 25 Aug 2025\n    * Updated CryptoExchange.Net version to 9.6.0, see https://github.com/JKorf/CryptoExchange.Net/releases/\n    * Added ClearUserClients method to user client provider\n\n* Version 2.5.1 - 21 Aug 2025\n    * Added check for parsing Unauthorized response\n\n* Version 2.5.0 - 20 Aug 2025\n    * Updated CryptoExchange.Net to version 9.5.0, see https://github.com/JKorf/CryptoExchange.Net/releases/\n    * Added improved error parsing\n    * Fixed Shared GetBookTickerAsync endpoint not marked as requiring authentication\n    * Fixed deserialization error CoinbaseOrderConfiguration\n\n* Version 2.4.0 - 04 Aug 2025\n    * Updated CryptoExchange.Net to version 9.4.0, see https://github.com/JKorf/CryptoExchange.Net/releases/\n    * Added support for multi-symbol Shared socket subscriptions\n\n* Version 2.3.0 - 23 Jul 2025\n    * Updated CryptoExchange.Net to version 9.3.0, see https://github.com/JKorf/CryptoExchange.Net/releases/\n    * Updated websocket message matching\n\n* Version 2.2.0 - 15 Jul 2025\n    * Updated CryptoExchange.Net to version 9.2.0, see https://github.com/JKorf/CryptoExchange.Net/releases/\n    * Fixed deserialization issue CoinbaseFuturesBalance\n\n* Version 2.1.0 - 02 Jun 2025\n    * Updated CryptoExchange.Net to version 9.1.0, see https://github.com/JKorf/CryptoExchange.Net/releases/\n    * Added (I)CoinbaseUserClientProvider allowing for easy client management when handling multiple users\n\n* Version 2.0.0 - 13 May 2025\n    * Updated CryptoExchange.Net to version 9.0.0, see https://github.com/JKorf/CryptoExchange.Net/releases/\n    * Added support for Native AOT compilation\n    * Added RateLimitUpdated event\n    * Added SharedSymbol response property to all Shared interfaces response models returning a symbol name\n    * Added GenerateClientOrderId method to AdvandedTradeApi Shared clients\n    * Added IBookTickerRestClient implementation to AdvandedTradeApi Shared client\n    * Added ISpotTriggerOrderRestClient implementation to AdvandedTradeApi Shared client\n    * Added IFuturesTriggerOrderRestClient implementation to AdvandedTradeApi Shared client\n    * Added IsTriggerOrder to SharedSpotOrder model\n    * Added TriggerPrice, IsTriggerPrice to SharedFuturesOrder model\n    * Added MaxLongLeverage, MaxShortLeverage to SharedFuturesSymbol model\n    * Added QuoteVolume property mapping to SharedSpotTicker model\n    * Added OptionalExchangeParameters and Supported properties to EndpointOptions\n    * Added error details parsing in restClient.AdvancedTradeApi.Trading.PlaceOrderAsync\n    * Added All property to retrieve all available environment on CoinbaseEnvironment\n    * Refactored Shared clients quantity parameters and responses to use SharedQuantity\n    * Updated all IEnumerable response and model types to array response types\n    * Removed Newtonsoft.Json dependency\n    * Removed legacy AddCoinbase(restOptions, socketOptions) DI overload\n    * Fixed duplicate symbols getting returned from the Shared GetSpotSymbolsAsync and GetSpotTickersAsync implementations\n    * Fixed Shared GetBalancesAsync returning the same asset multiple times\n    * Fixed incorrect DataTradeMode on certain Shared interface responses\n    * Fixed some typos\n    * Fixed deserialization error in restClient.AdvandedTradeApi.ExchangeData.GetFuturesSymbolsAsync endpoint\n\n* Version 2.0.0-beta3 - 01 May 2025\n    * Updated CryptoExchange.Net version to 9.0.0-beta5\n    * Added property to retrieve all available API environments\n    * Fixed duplicate symbols being returned from Shared GetSpotSymbolsAsync\n\n* Version 2.0.0-beta2 - 23 Apr 2025\n    * Updated CryptoExchange.Net to version 9.0.0-beta2\n    * Added Shared spot ticker QuoteVolume mapping\n    * Fixed incorrect DataTradeMode on responses\n\n* Version 2.0.0-beta1 - 22 Apr 2025\n    * Updated CryptoExchange.Net to version 9.0.0-beta1, see https://github.com/JKorf/CryptoExchange.Net/releases/\n    * Added support for Native AOT compilation\n    * Added RateLimitUpdated event\n    * Added SharedSymbol response property to all Shared interfaces response models returning a symbol name\n    * Added GenerateClientOrderId method to AdvandedTradeApi Shared clients\n    * Added IBookTickerRestClient implementation to AdvandedTradeApi Shared client\n    * Added ISpotTriggerOrderRestClient implementation to AdvandedTradeApi Shared client\n    * Added IFuturesTriggerOrderRestClient implementation to AdvandedTradeApi Shared client\n    * Added IsTriggerOrder to SharedSpotOrder model\n    * Added TriggerPrice, IsTriggerPrice to SharedFuturesOrder model\n    * Added MaxLongLeverage, MaxShortLeverage to SharedFuturesSymbol model\n    * Added OptionalExchangeParameters and Supported properties to EndpointOptions\n    * Added error details parsing in restClient.AdvancedTradeApi.Trading.PlaceOrderAsync\n    * Refactored Shared clients quantity parameters and responses to use SharedQuantity\n    * Updated all IEnumerable response and model types to array response types\n    * Removed Newtonsoft.Json dependency\n    * Removed legacy AddCoinbase(restOptions, socketOptions) DI overload\n    * Fixed some typos\n    * Fixed deserialization error in restClient.AdvandedTradeApi.ExchangeData.GetFuturesSymbolsAsync endpoint\n\n* Version 1.9.1 - 28 Mar 2025\n    * Fixed deserialization issue for restClient.AdvancedTradeApi.Account.GetPerpetualPortfolioSummaryAsync\n\n* Version 1.9.0 - 24 Mar 2025\n    * Added attachedOrderTriggerPrice and attachedOrderLimitPrice parameters for restClient.AdvancedTradeApi.Trading.PlaceOrderAsync\n\n* Version 1.8.1 - 12 Feb 2025\n    * Fixed missing value PreLaunch for SymbolStatus enum\n\n* Version 1.8.0 - 11 Feb 2025\n    * Updated CryptoExchange.Net to version 8.8.0, see https://github.com/JKorf/CryptoExchange.Net/releases/\n    * Added support for more SharedKlineInterval values\n    * Added setting of DataTime value on websocket DataEvent updates\n    * Added getTradabilityStatus parameter to GetSymbolsAsync method\n    * Renamed KlineInterval.TwoHour to KlineInterval.TwoHours, fixed int value\n    * Fix Mono runtime exception on rest client construction using DI\n\n* Version 1.7.2 - 07 Jan 2025\n    * Updated CryptoExchange.Net version\n    * Added Type property to CoinbaseExchange class\n\n* Version 1.7.1 - 06 Jan 2025\n    * Updated transaction model to include fee and quantity info\n\n* Version 1.7.0 - 23 Dec 2024\n    * Updated CryptoExchange.Net to version 8.5.0, see https://github.com/JKorf/CryptoExchange.Net/releases/\n    * Added SetOptions methods on Rest and Socket clients\n    * Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client\n\n* Version 1.6.1 - 03 Dec 2024\n    * Updated CryptoExchange.Net to version 8.4.3, see https://github.com/JKorf/CryptoExchange.Net/releases/\n    * Added Platform property to restClient.AdvancedTradeApi.Account.GetAccountsAsync and GetAccountAsync response model\n    * Fixed orderbook creation via CoinbaseBookFactory\n\n* Version 1.6.0 - 28 Nov 2024\n    * Updated CryptoExchange.Net to version 8.4.0, see https://github.com/JKorf/CryptoExchange.Net/releases/tag/8.4.0\n    * Added GetFeesAsync Shared REST client implementations\n    * Updated CoinbaseOptions to LibraryOptions implementation\n    * Updated test and analyzer package versions\n\n* Version 1.5.1 - 21 Nov 2024\n    * Fixed deserialization error in SubscribeToBatchedTickerUpdatesAsync subscription when there is no trade price\n\n* Version 1.5.0 - 19 Nov 2024\n    * Updated CryptoExchange.Net to version 8.3.0, see https://github.com/JKorf/CryptoExchange.Net/releases/tag/8.3.0\n    * Added support for loading client settings from IConfiguration\n    * Added DI registration method for configuring Rest and Socket options at the same time\n    * Added DisplayName and ImageUrl properties to CoinbaseExchange class\n    * Updated client constructors to accept IOptions from DI\n    * Removed redundant CoinbaseSocketClient constructor\n\n* Version 1.4.0 - 06 Nov 2024\n    * Updated CryptoExchange.Net to version 8.2.0, see https://github.com/JKorf/CryptoExchange.Net/releases/tag/8.2.0\n\n* Version 1.3.0 - 04 Nov 2024\n    * Updated restClient.AdvancedTradeApi.Account.WithdrawCryptoAsync parameters\n    * Removed restClient.AdvancedTradeApi.Account.TransferAsync as it's no longer supported\n\n* Version 1.2.0 - 28 Oct 2024\n    * Updated CryptoExchange.Net to version 8.1.0, see https://github.com/JKorf/CryptoExchange.Net/releases/tag/8.1.0\n    * Moved FormatSymbol to CoinbaseExchange class\n    * Added support Side setting on SharedTrade model\n    * Added CoinbaseTrackerFactory for creating trackers\n    * Added overload to Create method on CoinbaseOrderBookFactory support SharedSymbol parameter\n    * Added GetKlinesAsync to Shared rest client\n    * Fixed exception on restClient.AdvancedTradingAi.Trading.CancelOrderAynsc when order not found\n    * Fixed exception on restClient.AdvancedTradingAi.Trading.CancelOrdersAynsc when request fails\n    * Fixed restClient.AdvancedTradingAi.ExchangeData.GetKlinesAsync time filter\n    * Fixed issue with concurrent websocket subscription acknowledgements\n    * Removed incorrect rate limit of 100 message per second per ip for websockets\n\n* Version 1.1.2 - 22 Oct 2024\n    * Fixed deserialization issue on websocket ticker updates\n\n* Version 1.1.1 - 21 Oct 2024\n    * Fixed websocket market data subscriptions for \"USDT-USDC\" and \"EURC-USDC\" symbols\n\n* Version 1.1.0 - 15 Oct 2024\n    * Updated ExchangeData endpoints to use the Products endpoint instead of Public endpoint if API credentials are provided\n    * Added restClient.AdvancedTradeApi.ExchangeData.GetBookTickersAsync and GetBookTickerAsync endpoints\n\n* Version 1.0.1 - 14 Oct 2024\n    * Updated CryptoExchange.Net to version 8.0.3, see https://github.com/JKorf/CryptoExchange.Net/releases/tag/8.0.3\n    * Fixed TypeLoadException during initialization\n    * Fixed ICoinbaseOrderBookFactory DI lifetime\n\n* Version 1.0.0 - 07 Oct 2024\n    * Initial release\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjkorf%2Fcoinbase.net","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjkorf%2Fcoinbase.net","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjkorf%2Fcoinbase.net/lists"}