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.1.1.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

rulebricks-0.1.1-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: rulebricks-0.1.1.tar.gz
  • Upload date:
  • Size: 8.5 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.1.1.tar.gz
Algorithm Hash digest
SHA256 921b74ca7a6d72aadc063fb92869f344c129e3d270e97b513a39be4900a53be2
MD5 216f0491c80f7357239266dffc1c20cb
BLAKE2b-256 9572ffcbabd0a6c2628ddc8d80be1cc1668cf2bb4ed354580b9c591d69849b86

See more details on using hashes here.

File details

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

File metadata

  • Download URL: rulebricks-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 15.8 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.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c326be85b101b5a24ef3ef17143cecf41e4fb304115860b792e8beddbd76da1b
MD5 95d820ef5dd81947c7cd7422c9aa6f51
BLAKE2b-256 ca1474c76bcd0a376f6d9faeb381f263101864c6545ffba6fa51c8812463536b

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