Skip to main content

No project description provided

Project description

Rulebricks – Python SDK

pypi

Documentation

API reference documentation is available here.

Installation

Add this dependency to your project's build file:

pip install rulebricks
# or
poetry add rulebricks

Configuration

Before using the SDK, configure your API key. You can find your API key in your Rulebricks Dashboard.

import rulebricks as rb

# Replace 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX' with your actual API key
rb.set_api_key("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX")

Basic Usage

Use the SDK to interact with the Rulebricks API in a synchronous manner is incredibly simple.

Here's an example of how to use the SDK to solve a rule:

import rulebricks as rb

# Set the API key
rb.set_api_key("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX")

result = rb.rules.solve(
    slug="tJOCd8XXXX",
    request={
        "customer_id": "anc39as3",
        "purchase_history": ["t-shirt", "mug"],
        "account_age_days": 4,
        "last_purchase_days_ago": 3,
        "email_subscription": False
    }
)

print(result)

Asynchronous Usage

For asynchronous API calls, access methods via the async_api attribute.

This allows you to leverage Python's asyncio library for non-blocking operations:

import rulebricks as rb
import asyncio

# Set the API key
rb.set_api_key("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX")

async def main():
    async_result = await rb.async_api.rules.solve(
        slug="tJOCd8XXXX",
        request={
            "customer_id": "anc39as3",
            "purchase_history": ["t-shirt", "mug"],
            "account_age_days": 4,
            "last_purchase_days_ago": 3,
            "email_subscription": False
        }
    )
    print(async_result)

if __name__ == "__main__":
    asyncio.run(main())

Beta status

This SDK is in beta, and there may be breaking changes between versions without a major version update. Therefore, we recommend pinning the package version to a specific version in your pyproject.toml file. This way, you can install the same version each time without breaking changes unless you are intentionally looking for the latest version.

Feedback and Contributions

Feedback is vital as we continue to improve the SDK and add more features. Please report any issues or suggest improvements through our GitHub issues page. Contributions to the SDK are welcome via pull requests.

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

rulebricks-0.0.6.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

rulebricks-0.0.6-py3-none-any.whl (15.6 kB view details)

Uploaded Python 3

File details

Details for the file rulebricks-0.0.6.tar.gz.

File metadata

  • Download URL: rulebricks-0.0.6.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.7.17 Linux/5.15.0-1061-azure

File hashes

Hashes for rulebricks-0.0.6.tar.gz
Algorithm Hash digest
SHA256 90ae641354aea6aec4519de46e17a7c02a3de7a1572d40dbb35579229f80855b
MD5 58a183d0946756ec65065a5f47761b2e
BLAKE2b-256 33efeea818ca20abd7ccba19125ea0bcf1583cf99fd06e478c78c939e465dec3

See more details on using hashes here.

File details

Details for the file rulebricks-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: rulebricks-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 15.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.7.17 Linux/5.15.0-1061-azure

File hashes

Hashes for rulebricks-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 ed24f01050d09ede3fb4c33072ea72d8b3d350677d1aebdafb58c5f42025e021
MD5 f86ea878f3118ea55f6a05ddcc8d4bdc
BLAKE2b-256 65b2f075a7d6e03dd85ecf194ce2946ab8194b6da8b4f0cfb4700b6a3e502cdb

See more details on using hashes here.

Supported by

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