Python wrapper for Vero API
Project description
vero: Python client for Vero
============================
.. image:: https://circleci.com/gh/waveaccounting/vero-python.svg?style=svg
:target: https://circleci.com/gh/waveaccounting/vero-python
:alt: Circle CI
.. image:: https://readthedocs.org/projects/pip/badge/?version=latest
:target: https://vero.readthedocs.org/en/latest/
:alt: Read the Docs
Full documentation can be found on `ReadTheDocs <https://vero.readthedocs.org/en/latest/>`_
Vero is an API wrapper for event logging in your Python application.
Fetch your auth token from your `Vero <http://getvero.com>`_ account and use the python interface instead of `API <http://github.com/getvero/vero-api>`_ web hooks.
::
>>> from vero import VeroEventLogger
>>> logger = VeroEventLogger(auth_token)
>>> user_id = 42
>>> user_data = {
'full_name': 'Jane Doe'
}
>>> response = logger.add_user(user_id, user_data)
>>> response.status_code
200
Features
--------
Modify user data and log events. Run in live or test mode.
- Add user
- Delete user
- Edit user
- Add user tags
- Remove user tags
- Unsubscribe user
- Resubscribe user
- Add event
- Check heartbeat
Installation
------------
Install the package from PyPI
::
pip install vero
Run Tests
------------
Run Tests from command line.
::
VERO_AUTH_TOKEN=[ Your Token here ] python setup.py test
Usage
-----
Create instance
~~~~~~~~~~~~~~~
Use the authorization token from your Vero account page to create a VeroEventLogger object.
::
>>> from vero import VeroEventLogger
>>> auth_token = "foobar"
>>> logger = VeroEventLogger(auth_token)
After creating an instance of VeroEventLogger as ``logger`` use any of the following methods to access Vero.
Add user
~~~~~~~~
Create a new user with the information in ``user_data``. ``user_email`` is optional but is needed to trigger emails to the user.
::
>>> user_id = 1
>>> user_email = 'johndoe@example.com'
>>> user_data = {
'first name': 'John',
'last name': 'Doe'
}
>>> logger.add_user(user_id, user_data, user_email=user_email)
Edit user
~~~~~~~~~
Add or change fields in ``user_data`` for the user.
::
>>> user_id = 1
>>> user_data = {
'first name': 'Jane'
}
>>> logger.edit_user(user_id, user_data)
Add user tags
~~~~~~~~~~~~~
Add each tag in ``tag_list`` to the user.
::
>>> user_id = 1
>>> tag_list = ['blue', 'red', 'yellow']
>>> logger.add_tags(user_id, tag_list)
Remove user tags
~~~~~~~~~~~~~~~~
Remove each tag in ``tag_list`` from the user.
::
>>> user_id = 1
>>> tag_list = ['yellow']
>>> logger.remove_tags(user_id, tag_list)
Unsubscribe user
~~~~~~~~~~~~~~~~
Unsubscribe the user from triggering future events.
::
>>> user_id = 1
>>> logger.unsubscribe_user(user_id)
Resubscribe user
~~~~~~~~~~~~~~~~
Resubscribe the user to allow triggering future events.
::
>>> user_id = 1
>>> logger.resubscribe_user(user_id)
Add event
~~~~~~~~~
Note: adding an event with a user id that doesn't exist will create the user.
Event data can contain whatever fields are needed.
::
>>> user_id = 2
>>> user_email = 'janedoe@example.com'
>>> event_name = 'Visited Website'
>>> event_data = {
'date': 'today',
'visited': 'front page'
}
>>> logger.add_event(event_name, event_data, user_id, user_email=user_email)
Re-identify a user
~~~~~~~~~~~~~
Change a user's ``identifier`` (or ID) in Vero. This method accept their current (old) ``identifier`` and the ``identifier`` to replace it.
::
>>> user_id = 1
>>> new_user_id = 2
>>> logger.reidentify_user(user_id, new_user_id)
Delete user
~~~~~~~~~~~~~~~~
Delete the user
::
>>> user_id = 1
>>> logger.delete_user(user_id)
============================
.. image:: https://circleci.com/gh/waveaccounting/vero-python.svg?style=svg
:target: https://circleci.com/gh/waveaccounting/vero-python
:alt: Circle CI
.. image:: https://readthedocs.org/projects/pip/badge/?version=latest
:target: https://vero.readthedocs.org/en/latest/
:alt: Read the Docs
Full documentation can be found on `ReadTheDocs <https://vero.readthedocs.org/en/latest/>`_
Vero is an API wrapper for event logging in your Python application.
Fetch your auth token from your `Vero <http://getvero.com>`_ account and use the python interface instead of `API <http://github.com/getvero/vero-api>`_ web hooks.
::
>>> from vero import VeroEventLogger
>>> logger = VeroEventLogger(auth_token)
>>> user_id = 42
>>> user_data = {
'full_name': 'Jane Doe'
}
>>> response = logger.add_user(user_id, user_data)
>>> response.status_code
200
Features
--------
Modify user data and log events. Run in live or test mode.
- Add user
- Delete user
- Edit user
- Add user tags
- Remove user tags
- Unsubscribe user
- Resubscribe user
- Add event
- Check heartbeat
Installation
------------
Install the package from PyPI
::
pip install vero
Run Tests
------------
Run Tests from command line.
::
VERO_AUTH_TOKEN=[ Your Token here ] python setup.py test
Usage
-----
Create instance
~~~~~~~~~~~~~~~
Use the authorization token from your Vero account page to create a VeroEventLogger object.
::
>>> from vero import VeroEventLogger
>>> auth_token = "foobar"
>>> logger = VeroEventLogger(auth_token)
After creating an instance of VeroEventLogger as ``logger`` use any of the following methods to access Vero.
Add user
~~~~~~~~
Create a new user with the information in ``user_data``. ``user_email`` is optional but is needed to trigger emails to the user.
::
>>> user_id = 1
>>> user_email = 'johndoe@example.com'
>>> user_data = {
'first name': 'John',
'last name': 'Doe'
}
>>> logger.add_user(user_id, user_data, user_email=user_email)
Edit user
~~~~~~~~~
Add or change fields in ``user_data`` for the user.
::
>>> user_id = 1
>>> user_data = {
'first name': 'Jane'
}
>>> logger.edit_user(user_id, user_data)
Add user tags
~~~~~~~~~~~~~
Add each tag in ``tag_list`` to the user.
::
>>> user_id = 1
>>> tag_list = ['blue', 'red', 'yellow']
>>> logger.add_tags(user_id, tag_list)
Remove user tags
~~~~~~~~~~~~~~~~
Remove each tag in ``tag_list`` from the user.
::
>>> user_id = 1
>>> tag_list = ['yellow']
>>> logger.remove_tags(user_id, tag_list)
Unsubscribe user
~~~~~~~~~~~~~~~~
Unsubscribe the user from triggering future events.
::
>>> user_id = 1
>>> logger.unsubscribe_user(user_id)
Resubscribe user
~~~~~~~~~~~~~~~~
Resubscribe the user to allow triggering future events.
::
>>> user_id = 1
>>> logger.resubscribe_user(user_id)
Add event
~~~~~~~~~
Note: adding an event with a user id that doesn't exist will create the user.
Event data can contain whatever fields are needed.
::
>>> user_id = 2
>>> user_email = 'janedoe@example.com'
>>> event_name = 'Visited Website'
>>> event_data = {
'date': 'today',
'visited': 'front page'
}
>>> logger.add_event(event_name, event_data, user_id, user_email=user_email)
Re-identify a user
~~~~~~~~~~~~~
Change a user's ``identifier`` (or ID) in Vero. This method accept their current (old) ``identifier`` and the ``identifier`` to replace it.
::
>>> user_id = 1
>>> new_user_id = 2
>>> logger.reidentify_user(user_id, new_user_id)
Delete user
~~~~~~~~~~~~~~~~
Delete the user
::
>>> user_id = 1
>>> logger.delete_user(user_id)
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
vero-2.0.1.tar.gz
(5.4 kB
view details)
File details
Details for the file vero-2.0.1.tar.gz
.
File metadata
- Download URL: vero-2.0.1.tar.gz
- Upload date:
- Size: 5.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ccd0d1ea1b32adec383029de48927c989d8b770a33b78466b853bcfcbc1e5dc7 |
|
MD5 | 8054337cb06908a211e56ef9ee79b609 |
|
BLAKE2b-256 | 45275dc555227de8a1e82fff614ce70787806891cd871f26783e62c6c2fdaa89 |