Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

vero: Python client for Vero

Circle CI Read the Docs

Full documentation can be found on ReadTheDocs

Vero is an API wrapper for event logging in your Python application. Fetch your auth token from your Vero account and use the python interface instead of 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


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


Install the package from PyPI

pip install vero

Run Tests

Run Tests from command line.

VERO_AUTH_TOKEN=[ Your Token here ] python test


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 = ''
>>> 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 = ''
>>> 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)


A thin wrapper for the public Vero API







No packages published