Skip to main content

API wrapper for HubSpot written in Python

Project description

hubspot-python

HubSpot API wrapper written in Python.

Installing

pip install hubspot-python

Requirements

- requests

Usage

Client instantiation

from hubspot.client import Client
client = Client(APP_ID, HAPIKEY, CLIENT_ID, CLIENT_SECRET)

Companies

Get all companies

response = client.companies.get_companies(data)

Create a Company

data = {
    "name": "A company name",
    "description": "A company description"
}
response = client.companies.create_company(data)

Delete a Company

response = client.companies.delete_company(COMPANY_ID)

Get Recently Created Companies

response = client.companies.get_recently_created_companies()

Get a Company

response = client.companies.get_company(COMPANY_ID)

Contact Lists

Get contact lists

response = client.contact_lists.get_contact_lists()

Create a new contact list

data = {
    "name": "tweeters",
    "dynamic": true,
    "portalId": 62515,
    "filters": 
    [
        [{
            "operator": "EQ",
            "value": "@hubspot",
            "property": "twitterhandle",
            "type": "string"
        }]
    ]
}
response = client.contact_lists.create_contact_list(data)

Delete a contact list

response = client.contact_lists.delete_contact_list(CONTACT_LIST_ID)

Get recently added contacts from a list

response = client.contact_lists.get_recently_added_contacts_in_a_list()

Get a contact list by its unique ID

response = client.contact_lists.get_contact_list(CONTACT_LIST_ID)

Add existing contacts to a list

data = {
  "vids": [
    3057124,
	5524274
  ],
  "emails": [
    "testingapis@hubspot.com"
  ]
}
response = client.contact_lists.add_contact_to_list(CONTACT_LIST_ID, data)

Contacts

Get all contacts

response = client.contacts.get_contacts()

Create a new contact

data = {
    "email": "testingapis@hubspot.com",
    "firstname": "Adrian",
    "lastname": "Mott",
    "website": "http://hubspot.com",
    "company": "HubSpot",
    "phone": "555-122-2323",
    "address": "25 First Street",
    "city": "Cambridge",
    "state": "MA",
    "zip": "02139",
}
response = client.contacts.create_contact(data)

Delete a contact

response = client.contacts.delete_contact(CONTACT_ID)

Get recently created contacts

response = client.contacts.get_recently_created_contacts()

Get a contact list by its unique ID

response = client.contacts.get_contact(CONTACT_ID)

Deals

Get all deals

response = client.deals.get_deals()

Create a Deal

data = {
    "dealname": "Tim's Newer Deal",
    "dealstage": "appointmentscheduled",
    "pipeline": "default",
    "hubspot_owner_id": "24",
    "closedate": 1409443200000,
    "amount": "60000",
    "dealtype": "newbusiness",
}
response = client.deals.create_deal(data)

Delete a Deal

response = client.deals.delete_deal(DEAL_ID)

Get Recently Created Deals

response = client.deals.get_recently_created_deals()

Get a contact list by its unique ID

response = client.deals.get_deal(DEAL_ID)

Fields (Properties)

Get all fields

response = client.fields.get_fields(MODULE)

Integrations

Get all fields

response = client.integrations.get_account_details()

Get all fields

response = client.integrations.get_daily_api_usage()

Webhooks

Viewing Settings

response = client.webhooks.get_settings()

Updating Settings

data = {
    "webhookUrl": "https://testing.com/webhook-modified", 
    "maxConcurrentRequests": 25
}

response = client.webhooks.update_settings(data)

Get Subscriptions

response = client.webhooks.get_subscriptions()

Create a New Subscription

data = { 
    "subscriptionDetails" : {
        "subscriptionType" : "company.propertyChange", 
        "propertyName" : "companyname" 
    }, 
    "enabled": False
}

response = client.webhooks.create_subscription(data)

Update a Subscription

data = { 
    "enabled": False
}

response = client.webhooks.create_subscription(SUBSCRIPTION_ID, data)

Delete a Subscription

response = client.webhooks.delete_subscription(SUBSCRIPTION_ID)

Workflows

Get workflows

response = client.workflows.get_workflows()

Get workflow

response = client.workflows.get_workflow(WORKFLOW_ID)

Create a workflow

data = {
    "name": "Test Workflow",
    "type": "DRIP_DELAY",
    "onlyEnrollsManually": true,
    "actions": [
        {
            "type": "DELAY",
            "delayMillis": 3600000
        },
        {
            "newValue": "HubSpot",
            "propertyName": "company",
            "type": "SET_CONTACT_PROPERTY"
        },
        {
            "type": "WEBHOOK",
            "url": "https://www.myintegration.com/webhook.php",
            "method": "POST",
            "authCreds": {
                "user": "user",
                "password": "password"
            }
        }
    ]
}
response = client.workflows.create_workflow(data)

Delete a Deal

response = client.workflows.delete_workflow(WORKFLOW_ID)

Enroll a contact into a workflow

response = client.workflows.enroll_a_contact_into_workflow(WORKFLOW_ID, EMAIL)

Unenroll a contact from a workflow

response = client.workflows.unenroll_a_contact_into_workflow(WORKFLOW_ID, EMAIL)

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

hubspot_python-1.0.3.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

hubspot_python-1.0.3-py3-none-any.whl (12.5 kB view details)

Uploaded Python 3

File details

Details for the file hubspot_python-1.0.3.tar.gz.

File metadata

  • Download URL: hubspot_python-1.0.3.tar.gz
  • Upload date:
  • Size: 10.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for hubspot_python-1.0.3.tar.gz
Algorithm Hash digest
SHA256 46bb912bbcd1ed2992097c50385f2d391d92f65d1300b11998b856e34d0a417f
MD5 d70f32bd1c9fb4f56279a356f810f817
BLAKE2b-256 972b34241fb8f264adc64630a42fc22878b4b13ca8e1723b5a791e9f9b11ef8c

See more details on using hashes here.

File details

Details for the file hubspot_python-1.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for hubspot_python-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 746c1e0ed9f0ce7bcceff232ba8f0ce496d5dedcab6f4aac420b7c2dcbfffe6d
MD5 8f7b2f57fb8f4ca5e241848e6b97c957
BLAKE2b-256 f45c8e15b3a7cc80e9d29ed22eb26c5d88de190aec1eaced5d4c89ce7447b82e

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