Skip to content
This repository has been archived by the owner on Jan 26, 2024. It is now read-only.

Latest commit

 

History

History
112 lines (73 loc) · 2.07 KB

README.rst

File metadata and controls

112 lines (73 loc) · 2.07 KB

Agile CRM Python library

Python library for Agile CRM based on the rest-api documentation.

Status

We use this in production for Screenly, and it works fine. Still a bit rough around the corners, but it does indeed work.

Installation

Clone the repo as a sub-module inside your project.

Install the Python requirements.

$ pip install agilecrm

Configuration

In order to use the module, you need to set the following environment variables:

  • AGILECRM_APIKEY
  • AGILECRM_EMAIL
  • AGILECRM_DOMAIN

Usage

First, you need to import the module. This may vary depending on your paths etc, but something like:

import agilecrm

Creating a user

Simply create a new user. Despite what is claimed in the documentation, all variables appear to be optional.

agilecrm.create_contact(
    first_name='John',
    last_name='Doe',
    email='[email protected]',
    tags=['signed_up'],
    company='Foobar Inc')

You can also use custom fields (must be created in Agile CRM first):

agilecrm.create_contact(
    first_name='John',
    custom = {
      'SomeField': 'Foobar'
    }

Update a contact

Update a user object.

agilecrm.update_contact(
    first_name='Steve',
    last_name='Smith',
    email='[email protected]',
    tags=['name_updated'],
    company='Foobar2 Inc')

Get a user (by email)

This will get the user by email and return the user object as JSON.

agilecrm.get_contact_by_email('[email protected]')

Get a user (by UUID)

This will get the user by UUID and return the user object as JSON.

agilecrm.get_contact_by_uuid(1234)

Add a tag

This will add the tag ‘awesome_user’ to the user ‘[email protected]’. Both variables are required.

agilecrm.add_tag('[email protected]', 'awesome_user')