Skip to main content

Tradekart wrapper SDK for Groww trading APIs

Project description

TradeKart API

TradeKart API is a Python wrapper around the official Groww SDK with a service-oriented design for trading workflows.

It provides custom service layers for common operations (Orders, Portfolio) with request models, response models, and consistent exception handling so teams can build reliable trading integrations faster.

Why TradeKart API

  • Built on top of growwapi, so you can continue to use Groww's official SDK.
  • Clean service abstraction for business use-cases instead of raw SDK calls everywhere.
  • Typed request models for safer payload construction.
  • Structured response handling for predictable downstream processing.
  • Custom exceptions for easier debugging and application-level error handling.

Installation

pip install tradekartapi

Quick Start (Jupyter / Notebook)

from tradekartapi.client import TradeKartClient
from growwapi import GrowwAPI

access_token = "your_access_token"
client = TradeKartClient.from_access_token(access_token, GrowwAPI)
# Now client is ready to use the service

Service Architecture

TradeKart API uses:

  1. Groww SDK Adapter to initialize and hold the SDK client.
  2. Custom Services to expose trading operations as business-level methods.
  3. Models to keep request and response shapes explicit and reusable.

Available Services

  • Order Service
    • Place order
    • Modify order
    • Cancel order
    • Get order status
    • Get order list
    • Get order detail
  • Portfolio Service
    • Get holdings
    • Get positions
    • Get positions by trading symbol

Margin Service

Margin-related service support is planned as part of upcoming releases.

Orders Example

from tradekartapi.models.orders import PlaceOrderRequest
from tradekartapi.models.annexures import (
    Exchange, Segment, Product, OrderType, TransactionType, Validity
)

request = PlaceOrderRequest(
    trading_symbol="SBIN",
    quantity=1,
    validity=Validity.DAY,
    exchange=Exchange.NSE,
    segment=Segment.CASH,
    product=Product.CNC,
    order_type=OrderType.MARKET,
    transaction_type=TransactionType.BUY,
)

response = client.order_service.place_order(request)
print(response)

Portfolio Example

holdings = client.portfolio_service.get_holdings()
positions = client.portfolio_service.get_positions()

print([h.to_dict() for h in holdings])
print([p.to_dict() for p in positions])

Response Formats

Depending on the service method, you may receive:

  • Native dict from direct SDK passthrough methods.
  • Dataclass-based response objects from modeled service methods.

For dataclass responses, use:

  • to_dict() for Python dictionary output.
  • to_json() for JSON string output.

Error Handling

TradeKart API raises structured custom exceptions for validation and service-level failures, making it easier to map failures to API responses or logs in production systems.

Compatibility

  • Python >=3.10
  • Depends on growwapi

Changelog

Full changelog: https://tradekartapi.readthedocs.io/en/latest/changelog.html

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tradekartapi-0.1.1.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tradekartapi-0.1.1-py3-none-any.whl (14.1 kB view details)

Uploaded Python 3

File details

Details for the file tradekartapi-0.1.1.tar.gz.

File metadata

  • Download URL: tradekartapi-0.1.1.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for tradekartapi-0.1.1.tar.gz
Algorithm Hash digest
SHA256 04841a6cd87808a678befcefa8a428a3f902a51504a74ad62d7ee579df0cf08c
MD5 1c0e92ebc5b43003fb13e3a9773f1a11
BLAKE2b-256 b9c84f033f1bbeff14a2fbc1fb9b407388eabaf5f9d6442bceba93dfffbff988

See more details on using hashes here.

File details

Details for the file tradekartapi-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: tradekartapi-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 14.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for tradekartapi-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 035220ecdedcb82c2eda6df66ec6ba12c68dca0440e59a5c3fd5c5efb6bbacd5
MD5 107dae4e619c4cd53cce094aba7aa434
BLAKE2b-256 30661f5a6d29a5d18572ab8ccc92041893a5934e0aee49be6c10a7dd8c5f8f38

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page