Skip to main content

Python wrapper on the Nutshell CRM JSON RPC API

Project description

Nutshell API

This is a work-in-progress attempt at a pythonic API for querying the Nutshell CRM API. It does not yet support modifying data in a Nutshell instance.

Installation

pip install nutshell

Usage

  • Initialize the API instance with your credentials
  • Create an instance of the method(s) you want to call
  • Pass a single method instance, or a collection of methods to the api_calls property of the API class
  • Execute the method calls on API with the call_api() method
    • If a single method is passed to the API instance, the result will be a single response object
    • If a collection of methods is passed, the result will be a list of response objects
    • aiohttp is used to make the API calls asynchronous
import os

from rich import print

import nutshell
from nutshell import methods

find_activities = methods.FindActivityTypes()
ns = nutshell.NutshellAPI(os.getenv("NUTSHELL_USERNAME"), password=os.getenv("NUTSHELL_KEY"))
ns.api_calls = find_activities
activity_types = ns.call_api()
print(activity_types)

Each API call will have a corresponding response object with a result value that contains the response from the API.

FindActivityTypesResult(
    result=[
        ActivityType(
            stub=True,
            id=1,
            rev='1',
            entity_type='Activity_Types',
            name='Phone Call / Meeting'
        ),
        ActivityType(
            stub=True,
            id=2,
            rev='7',
            entity_type='Activity_Types',
            name='Quotes Sent'
        ),
        ActivityType(
            stub=True,
            id=3,
            rev='4',
            entity_type='Activity_Types',
            name='New Introductions'
        ),
        ActivityType(
            stub=True,
            id=103,
            rev='1',
            entity_type='Activity_Types',
            name='Elevated Conversations / Leader Intros'
        )
    ]
)

TODO

  • Gracefully handle errors on method queries
  • Convenience methods for common queries (Users, Leads, etc.)

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

nutshell-0.4.2.tar.gz (8.0 kB view details)

Uploaded Source

Built Distribution

nutshell-0.4.2-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

Details for the file nutshell-0.4.2.tar.gz.

File metadata

  • Download URL: nutshell-0.4.2.tar.gz
  • Upload date:
  • Size: 8.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.4 Darwin/23.5.0

File hashes

Hashes for nutshell-0.4.2.tar.gz
Algorithm Hash digest
SHA256 21a54eb948753f289e9fa1b7d2de30bb8775a4beaafc98fb7da04861d482b3ad
MD5 8795430f11f4b983747f33fd12beebdb
BLAKE2b-256 bdb250d80b5fe34c2cab2757952d34f81a2cba227f1a8254f4e1d8edc7516c66

See more details on using hashes here.

File details

Details for the file nutshell-0.4.2-py3-none-any.whl.

File metadata

  • Download URL: nutshell-0.4.2-py3-none-any.whl
  • Upload date:
  • Size: 8.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.4 Darwin/23.5.0

File hashes

Hashes for nutshell-0.4.2-py3-none-any.whl
Algorithm Hash digest
SHA256 7569a1c205f07f2982332cd85c7075698dbe1f7307e2fb34810209af66fd7da6
MD5 c0c48df6d8b520d73070263157f6ab8e
BLAKE2b-256 0051dbabdb62dfb89bdca30e22244e969a7ca29e9d4da60279d4e637465f9a5d

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