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.9.0.tar.gz (9.5 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.9.0-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pipedrive_api-0.9.0.tar.gz
  • Upload date:
  • Size: 9.5 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.9.0.tar.gz
Algorithm Hash digest
SHA256 2fda408744ac9f5e97befc89e275545597980874a9aad047314b4a7a57ac94e4
MD5 c1538d01595ccbddeb66f266111ef055
BLAKE2b-256 499195d938b633a6c1f56a00a8305021216158c1a6a2e9f1b484593fb6c1d007

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pipedrive_api-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 11.2 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.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f4a3fe916a0751c9690c633beb9ce428af666bbcaedd185d52e2101f427fe358
MD5 bb62f5d1a422030f73cd9a296d884d50
BLAKE2b-256 d67687be13a4682d05b7fc4654aeab7c1846d174b70fde0217ceec9fad108266

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