A Python implementation of SnapTrade API client library
Project description
SnapTrade-Python
This Python Package has been deprecated and is no longer receiving support. Please use our maintained SDK here: https://pypi.org/project/snaptrade-python-sdk/
A SnapTrade python client library to help you make requests to the SnapTrade API endpoints more easily.
If you need help or have any questions, send us an email at api@snaptrade.com.
Requirements and Installation
Python version requirements
- Python 3.6 or later
Installation
pip install snaptrade
- It is recommended that you install this library on a virtual environment. You can find out more about this in the following link: Installing using pip and virtual environments
SnapTradeAPIClient
Before getting started, you will need a clientID and a consumerKey. If you don't have one, please send us an email to get a new one.
Why use SnapTradeAPIClient?
- The client uses the clientID and consumerKey that you pass in to sign a request. This ensures that all requests made to the API server are signed and authenticated correctly.
- The client ensures that any data passed in through the path params, query params or request body are formatted correctly.
- The client formats the API responses and returns a dictionary of the data returned.
How to use SnapTradeAPIClient?
The code block belows shows you to initialize a SnapTradeAPIClient and how to make requests with it.
"""
Your consumerKey should always remain a secret! Never hard code it!
"""
from snaptrade.api_client import SnapTradeAPIClient
# 1) Initialize a client with your clientID and consumerKey.
client = SnapTradeAPIClient(clientID, consumerKey)
# 2) Check that the client is able to make a request to the API server.
api_status_response = client.api_status()
print(api_status_response)
# 3) Create a new user on SnapTrade
user_id = "userIDProvidedByPartner"
register_response = client.register_user(user_id)
# Note: A user secret is only generated once. It's required to access
# resources for certain endpoints.
user_secret = register_response.get("userSecret")
# 4) Get a redirect URI. Users will need this to connect
# their brokerage to the SnapTrade server.
redirect_uri = client.get_user_login_redirect_uri(user_id, user_secret).get("redirectURI")
# 5) Obtaining account holdings data
holdings = client.get_all_holdings(user_id, user_secret)
# 6) Deleting a user
deleted_response = client.delete_user(user_id)
Check out the documentation below for making requests to other SnapTrade API endpoints using this client
- Account Information Endpoints
- Authentication Endpoints
- Connections Endpoints
- Reference Data Endpoints
- Reporting Endpoints
- Trading Endpoints
License & copyrights
Licensed under Apache License 2.0.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file snaptrade-1.0.10-py3-none-any.whl.
File metadata
- Download URL: snaptrade-1.0.10-py3-none-any.whl
- Upload date:
- Size: 11.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.25.1 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
270740b49121abceb3262751fd3b6619eaa03dbb9c2596f1cb507017679a6bd6
|
|
| MD5 |
e4f3b3b491952b24ea32d0da987d89a5
|
|
| BLAKE2b-256 |
5ab5c7dadeea14df067a33e24767c16fc285d9dd9530f2fe2dc6592eb7b9c139
|