Skip to main content

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.

https://travis-ci.org/Scotts-Marketplace/bronto-python.svg?branch=master https://coveralls.io/repos/Scotts-Marketplace/bronto-python/badge.png?branch=master https://pypip.in/d/bronto-python/badge.png

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.

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

bronto-python-0.8.0.tar.gz (11.9 kB view details)

Uploaded Source

File details

Details for the file bronto-python-0.8.0.tar.gz.

File metadata

  • Download URL: bronto-python-0.8.0.tar.gz
  • Upload date:
  • Size: 11.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for bronto-python-0.8.0.tar.gz
Algorithm Hash digest
SHA256 f970121473cae58f148868f88aed219489c66e97b5bbf4a541e73f656c0f2dcb
MD5 b5b990aa00d84c28f279e09f0d8d4416
BLAKE2b-256 1ea3bf6f2c64c9d1d5aea9978da898ea5ef2a0a6142f0dfac20865265f5c8d68

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