Skip to main content

Unofficial Python SDK for MagicBell

Project description

MagicBell-Python SDK

magicbell logo purple

This SDK provides convenient access to the MagicBell REST API from applications written in Python. It includes helpers for creating notifications, managing users, managing projects, and executing GraphQL.

CI codecov code coverage PyPI - License PyPI - Python Version PyPI Code style: black


This is an unofficial Python SDK for MagicBell open sourced with ❤️ by Noteable, a collaborative notebook platform that enables teams to use and visualize data, together.

Install | Getting Started | Examples | License | Code of Conduct | Contributing

Requirements

Python 3.8+

Installation

Poetry

poetry add magicbell

Then import the package:

import magicbell

Pip

pip install magicbell

Then import the package:

import magicbell

Getting Started

import magicbell
from magicbell.configuration import Configuration

config = Configuration(
    api_key="YOUR_API_KEY",
    api_secret="YOUR_API_SECRET",
)
async with magicbell.MagicBell(config) as mb:
    # Send a notification
    await mb.realtime.create_notification(
        magicbell.WrappedNotification(
            notification=magicbell.Notification(
                title="My first notification from python!",
                recipients=[magicbell.Recipient(email="dan@example.com")],
            )
        )
    )

Authentication

Most API calls require your MagicBell project API Key and API Secret. Some API calls (i.e. projects) require your MagicBell user JWT (enterprise only).

See the MagicBell API documentation for more information.

Configuration

Configuration can be done explicitly using the magicbell.Configuration class, or implicitly by setting environment variables with the MAGICBELL_ prefix.

Explicit Configuration

from magicbell.configuration import Configuration


# Create a configuration object with the required parameters
config = Configuration(
    api_key="YOUR_API_KEY",
    api_secret="YOUR_API_SECRET",
)

Implicit Configuration

export MAGICBELL_API_KEY="YOUR_API_KEY"
export MAGICBELL_API_SECRET="YOUR_API_SECRET"
from magicbell.configuration import Configuration


config = Configuration()

Examples

For more examples see the examples directory.

Contributing

See CONTRIBUTING.md.


Open sourced with ❤️ by Noteable for the community.

Boost Data Collaboration with Notebooks

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

magicbell-1.1.1.tar.gz (12.4 kB view details)

Uploaded Source

Built Distribution

magicbell-1.1.1-py3-none-any.whl (16.5 kB view details)

Uploaded Python 3

File details

Details for the file magicbell-1.1.1.tar.gz.

File metadata

  • Download URL: magicbell-1.1.1.tar.gz
  • Upload date:
  • Size: 12.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.14 CPython/3.10.2 Linux/5.15.0-1014-azure

File hashes

Hashes for magicbell-1.1.1.tar.gz
Algorithm Hash digest
SHA256 994078ecba9a0aadc826e35c2d571966a940c784350c80fd9bb84f279e384a0f
MD5 c053bd8af1ad09edd05fc450137532ab
BLAKE2b-256 0f8c846f5822b79afa952fdb5d9f3a3a30b1334251d4ddc7ecabb294997f40bd

See more details on using hashes here.

File details

Details for the file magicbell-1.1.1-py3-none-any.whl.

File metadata

  • Download URL: magicbell-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 16.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.14 CPython/3.10.2 Linux/5.15.0-1014-azure

File hashes

Hashes for magicbell-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 42cc73329b939830e8f0053cd2b4b8de082ec8df1a67b2b7501ee2d51cc2c696
MD5 dcc00df7ac2fe77fafbd62f6ba34e9a5
BLAKE2b-256 febff103fad848a8b897b3d335db9c02c842e6d01ae8ddc379866672fc8681d9

See more details on using hashes here.

Supported by

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