semvec/pypi-packages huggingface dataset:
pyinteract 0.7.8
A Python API for the SOAP Web Services offered by responsys.
License: BSD
Keywords: responsys interact marketing oracle marketing cloud

========
Interact
========

Responsys Interact
==================
**Disclaimer:** *This code is neither officially supported nor endorsed by Responsys.*

Module for simplified usage of the Responsys Interact API.

This Python package was created to fill the need for a simplified Python
interface to the Responsys Interact web services for our latest version
of the software.

SOAP Web Services can be a bit tricky to deal with, especially for 
Responsys Interact if the developer does not have experience with terms
that are specific to Responsys and/or marketing. This package is geared
to help an experienced developer get the ball rolling with minimal
knowledge of the Responsys Interact API and UI.

The Interact API is limited in comparison to the features offered through
the web UI, but offers everything you would need to create a website that
integrates with services offered by Responsys. There is no way to 
dynamically create an email campaign through code, but you will be able to
launch them dynamically using this API. 

Example use case::

        #!/usr/bin/env python
        from interact import Interact6
        api = Interact6()
        api.connect(username='user', password='pass', pod=5)
        api.merge_into_list('folder/listname', [{
                'EMAIL_ADDRESS_': ...,
                'CUSTOMER_ID_': ...,
        }, { ... }, ...])
        api.trigger_campaign('folder/campaign_name', 'folder/list_name', [{
                'EMAIL_ADDRESS_': ...,
                'OPTIONAL_DATA1': ...,
                'OPTIONAL_DATA2': ...,
        }, ... ])
        api.disconnect()

It's also possible to create a file at ~/.interact/creds.py with saved credentials.

The format of the credentials file::
    credentials = {
        '5': {
            'username': 'apiuser',
            'password': 'pass123',
         },
    }

Use '5' if your endpoint is ws5.*, 2 for ws2.*

Then you connect simply with::
    
        #!/usr/bin/env python
        from interact import Interact6
        api = Interact6()
        api.connect(pod=5)

If a file in ~/.interact/rc.py exists, it will execfile that when
creating an instance of Interact6 unless kward exec_rc is set to False.
This allows you to create simple campaign or program configs so that you
do not need to hardcode paths to Interact objects.