Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

A python wrapper around Bronto's SOAP API

Project Description

bronto-python

bronto-python is a python query client which wraps the Bronto SOAP API in an easy to use manner, using the suds library.

Getting Started

from bronto.client import Client

client = Client('BRONTO_API_TOKEN')
client.login()

Simple as that!

Contacts

Adding a Contact

contact_data = {'email': 'me@domain.com',
                'source': 'api',
                'customSource': 'Using bronto-python to import my contact'}
client.add_contact(contact_data)

Retrieving a contact

client.get_contact('me@domain.com')

Deleting a contact

client.delete_contact('me@domain.com')

Orders

Adding an order

order_data = {'id': 'xyz123',
              'email': 'me@domain.com',
              'products': [
                {'id': 1,
                 'sku': '1111',
                 'name': 'Test Product 1',
                 'description': 'This is our first test product.',
                 'quantity': 1,
                 'price': 3.50},
                {'id': 2,
                 'sku': '2222',
                 'name': 'Second Test Product',
                 'description': 'Here we have another product for testing.',
               'quantity': 12,
               'price': 42.00}
              ]
             }
client.add_order(order_data)

Deleting an order

client.delete_order('xyz123')  # Orders are deleted by their orderId

FIELDS

Adding a field

field_data = {'name': 'my_field',
              'label': 'My Field',
              'type': 'text',
              'visible': 'private'
              }
client.add_field(field_data)

Retrieving a field

client.get_field('my_field')

Deleting a field

field = client.get_field('my_field')
client.delete_field(field.id)

LISTS

Adding a list

list_data = {'name': 'my_list',
              'label': 'My List'
              }
client.add_list(list_data)

Retrieving a list

client.get_list('my_list')

Deleting a list

list_to_del = client.get_list('my_list')
client.delete_field(list_to_del.id)

NOTE: This client is not built with long-running processes in mind. The Bronto API connection will time out after 20 minutes of inactivity, and this client does NOT handle those timeouts.

Release History

This version
History Node

0.8.0

History Node

0.7.0

History Node

0.6.0

History Node

0.5.0

History Node

0.4.1

History Node

0.4.0

Download Files

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

Filename, Size & Hash SHA256 Hash Help File Type Python Version Upload Date
bronto-python-0.8.0.tar.gz
(11.9 kB) Copy SHA256 Hash SHA256
Source None Feb 27, 2015

Supported By

Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Google Google Cloud Servers DreamHost DreamHost Log Hosting