Skip to main content

A lightweight Python SDK for the Pipedrive API, built with `httpx`.

Project description

Pipedrive API

A lightweight Python SDK for the Pipedrive API, built with httpx.

Installation

pip install pipedrive-api

Usage

from pipedrive import Pipedrive

pipedrive = Pipedrive(domain="yourcompany", api_token="your-api-token")

# Deals
pipedrive.deals.list()
pipedrive.deals.get(123)

Or use as a context manager:

with Pipedrive(domain="yourcompany", api_token="your-api-token") as pipedrive:
    deals = pipedrive.deals.list()

Authentication

Authenticate using your Pipedrive API token. You can find it in Pipedrive under Settings → Personal preferences → API.

It is recommended to load credentials from environment variables rather than hardcoding them:

import os

pipedrive = Pipedrive(
    domain=os.environ["PIPEDRIVE_DOMAIN"],
    api_token=os.environ["PIPEDRIVE_API_TOKEN"],
)

Pagination

.list() returns a single page of results. Use .stream() to automatically paginate through all results, yielding one item at a time:

for deal in pipedrive.deals.stream():
    print(deal["id"])

This works on all endpoints that support listing:

for org in pipedrive.organizations.stream():
    ...

for person in pipedrive.persons.stream():
    ...

You can pass the same filtering parameters as .list():

for deal in pipedrive.deals.stream(status="open", limit=50):
    print(deal["title"])

To collect all results into a list:

all_deals = list(pipedrive.deals.stream())

Error Handling

All non-2xx responses raise a PipedriveError with a status_code attribute:

from pipedrive import Pipedrive, PipedriveError

try:
    pipedrive.deals.get_by_id(999)
except PipedriveError as e:
    print(e.status_code)  # e.g. 404

Version History

Complete version history available in the CHANGELOG.md

Docs

Full API documentation can be found on GitHub Pages

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

pipedrive_api-0.8.0.tar.gz (9.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pipedrive_api-0.8.0-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

File details

Details for the file pipedrive_api-0.8.0.tar.gz.

File metadata

  • Download URL: pipedrive_api-0.8.0.tar.gz
  • Upload date:
  • Size: 9.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pipedrive_api-0.8.0.tar.gz
Algorithm Hash digest
SHA256 236a3e62f6c909b647e51f1b85accd83c2f623af209c93643809eda1b60798b8
MD5 7207b8dd06afdc0440b6a3268052cd6c
BLAKE2b-256 29c6bd3c56e01aeab7b433b6810402285a783d43b61f4614b66f92b8e1f04ad5

See more details on using hashes here.

File details

Details for the file pipedrive_api-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: pipedrive_api-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 11.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pipedrive_api-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7ae38cb6a56f9dd09d5996e0256f4f666c182f007724de6283e62dc7ef8e0273
MD5 381603df25bb6d8fb130c049c99cfa4e
BLAKE2b-256 61cd1f9c059dbb98beb39dac6fa1722f4bda2dd1c523a56867fbeceed46154eb

See more details on using hashes here.

Supported by

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