HubSpot

App · CRM Systems · 21 actions

Automate HubSpot CRM: manage contacts, companies, deals, notes and tasks with a HubSpot service key.

Actions

ActionWhat it does
Create a HubSpot companyCreate a new HubSpot company record.
Create a HubSpot contactCreate a new contact with email, name, phone, and company details.
Create a HubSpot dealCreate a new deal, optionally in a chosen pipeline and stage.
Create a HubSpot taskCreate a task with a due date, optionally attached to a contact, company and/or deal.
Delete a HubSpot companyArchive a HubSpot company.
Delete a HubSpot contactArchive a HubSpot contact.
Delete a HubSpot dealArchive a HubSpot deal.
Delete a HubSpot noteArchive a HubSpot note.
Delete a HubSpot taskArchive a HubSpot task.
Find contact by emailLook up a HubSpot contact using an email address.
Find contacts created in a date rangeFind HubSpot contacts created on or after a date, newest first.
Find deals created in a date rangeFind HubSpot deals created on or after a date, newest first.
Get a HubSpot companyRead one HubSpot company by its record ID.
Get a HubSpot dealRead one HubSpot deal by its record ID.
Link a contact to a companyConnect a HubSpot contact to a company so they show up together in your CRM.
List HubSpot contactsList a page of HubSpot contacts for quick review.
List HubSpot dealsList a page of HubSpot deals.
Log a HubSpot noteLog a note on the timeline of a contact, company and/or deal.
Update a HubSpot companyChange the details of an existing HubSpot company, such as its name, domain, or industry.
Update a HubSpot contactChange the details of an existing HubSpot contact, such as their name, phone number, or company.
Update deal stageMove a HubSpot deal to a different stage of its pipeline.

Create a HubSpot company

Create a new HubSpot company record. HubSpot de-duplicates companies on the domain.

Inputs

NamenametextRequired
Company name
Domaindomaintext
Company website domain, e.g. example.com
Citycitytext
City
Industryindustrytext
Industry
Phonephonetext
Phone number

Outputs

archivedtrue/false
createdAttext
idtext
propertiesobject
updatedAttext
Example output
{
  "archived": false,
  "createdAt": "2026-07-14T09:14:02.771Z",
  "id": "9001",
  "properties": {
    "city": "Bristol",
    "createdate": "2026-07-14T09:14:02.771Z",
    "domain": "averyconsulting.example.com",
    "industry": "CONSULTING",
    "name": "Avery Consulting"
  },
  "updatedAt": "2026-07-14T09:14:02.771Z"
}

Create a HubSpot contact

Create a new contact with email, name, phone, and company details. HubSpot de-duplicates contacts on the email address.

Inputs

EmailemailtextRequired
Contact email
First namefirst_nametext
First name
Last namelast_nametext
Last name
Phonephonetext
Phone number
Companycompanytext
Company name
Job titlejob_titletext
Job title
Ownerowner_idtext
The HubSpot user who owns this contact.

Outputs

archivedtrue/false
createdAttext
idtext
propertiesobject
updatedAttext
Example output
{
  "archived": false,
  "createdAt": "2026-07-14T09:12:33.482Z",
  "id": "701",
  "properties": {
    "company": "Avery Consulting",
    "createdate": "2026-07-14T09:12:33.482Z",
    "email": "jordan.avery@example.com",
    "firstname": "Jordan",
    "jobtitle": "Head of Operations",
    "lastname": "Avery",
    "lifecyclestage": "lead",
    "phone": "+15555550123"
  },
  "updatedAt": "2026-07-14T09:12:33.482Z"
}

Create a HubSpot deal

Create a new deal, optionally in a chosen pipeline and stage. An account with one pipeline uses its default when none is chosen.

Inputs

Deal namedeal_nametextRequired
Deal name
Amountamountnumber
Deal value
Pipelinepipelinetext
The pipeline the deal belongs to. Leave empty to use the account's default pipeline.
Stagestagetext
The stage the deal starts in. Leave empty to use the first stage of its pipeline; HubSpot itself would otherwise create the deal with no stage at all.
Close dateclose_datedate
Expected close date.
Ownerowner_idtext
The HubSpot user who owns this deal.

Outputs

archivedtrue/false
createdAttext
idtext
propertiesobject
updatedAttext
Example output
{
  "archived": false,
  "createdAt": "2026-07-14T09:16:40.118Z",
  "id": "4501",
  "properties": {
    "amount": "12000",
    "closedate": "2026-09-30",
    "createdate": "2026-07-14T09:16:40.118Z",
    "dealname": "Avery Consulting - annual licence",
    "dealstage": "appointmentscheduled",
    "pipeline": "default"
  },
  "updatedAt": "2026-07-14T09:16:40.118Z"
}

Create a HubSpot task

Create a task with a due date, optionally attached to a contact, company and/or deal.

Inputs

TitlesubjecttextRequired
The task's title.
Duedue_atdate and timeRequired
When the task is due.
Notesbodytext
Task notes.
Statusstatustext
Whether the task is already done.One of: NOT_STARTED (Not Started), COMPLETED. Default: NOT_STARTED.
Priorityprioritytext
Task priority.One of: LOW, MEDIUM, HIGH.
Typetask_typetext
What kind of task this is.One of: TODO, EMAIL, CALL.
Assigned toowner_idtext
The HubSpot user the task is assigned to.
Contact IDcontact_idtext
Contact to attach the task to.
Company IDcompany_idtext
Company to attach the task to.
Deal IDdeal_idtext
Deal to attach the task to.

Outputs

archivedtrue/false
associated_tolist
createdAttext
idtext
propertiesobject
updatedAttext
Example output
{
  "archived": false,
  "associated_to": [
    "contacts",
    "deals"
  ],
  "createdAt": "2026-07-14T09:22:10.000Z",
  "id": "77020",
  "properties": {
    "hs_object_id": "77020",
    "hs_task_body": "Confirm the seat count before sending.",
    "hs_task_priority": "HIGH",
    "hs_task_status": "NOT_STARTED",
    "hs_task_subject": "Follow up on the renewal quote",
    "hs_task_type": "CALL",
    "hs_timestamp": "1784112000000"
  },
  "updatedAt": "2026-07-14T09:22:10.000Z"
}

Delete a HubSpot company

Archive a HubSpot company. HubSpot archives rather than destroys: the record leaves the CRM and the API, and stays restorable from the portal's recycling bin for 90 days.

Inputs

Company IDcompany_idtextRequired
HubSpot company ID, or the address of the company record in HubSpot.

Outputs

company_idtext
deletedtrue/false
Example output
{
  "company_id": "9001",
  "deleted": true
}

Delete a HubSpot contact

Archive a HubSpot contact. HubSpot archives rather than destroys: the record leaves the CRM and the API, and stays restorable from the portal's recycling bin for 90 days.

Inputs

Contact IDcontact_idtextRequired
HubSpot contact ID, or the address of the contact record in HubSpot.

Outputs

contact_idtext
deletedtrue/false
Example output
{
  "contact_id": "701",
  "deleted": true
}

Delete a HubSpot deal

Archive a HubSpot deal. HubSpot archives rather than destroys: the record leaves the CRM and the API, and stays restorable from the portal's recycling bin for 90 days.

Inputs

Deal IDdeal_idtextRequired
HubSpot deal ID, or the address of the deal record in HubSpot.

Outputs

deal_idtext
deletedtrue/false
Example output
{
  "deal_id": "4501",
  "deleted": true
}

Delete a HubSpot note

Archive a HubSpot note. HubSpot archives rather than destroys: the record leaves the CRM and the API, and stays restorable from the portal's recycling bin for 90 days.

Inputs

Note IDnote_idtextRequired
HubSpot note ID.

Outputs

deletedtrue/false
note_idtext
Example output
{
  "deleted": true,
  "note_id": "88010"
}

Delete a HubSpot task

Archive a HubSpot task. HubSpot archives rather than destroys: the record leaves the CRM and the API, and stays restorable from the portal's recycling bin for 90 days.

Inputs

Task IDtask_idtextRequired
HubSpot task ID.

Outputs

deletedtrue/false
task_idtext
Example output
{
  "deleted": true,
  "task_id": "77020"
}

Find contact by email

Look up a HubSpot contact using an email address. Fails the step when no contact has that address.

Inputs

EmailemailtextRequired
Email address to look up

Outputs

archivedtrue/false
createdAttext
idtext
propertiesobject
updatedAttext
Example output
{
  "archived": false,
  "createdAt": "2026-07-14T09:12:33.482Z",
  "id": "701",
  "properties": {
    "company": "Avery Consulting",
    "createdate": "2026-07-14T09:12:33.482Z",
    "email": "jordan.avery@example.com",
    "firstname": "Jordan",
    "jobtitle": "Head of Operations",
    "lastname": "Avery",
    "lifecyclestage": "lead",
    "phone": "+15555550123"
  },
  "updatedAt": "2026-07-14T11:40:02.113Z"
}

Find contacts created in a date range

Find HubSpot contacts created on or after a date, newest first. Returns the matching contacts plus the total number that match, so a report can count every new lead in the window.

Inputs

Created aftercreated_afterdate and timeRequired
Only return contacts created at or after this moment.
Created beforecreated_beforedate and time
Optional upper bound, exclusive. Leave empty to run the window up to now.
Maximum contactslimitnumber
How many contacts to return, newest first (default 100, maximum 2000). The total count is reported in full even when more contacts match than are returned.From 1 to 2000. Default: 100.

Outputs

has_moretrue/false
resultslist
totalnumber
Example output
{
  "has_more": false,
  "results": [
    {
      "archived": false,
      "createdAt": "2026-08-24T14:22:07.005Z",
      "id": "703",
      "properties": {
        "company": "Meridian Health",
        "createdate": "2026-08-24T14:22:07.005Z",
        "email": "rae.lindqvist@example.com",
        "firstname": "Rae",
        "hs_analytics_source": "ORGANIC_SEARCH",
        "jobtitle": "Procurement Lead",
        "lastname": "Lindqvist"
      },
      "updatedAt": "2026-08-24T14:22:07.005Z"
    }
  ],
  "total": 1
}

Find deals created in a date range

Find HubSpot deals created on or after a date, newest first. Returns the matching deals plus the total number that match, so a report can count every new deal in the window.

Inputs

Created aftercreated_afterdate and timeRequired
Only return deals created at or after this moment.
Created beforecreated_beforedate and time
Optional upper bound, exclusive. Leave empty to run the window up to now.
Maximum dealslimitnumber
How many deals to return, newest first (default 100, maximum 2000). The total count is reported in full even when more deals match than are returned.From 1 to 2000. Default: 100.

Outputs

has_moretrue/false
resultslist
totalnumber
Example output
{
  "has_more": false,
  "results": [
    {
      "archived": false,
      "createdAt": "2026-08-24T14:22:07.005Z",
      "id": "4502",
      "properties": {
        "amount": "8500",
        "createdate": "2026-08-24T14:22:07.005Z",
        "dealname": "Meridian Health - pilot",
        "dealstage": "appointmentscheduled",
        "pipeline": "default"
      },
      "updatedAt": "2026-08-24T14:22:07.005Z"
    }
  ],
  "total": 1
}

Get a HubSpot company

Read one HubSpot company by its record ID.

Inputs

Company IDcompany_idtextRequired
HubSpot company ID, or the address of the company record in HubSpot.

Outputs

archivedtrue/false
createdAttext
idtext
propertiesobject
updatedAttext
Example output
{
  "archived": false,
  "createdAt": "2026-07-14T09:14:02.771Z",
  "id": "9001",
  "properties": {
    "city": "Bristol",
    "createdate": "2026-07-14T09:14:02.771Z",
    "domain": "averyconsulting.example.com",
    "industry": "CONSULTING",
    "name": "Avery Consulting",
    "numberofemployees": "45",
    "phone": "+441170000000"
  },
  "updatedAt": "2026-07-14T09:14:02.771Z"
}

Get a HubSpot deal

Read one HubSpot deal by its record ID.

Inputs

Deal IDdeal_idtextRequired
HubSpot deal ID, or the address of the deal record in HubSpot.

Outputs

archivedtrue/false
createdAttext
idtext
propertiesobject
updatedAttext
Example output
{
  "archived": false,
  "createdAt": "2026-07-14T09:16:40.118Z",
  "id": "4501",
  "properties": {
    "amount": "12000",
    "closedate": "2026-09-30",
    "createdate": "2026-07-14T09:16:40.118Z",
    "dealname": "Avery Consulting - annual licence",
    "dealstage": "qualifiedtobuy",
    "hubspot_owner_id": "555001",
    "pipeline": "default"
  },
  "updatedAt": "2026-07-15T08:07:12.664Z"
}

Connect a HubSpot contact to a company so they show up together in your CRM.

Inputs

Contact IDcontact_idtextRequired
HubSpot contact ID
Company IDcompany_idtextRequired
HubSpot company ID

Outputs

associatedtrue/false
company_idtext
contact_idtext
Example output
{
  "associated": true,
  "company_id": "9001",
  "contact_id": "701"
}

List HubSpot contacts

List a page of HubSpot contacts for quick review. These come back in record-id order (oldest first) and cannot be filtered; use 'Find contacts created in a date range' to report on recent leads.

Inputs

Maximum contactslimitnumber
How many contacts to return (default 10, maximum 100).From 1 to 100. Default: 10.

Outputs

countnumber
resultslist
Example output
{
  "count": 2,
  "results": [
    {
      "archived": false,
      "createdAt": "2026-07-14T09:12:33.482Z",
      "id": "701",
      "properties": {
        "company": "Avery Consulting",
        "email": "jordan.avery@example.com",
        "firstname": "Jordan",
        "lastname": "Avery"
      },
      "updatedAt": "2026-07-14T09:12:33.482Z"
    },
    {
      "archived": false,
      "createdAt": "2026-07-14T10:02:51.900Z",
      "id": "702",
      "properties": {
        "company": "Northwind Labs",
        "email": "sam.okafor@example.com",
        "firstname": "Sam",
        "lastname": "Okafor"
      },
      "updatedAt": "2026-07-14T10:02:51.900Z"
    }
  ]
}

List HubSpot deals

List a page of HubSpot deals. These come back in record-id order (oldest first) and cannot be filtered; use 'Find deals created in a date range' to report on recent deals.

Inputs

Maximum dealslimitnumber
How many deals to return (default 10, maximum 100).From 1 to 100. Default: 10.

Outputs

countnumber
resultslist
Example output
{
  "count": 1,
  "results": [
    {
      "archived": false,
      "createdAt": "2026-07-14T09:16:40.118Z",
      "id": "4501",
      "properties": {
        "amount": "12000",
        "dealname": "Avery Consulting - annual licence",
        "dealstage": "appointmentscheduled",
        "pipeline": "default"
      },
      "updatedAt": "2026-07-14T09:16:40.118Z"
    }
  ]
}

Log a HubSpot note

Log a note on the timeline of a contact, company and/or deal. A note attached to no record is valid but will not appear anywhere in HubSpot, so name at least one.

Inputs

NotebodytextRequired
The note's text.
Contact IDcontact_idtext
Contact to attach the note to.
Company IDcompany_idtext
Company to attach the note to.
Deal IDdeal_idtext
Deal to attach the note to.
Timestampnoted_atdate and time
Where the note sits on the record timeline. Defaults to now.

Outputs

archivedtrue/false
associated_tolist
createdAttext
idtext
propertiesobject
updatedAttext
Example output
{
  "archived": false,
  "associated_to": [
    "contacts"
  ],
  "createdAt": "2026-07-14T09:20:00.000Z",
  "id": "88010",
  "properties": {
    "hs_note_body": "Left a voicemail about the renewal.",
    "hs_object_id": "88010",
    "hs_timestamp": "1784025600000"
  },
  "updatedAt": "2026-07-14T09:20:00.000Z"
}

Update a HubSpot company

Change the details of an existing HubSpot company, such as its name, domain, or industry.

Inputs

Company IDcompany_idtextRequired
HubSpot company ID, or the address of the company record in HubSpot.
Namenametext
Company name
Domaindomaintext
Company website domain
Citycitytext
City
Industryindustrytext
Industry
Phonephonetext
Phone number

Outputs

archivedtrue/false
createdAttext
idtext
propertiesobject
updatedAttext
Example output
{
  "archived": false,
  "createdAt": "2026-07-14T09:14:02.771Z",
  "id": "9001",
  "properties": {
    "city": "Bath",
    "createdate": "2026-07-14T09:14:02.771Z",
    "domain": "averyconsulting.example.com",
    "industry": "CONSULTING",
    "name": "Avery Consulting Group"
  },
  "updatedAt": "2026-07-15T08:05:44.210Z"
}

Update a HubSpot contact

Change the details of an existing HubSpot contact, such as their name, phone number, or company.

Inputs

Contact IDcontact_idtextRequired
HubSpot contact ID, or the address of the contact record in HubSpot.
Emailemailtext
New email address
First namefirst_nametext
First name
Last namelast_nametext
Last name
Phonephonetext
Phone number
Companycompanytext
Company name
Job titlejob_titletext
Job title

Outputs

archivedtrue/false
createdAttext
idtext
propertiesobject
updatedAttext
Example output
{
  "archived": false,
  "createdAt": "2026-07-14T09:12:33.482Z",
  "id": "701",
  "properties": {
    "company": "Avery Consulting",
    "createdate": "2026-07-14T09:12:33.482Z",
    "email": "jordan.avery@example.com",
    "firstname": "Jordan",
    "jobtitle": "Chief Operating Officer",
    "lastname": "Avery",
    "lifecyclestage": "lead",
    "phone": "+15555550199"
  },
  "updatedAt": "2026-07-15T08:03:19.771Z"
}

Update deal stage

Move a HubSpot deal to a different stage of its pipeline.

Inputs

Deal IDdeal_idtextRequired
HubSpot deal ID, or the address of the deal record in HubSpot.
StagestagetextRequired
The stage to move the deal to.

Outputs

archivedtrue/false
createdAttext
idtext
propertiesobject
updatedAttext
Example output
{
  "archived": false,
  "createdAt": "2026-07-14T09:16:40.118Z",
  "id": "4501",
  "properties": {
    "amount": "12000",
    "dealname": "Avery Consulting - annual licence",
    "dealstage": "qualifiedtobuy",
    "pipeline": "default"
  },
  "updatedAt": "2026-07-15T08:07:12.664Z"
}

On this page