Skip to main content

Pardot API Client

Project description

A Python client for the Pardot API.

It provides object notation for interacting with resources on the API in clean and simple idiomatic statements like:

>>> client.prospect.read('someone@example.com')
>>> client.prospect.update('someone@example.com', first_name='John')

Features

  • Supports Python 2 and 3

  • Supports API version 3

  • Supports all API entities: Account, Campaign, Custom Field, Custom Redirect, Dynamic Content, Email, Email Clicks, Form, Identified Company, Lifecycle History, Lifecycle Stage, List, List Membership, Opportunity, Profile, Profile Criteria, Prospect, Prospect Account, Tag, Tag Object, User, Visit, Visitor, Visitor Activity, Visitor Page View, Visitor Referrer

  • Supports most API operations: query, assign, unassign, create, read, update, upsert, delete

  • Supports un-setting of field values

  • Handles API session timeouts implicitly

  • Transparent API error feedback

  • Optional request retries with incremental back-off

Planned features

  • Support for API version 4

  • Support for API batch operations: batchCreate, batchUpdate, batchUpsert

  • Supports result set manipulation, eg specifying fields, limit, offset, sort_by, sort_order

  • Implicit results pagination

  • Implicit chunking for batch operationss

Installation

$ pip install pardot-api-client

Usage

  1. Obtain API authentication credentials from Pardot by following instructions at http://developer.pardot.com/#authentication - you’ll need the following: email, password, user_key

  2. Review the supported Pardot API documentation at http://developer.pardot.com/#official-pardot-api-documentation

  3. Use the Python API client to interact with the API:

    >>> from pardot.client import APIClient
    >>> client = APIClient(
    ...     'pardot-email',
    ...     'pardot-password',
    ...     'pardot-user_key')
    ...
    >>> # read
    >>> r = client.prospect.read('someone@example.com')
    >>> print(r)
    >>> # update
    >>> r = client.prospect.update('someone@example.com', first_name='John')
    >>> print(r)
    >>> # query
    >>> for r in client.prospect.query(new=True):
    ...    print(r)
    ...

Arguments vs keyword arguments

To keep the client’s API simple it makes educated guesses about the identifiers passed in resource operation calls.

To make this work all required parameters (except user_key and api_key, which are automatically added) must be passed as positional arguments and any optional parameters passed as keyword arguments.

For instance, the API documentation states that “assign” operations on “prospect” resources may use either “email” or “id” as identifiers and must supply one of the following parameters: “user_email” or “user_id” or “group_id”. Any of the forms below could be used to make this call from the client:

>>> # identify by email
>>> client.prospect.update('someone@example.com', user_email='someone-else@example.com')
>>> client.prospect.update('someone@example.com', user_id=2544897)
>>> client.prospect.update('someone@example.com', group_id=5499876)
>>> # identify by id
>>> client.prospect.update(7142577, user_email='someone-else@example.com')
>>> client.prospect.update(7142577, user_id=2544897)
>>> client.prospect.update(7142577, group_id=5499876)

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

pardot-api-client-0.0.1.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

pardot_api_client-0.0.1-py2-none-any.whl (7.9 kB view details)

Uploaded Python 2

File details

Details for the file pardot-api-client-0.0.1.tar.gz.

File metadata

File hashes

Hashes for pardot-api-client-0.0.1.tar.gz
Algorithm Hash digest
SHA256 85ce982bc394a84e5d3af426892806da8d8a00d6442693745a994d4fc26e8398
MD5 f479de9493d39cd8afc6df002988899c
BLAKE2b-256 b7f3cc50e5bba39facc88a7a12fb2119a735af0b8c2aa65e98eff3eef8b60bd0

See more details on using hashes here.

File details

Details for the file pardot_api_client-0.0.1-py2-none-any.whl.

File metadata

File hashes

Hashes for pardot_api_client-0.0.1-py2-none-any.whl
Algorithm Hash digest
SHA256 3eaa54abeb5a1ae75175ff7f06d8039685467643ba53cddd5bcc9c1d3d2cfa22
MD5 c6282d05278b68b12978ef891476640f
BLAKE2b-256 587155e7dd9c272e9bc8334bbe6272c393b18e271f5ecef0aebee2098ca2b152

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