API Endpoints

This page defines the marketing API endpoints that HubSpot offers to developers and customers. For questions, please post to our developers forum.

If you're looking for documentation on creating or adapting an app for the HubSpot App Marketplace, please see the Marketplace Docs.

You can also explore the HubSpot APIs in our Live Documentation which lets you make API calls from the site.

All API calls to HubSpot should be made to the "https://api.hubapi.com" base domain. The following is a list of the API endpoints HubSpot offers:

Blog API

The HubSpot Blog API provides access to your blogs, blog posts, blog comments, and some analytics data about them. You can use to find blog posts, add new posts, and export related data.

Method Description
GET  /blog/v1/list.:ext List blogs in a given HubSpot portal.
GET  /blog/v1/:blog_guid.:ext List information about a specific blog.
GET  /blog/v1/:blog_guid/comments.:ext List comments for a specific blog.
GET  /blog/v1/:blog_guid/posts.:ext List Posts for a specific Blog.
GET  /blog/v1/posts/:post_guid.:ext List information about a specific blog post.
GET  /blog/v1/posts/:post_guid/comments.:ext List comments for a specific blog post.
GET  /blog/v1/comments/:comment_guid.:ext List information about a specific blog comment.
POST  /blog/v1/:blog_guid/posts.atom Create a new "draft" blog post.
PUT  /blog/v1/posts/:post_guid.atom Update a blog post.
PUT  /blog/v1/posts/:post_guid.atom Publish a blog post.
POST  /blog/v1/posts/:post_guid/comments.atom Create a new blog comment.

Keywords API

The Keywords API enables developers to access information about the keywords in a HubSpot portal. This information can be relevant for content-related work, search engine optimization, social media interactions and more. Developers can also add or remove keywords from a portal.

Method Description
GET  /keywords/v1/keywords.json Get a list of Keywords for a given portal.
GET  /keywords/v1/keywords/:keyword_guid.json Get information about an individual Keyword.
PUT  /keywords/v1/keywords.json Create a new Keyword in a given portal.
DELETE  /keywords/v1/keywords/:keywords_guid Delete a Keyword from a portal.

Leads API

HubSpot leads are real sales leads that have converted through a website form. This API provides access to HubSpot lead information and intelligence.

Method Description
GET  /leads/v1/list Search for leads in a given HubSpot portal. Returns information from a maximum of 100 relevant leads that you searched for in JSON format.
GET  /leads/v1/lead Search for a specific lead by various criteria. You can search for individual leads by UserToken, Email and ConversionEventGuid.
POST  /?app=leaddirector&FormName=yourformname Inserts a lead into HubSpot. This is a great place to start using the Leads resource in order to get your leads into HubSpot via an API call.
PUT  /leads/v1/lead/GUID Updates information for a specific lead.
POST  /leads/v1/callback-url Create a new webhook endpoint URL. Webhooks are currently limited to HubSpot enterprise customers only.
GET  /leads/v1/callback-url Get a list of webhook endpoint URLs. Webhooks are currently limited to HubSpot enterprise customers only.
DELETE  /leads/v1/callback-url Delete a webhook endpoint URL. Webhooks are currently limited to HubSpot enterprise customers only.

Lead Nurturing API

Lead Nurturing is a method of marketing automation that consists of automated email campaigns targeted at leads that have converted through HubSpot. The Lead Nurturing API provides access to your lead nurturing campaigns and the leads in them. You can use this API to add and remove leads to and from nurturing campaigns, look up information on a lead-by-lead basis, or find what leads are currently receiving a particular lead nurturing campaign.

Method Description
GET  /nurture/v1/campaigns Get Lead Nurturing campaign details.
GET  /nurture/v1/campaign/:campaign_guid/list Get Leads in a Lead Nurturing campaign.
GET  /nurture/v1/lead/:lead_guid Get Lead Nurturing campaign history for a lead.
POST  /nurture/v1/campaign/:campaign_guid/add Enroll a lead in a Lead Nurturing campaign
POST  /nurture/v1/campaign/:campaign_guid/remove Remove a lead from a Lead Nurturing campaign

Marketing Events API

The Marketing Events API enables developers to access marketing events for a particular HubSpot account, or "portal," and create new marketing events, in a consistent and easy fashion.

Method Description
GET  /events/v1/events Get a list of Marketing Events
POST  /events/v1/events Create a new Marketing Event

Prospects API

Prospects are website visitors that have viewed a website with the HubSpot JavaScript tracking code enabled (including HubSpot CMS and landing pages). We identify prospects by company, geographic region and also associate this information with leads that have converted. The purpose of this API is to enable developers to access prospect information for a particular HubSpot account, or "portal."

Using this API, developers can see who has visited the HubSpot customer's website, search for visitors from particular organizations, filter visitors by city, region, state, or country, and perform a couple of miscellaneous operations in HubSpot's new Prospects application.

Method Description
GET  /prospects/v1/timeline Get a list of Prospects for a given portal.
GET  /prospects/v1/timeline/:organization Get information about a specific prospect's organization or company.
GET  /prospects/v1/typeahead Enables an incomplete "typeahead" search query parameter.
GET  /prospects/v1/search/:search_type Search for Prospects using various criteria. Note the (search type) in the URL. This must be specified, and it must be one of 'city', 'region', or 'country'.
POST  /prospects/v1/filters Hide a Prospect from the HubSpot user interface.
GET  /prospects/v1/filters Get a list of hidden Prospects.
DELETE  /prospects/v1/filters Un-Hide a Prospect that was previously hidden.

Settings API

Settings are related to a particular HubSpot account or "portal". You can access these setting via this API, update a selected subset of those settings and store your own custom settings, in a consistent and easy fashion.

Method Description
GET  /settings/v1/settings Get a list Settings from a HubSpot portal.
POST or PUT  /settings/v1/settings Update a setting within a HubSpot portal.
DELETE  /settings/v1/settings Delete a Setting from a HubSpot portal.

OAuth

OAuth, (or Open Authorization) is an open standard for authorization. It allows users to share their private resources (e.g. leads, blog posts, prospects) stored on HubSpot with another site without having to hand out their credentials

Method Description
POST  /auth/v1/refresh Refresh an OAuth Access Token