Skip to main content

Zoho API integration for Python

Project description

Introduction

mfabrik.zoho package provides Python classes for making easy Zoho API calls. They allow you to integrate Zoho web application data into your Python software.

Features

  • Creating Zoho API session a.k.a ticket

  • Extendable API using a base class architecture

  • Logging all incoming and outgoing API traffic with Zoho

  • Support Python 2.4, 2.5 and 2.6 (2.4 needs additional lxml and simplejson libraries installed)

  • Compatible with non-ASCII or Unicode letters

  • Unit tests to guarantee the high quality of the code

mfabrik.zoho is intended to use for machine-to-machine communication and will work with any web framework, like Plone, Django, Google App Engine.

To communicate with Zoho you need username, password and API KEY. For further information, see Setup > Admin > Developer key in your Zoho application.

API support

Currently out of box support includes:

  • CRM apis: insert_records, get_records, delete_lead

You can easily wrap Zoho API calls you need using this library. Please contribute patches to the package.

Installation

To install mfabrik.zoho to your system-wide Python do as below.

Example (UNIX):

sudo easy_install mfabrik.zoho

Example (UNIX, Python 2.4):

sudo easy_install mfabrik.zoho lxml simplejson

Usage

To learn how to use this library, it is best to study its unit test source code (tests.py).

Example usage:

# Import CRM connector class
from mfabrik.zoho.crm import CRM
from mfabrik.zoho.core import ZohoException

# Initialize Zoho CRM API connection
# You need valid Zoho credentials and API key for this.
# You get necessary data from Zoho > Setup > Admin > Developer key
crm = CRM(username="myusername", password="foobar", apikey="12312312312312312323")

# Open connection can be used to make as many as possible API calls
# This will raise ZohoException if credentials are incorrect.
# Also IOError or URLError will be raised if you the connection to Zoho servers
# does not work.
crm.open()

# Lead is just a bunch of dictionaried data
# For possible lead parameters see crm.py.

lead = {
    u"First Name" : u"Mikko",
    u"Last Name" : u"Ohtamaa",
    u"Company" : u"mFabrik Research Oy"
}

# Insert a new lead to Zoho CRM lead database.
# We support multiple leads per call, so we need to listify our one lead first.
lead_ids = crm.insert_records([lead]) # This will raise ZohoException if lead data is invalid

# Lead ids is list of newly created leads
# Store lead ids for future reference

Logging

Python logging module logger Zoho API is used to output API traffic on DEBUG log level.

Source code

Commercial development

This package is licensed under open source GPL license. If you wish to use this code in a commercial product, relicense it or you are looking for high quality Zoho/Python support, please contact mFabrik Research. Our top class Python developers are ready to help you with your software development.

Further reading

Author

mFabrik Research Oy - Python and Plone professionals for hire.

Changelog

1.0.1 - 1.0.2

  • Return CRM lead insert id results [tco]

1.0 - 1.0.1

  • Fixed MANIFEST.in file - setuptools was ignoring docs/ by default [miohtama]

1.0

  • Initial release

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

mfabrik.zoho-1.0.1.tar.gz (14.2 kB view details)

Uploaded Source

File details

Details for the file mfabrik.zoho-1.0.1.tar.gz.

File metadata

File hashes

Hashes for mfabrik.zoho-1.0.1.tar.gz
Algorithm Hash digest
SHA256 55e807e7aa1af480ab17c745e5fc4ee883ccd8da9c0e6ab570f6358db048d66e
MD5 96c467192770e35e8bab850603ae9cc4
BLAKE2b-256 e69fedb9d821643ce5fdb4aafef97301013262582d2d61e11d0ffc46de611082

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page