Skip to content

Python API for interacting with the pipedrive.com API

Notifications You must be signed in to change notification settings

jtf621/python-pipedrive

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

python-pipedrive

Python library for interacting with the pipedrive.com API

This is being developed for my specific use so there's no guarantee I'll cover all of the aspects of the Pipedrive API. Feel free to add features though, I welcome pull requests.

All features should be supported though as this is just a lightweight wrapper around the API.

Usage:

Create a Pipedrive object, passing either the api key or your username and password as the parameters

from pipedrive import Pipedrive
pipedrive = Pipedrive(USERNAME, PASSSWORD)

or

from pipedrive import Pipedrive
pipedrive = Pipedrive(API_KEY)

The rest of the functions relate to the URL as specified in the API Docs.

Do yourself a favor and try a few simple requests and look the raw responses to know what data Pipedrive's API gives you. This will aid in knowing how to deal with your responses in python code. For example, to find an organzation:

curl 'https://api.pipedrive.com/v1/organizations/find?api_token=abcd1234abcd1234abcd1234abcd1234abcd1234&term=microsoft'

which spits out something like:

{"success":true,"data":[{"id":215,"name":"Microsoft Main Organization","visible_to":"3"},{"id":360,"name":"Microsoft Subdivision Company","visible_to":"3"}],"additional_data":{"pagination":{"start":0,"limit":100,"more_items_in_collection":false}}}

The two things to note are the HTTP Method, and the path:

Examples:

  1. List the organizations

        pipedrive.organizations(method='GET')
  2. Add a New Deal

        pipedrive.deals({
        	'title': 'Big Sucker',
        	'value': 1000000,
        	'org_id': 2045,
        	'status': 'open'
       	}, method='POST')
  3. Delete an Activity

        pipedrive.activities({'id': 6789}, method='DELETE')
  4. Find a person, and use the search results. The variable term is the search term that has been passed in.

        import json
        ...
        response = pipedrive.persons_find({'term':term}, method='GET')
        results = response['data']
        suggestions = []
        if results != None:
                for result in results:
                    suggestions.append({'value': result['name'], 'data': result})
        json_response = {'query': term, 'suggestions': suggestions}
        data = json.dumps(json_response)

    And return data to some kind of javascript search result autocomplete thing (this example is formatted for devbridge's simple and easy-to-use jquery.autocomplete.js)

About

Python API for interacting with the pipedrive.com API

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%