# Packages
No description provided by the author
# README
Installation
Add to your project:
go get github.com/passiv/snaptrade-sdks/sdks/go
Getting Started
package main
import (
"fmt"
"os"
snaptrade "github.com/passiv/snaptrade-sdks/sdks/go"
)
func main() {
configuration := snaptrade.NewConfiguration()
configuration.SetPartnerClientId(os.Getenv("SNAPTRADE_CLIENT_ID"))
configuration.SetConsumerKey(os.Getenv("SNAPTRADE_CONSUMER_KEY"))
client := snaptrade.NewAPIClient(configuration)
// 1) Create a new user
requestBody := snaptrade.NewSnapTradeRegisterUserRequestBody()
userId := "USER_ID_FROM_YOU"
requestBody.SetUserId(userId)
request := client.AuthenticationApi.RegisterSnapTradeUser(*requestBody)
resp, _, _ := request.Execute()
// 2) Get user secret
userSecret := resp.UserSecret
// 3) Get redirect URI
loginResp, _, _ := client.AuthenticationApi.LoginSnapTradeUser(userId, *userSecret).Execute()
fmt.Println("Login redirect URI:", loginResp.LoginRedirectURI)
// 4) Obtain account holdings data
holdingsResp, _, _ := client.AccountInformationApi.GetAllUserHoldings(userId, *userSecret).Execute()
fmt.Println("Account holdings:", holdingsResp)
// 5) Delete the user
deleteResp, _, _ := client.AuthenticationApi.DeleteSnapTradeUser(userId).Execute()
fmt.Println("User deletion response:", deleteResp)
}
Documentation for API Endpoints
All URIs are relative to https://api.snaptrade.com/api/v1
Class | Method | HTTP request | Description |
---|---|---|---|
AccountInformationApi | GetAllUserHoldings | Get /holdings | List all accounts for the user, plus balances, positions, and orders for each account. |
AccountInformationApi | GetUserAccountBalance | Get /accounts/{accountId}/balances | List account balances |
AccountInformationApi | GetUserAccountDetails | Get /accounts/{accountId} | Get account detail |
AccountInformationApi | GetUserAccountOrders | Get /accounts/{accountId}/orders | List account recent orders |
AccountInformationApi | GetUserAccountPositions | Get /accounts/{accountId}/positions | List account positions |
AccountInformationApi | GetUserAccountRecentOrders | Get /accounts/{accountId}/recentOrders | List account recent executed orders |
AccountInformationApi | GetUserAccountReturnRates | Get /accounts/{accountId}/returnRates | List account rate of returns |
AccountInformationApi | GetUserHoldings | Get /accounts/{accountId}/holdings | List account holdings |
AccountInformationApi | ListUserAccounts | Get /accounts | List accounts |
AccountInformationApi | UpdateUserAccount | Put /accounts/{accountId} | Update details of an investment account |
APIStatusApi | Check | Get / | Get API Status |
AuthenticationApi | DeleteSnapTradeUser | Delete /snapTrade/deleteUser | Delete user |
AuthenticationApi | ListSnapTradeUsers | Get /snapTrade/listUsers | List all users |
AuthenticationApi | LoginSnapTradeUser | Post /snapTrade/login | Generate Connection Portal URL |
AuthenticationApi | RegisterSnapTradeUser | Post /snapTrade/registerUser | Register user |
AuthenticationApi | ResetSnapTradeUserSecret | Post /snapTrade/resetUserSecret | Rotate user secret |
ConnectionsApi | DetailBrokerageAuthorization | Get /authorizations/{authorizationId} | Get connection detail |
ConnectionsApi | DisableBrokerageAuthorization | Post /authorizations/{authorizationId}/disable | Force disable connection |
ConnectionsApi | ListBrokerageAuthorizations | Get /authorizations | List all connections |
ConnectionsApi | RefreshBrokerageAuthorization | Post /authorizations/{authorizationId}/refresh | Refresh holdings for a connection |
ConnectionsApi | RemoveBrokerageAuthorization | Delete /authorizations/{authorizationId} | Delete connection |
ConnectionsApi | ReturnRates | Get /authorizations/{authorizationId}/returnRates | List connection rate of returns |
ConnectionsApi | SessionEvents | Get /sessionEvents | Get all session events for a user |
OptionsApi | GetOptionStrategy | Post /accounts/{accountId}/optionStrategy | Create options strategy |
OptionsApi | GetOptionsChain | Get /accounts/{accountId}/optionsChain | Get the options chain for a symbol |
OptionsApi | GetOptionsStrategyQuote | Get /accounts/{accountId}/optionStrategy/{optionStrategyId} | Get options strategy quotes |
OptionsApi | ListOptionHoldings | Get /accounts/{accountId}/options | List account option positions |
OptionsApi | PlaceOptionStrategy | Post /accounts/{accountId}/optionStrategy/{optionStrategyId}/execute | Place an option strategy order |
ReferenceDataApi | GetCurrencyExchangeRatePair | Get /currencies/rates/{currencyPair} | Get exchange rate of a currency pair |
ReferenceDataApi | GetPartnerInfo | Get /snapTrade/partners | Get Client Info |
ReferenceDataApi | GetSecurityTypes | Get /securityTypes | List security types |
ReferenceDataApi | GetStockExchanges | Get /exchanges | Get exchanges |
ReferenceDataApi | GetSymbols | Post /symbols | Search symbols |
ReferenceDataApi | GetSymbolsByTicker | Get /symbols/{query} | Get symbol detail |
ReferenceDataApi | ListAllBrokerageAuthorizationType | Get /brokerageAuthorizationTypes | Get all brokerage authorization types |
ReferenceDataApi | ListAllBrokerages | Get /brokerages | Get brokerages |
ReferenceDataApi | ListAllCurrencies | Get /currencies | Get currencies |
ReferenceDataApi | ListAllCurrenciesRates | Get /currencies/rates | Get currency exchange rates |
ReferenceDataApi | SymbolSearchUserAccount | Post /accounts/{accountId}/symbols | Search account symbols |
TradingApi | CancelUserAccountOrder | Post /accounts/{accountId}/orders/cancel | Cancel order |
TradingApi | GetOrderImpact | Post /trade/impact | Check order impact |
TradingApi | GetUserAccountQuotes | Get /accounts/{accountId}/quotes | Get symbol quotes |
TradingApi | PlaceForceOrder | Post /trade/place | Place order |
TradingApi | PlaceOrder | Post /trade/{tradeId} | Place checked order |
TransactionsAndReportingApi | GetActivities | Get /activities | Get transaction history for a user |
TransactionsAndReportingApi | GetReportingCustomRange | Get /performance/custom | Get performance information for a specific timeframe |
Documentation For Models
- Account
- AccountBalance
- AccountBalanceTotal
- AccountHoldings
- AccountHoldingsAccount
- AccountOrderRecord
- AccountOrderRecordOptionSymbol
- AccountOrderRecordStatus
- AccountOrderRecordUniversalSymbol
- AccountSimple
- AccountSyncStatus
- ActionStrict
- ActionStrictWithOptions
- AuthenticationLoginSnapTradeUser200Response
- Balance
- BalanceCurrency
- Brokerage
- BrokerageAuthorization
- BrokerageAuthorizationDisabledConfirmation
- BrokerageAuthorizationRefreshConfirmation
- BrokerageAuthorizationTypeReadOnly
- BrokerageAuthorizationTypeReadOnlyBrokerage
- BrokerageType
- Currency
- DeleteUserResponse
- DividendAtDate
- EncryptedResponse
- EncryptedResponseEncryptedMessageData
- Exchange
- ExchangeRatePairs
- FigiInstrument
- HoldingsStatus
- LoginRedirectURI
- ManualTrade
- ManualTradeAndImpact
- ManualTradeBalance
- ManualTradeForm
- ManualTradeFormNotionalValue
- ManualTradeFormWithOptions
- ManualTradeImpact
- ManualTradeSymbol
- Model400FailedRequestResponse
- Model401FailedRequestResponse
- Model402BrokerageAuthAlreadyDisabledException
- Model402BrokerageAuthDisabledResponse
- Model403FailedRequestResponse
- Model403FeatureNotEnabledResponse
- Model404FailedRequestResponse
- Model425FailedRequestResponse
- Model500UnexpectedExceptionResponse
- MonthlyDividends
- NetContributions
- NetDividend
- NotionalValue
- OptionBrokerageSymbol
- OptionChainInner
- OptionChainInnerChainPerRootInner
- OptionChainInnerChainPerRootInnerChainPerStrikePriceInner
- OptionLeg
- OptionStrategy
- OptionStrategyLegsInner
- OptionsGetOptionStrategyRequest
- OptionsPlaceOptionStrategyRequest
- OptionsPosition
- OptionsPositionCurrency
- OptionsSymbol
- OrderTypeStrict
- PartnerData
- PastValue
- PerformanceCustom
- Position
- PositionSymbol
- RateOfReturnObject
- RateOfReturnResponse
- RecentOrdersResponse
- SecurityType
- SessionEvent
- SnapTradeHoldingsAccount
- SnapTradeHoldingsTotalValue
- SnapTradeLoginUserRequestBody
- SnapTradeRegisterUserRequestBody
- Status
- StrategyOrderRecord
- StrategyQuotes
- StrategyQuotesGreek
- SubPeriodReturnRate
- Symbol
- SymbolCurrency
- SymbolExchange
- SymbolFigiInstrument
- SymbolQuery
- SymbolsQuotesInner
- TimeInForceStrict
- TradingCancelUserAccountOrderRequest
- TransactionsStatus
- USExchange
- UnderlyingSymbol
- UnderlyingSymbolExchange
- UnderlyingSymbolType
- UniversalActivity
- UniversalActivityCurrency
- UniversalActivityOptionSymbol
- UniversalActivitySymbol
- UniversalSymbol
- UserIDandSecret
- ValidatedTradeBody