Metadata-Version: 2.4
Name: superposition_sdk
Version: 0.97.1
Summary: superposition_sdk client
License: Apache-2.0
Keywords: smithy,superposition_sdk
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.12
Requires-Dist: smithy-core==0.0.1
Requires-Dist: smithy-http[aiohttp]==0.0.1
Requires-Dist: smithy-json==0.0.1
Provides-Extra: docs
Requires-Dist: pydata-sphinx-theme>=0.16.1; extra == 'docs'
Requires-Dist: sphinx>=8.2.3; extra == 'docs'
Provides-Extra: tests
Requires-Dist: pytest-asyncio<0.21.0,>=0.20.3; extra == 'tests'
Requires-Dist: pytest<8.0.0,>=7.2.0; extra == 'tests'
Description-Content-Type: text/markdown

# Superposition SDK

Superposition SDK is a Python client for the Superposition platform, designed to facilitate programmatic integration of all Superposition's API capabilities in Python applications. Read the complete documentation at [Superposition SDK Documentation](https://juspay.io/superposition/docs).

## Installation

Install the Superposition SDK using pip:

```bash
pip install superposition-sdk
```

## Initialization

```python
from superposition_sdk.client import Config, Superposition
client = Superposition(Config(endpoint_uri="http://localhost:8080"))
```

## Usage

The SDK provides commands for every API call that Superposition supports. Below is an example of how to use the SDK to list default configs.

```python
import asyncio
from superposition_sdk.client import Config, ListDefaultConfigsInput, Superposition
from pprint import pprint

async def list_configs():
    client = Superposition(Config(endpoint_uri="http://localhost:8080"))
    list_configs = ListDefaultConfigsInput(workspace_id="upi", org_id="orgid162145664241766405", all=True)
    response = await client.list_default_configs(list_configs)
    pprint(response)

asyncio.run(list_configs())
```