|pypi|
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:
.. code-block:: python
>>> client.prospect.read('someone@example.com')
>>> client.prospect.update('someone@example.com', first_name='John')
.. code-block:: bash
$ pip install pardot-api-client
Use the Python API client to interact with the API:
.. code-block:: python
>>> 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)
...
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:
.. code-block:: python
>>> # 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)
.. |pypi| image:: https://badge.fury.io/py/pardot-api-client.svg :target: https://badge.fury.io/py/pardot-api-client