Member Junction
    Preparing search index...

    Base class for all HubSpot CRM actions. Handles HubSpot-specific authentication and API interaction patterns.

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    apiVersion: string = 'v3'

    HubSpot API version

    crmProvider: string = 'HubSpot'

    The CRM provider this action is designed for (e.g., 'HubSpot', 'Salesforce', etc.)

    integrationName: string = 'HubSpot'

    The integration name to look up in the Integration entity

    params: any

    Current action parameters (set by the framework)

    AuthorizesCaller: boolean

    True when the action authorizes its caller itself, so a public entry point such as the RunAction mutation may run it for an authenticated user without an MJ: Action Authorizations link. Set it only on an action that either checks an authorization the caller must hold, or reads and writes only with the caller's own permissions. Leave it false for an action that acts with more authority than its caller, or that reaches data or sends messages the caller chooses but could not otherwise reach.

    The engine reads the marker only from the class that runs, never from its parent classes. A subclass that overrides a marked action must declare the marker again.

    Methods

    • Associate objects in HubSpot

      Parameters

      • fromObjectType: string
      • fromObjectId: string
      • toObjectType: string
      • toObjectId: string
      • OptionalassociationType: string
      • OptionalcontextUser: UserInfo

      Returns Promise<void>

    • Batch create objects in HubSpot

      Type Parameters

      • T = any

      Parameters

      • objectType: string
      • objects: { properties: Record<string, any> }[]
      • OptionalcontextUser: UserInfo

      Returns Promise<T[]>

    • Batch update objects in HubSpot

      Type Parameters

      • T = any

      Parameters

      • objectType: string
      • updates: { id: string; properties: Record<string, any> }[]
      • OptionalcontextUser: UserInfo

      Returns Promise<T[]>

    • Gets API credentials - first tries environment variables, then falls back to database

      Parameters

      Returns Promise<
          {
              accessToken?: string;
              apiKey?: string;
              apiSecret?: string;
              clientId?: string;
              clientSecret?: string;
              refreshToken?: string;
          },
      >

    • Gets credentials from environment variables Format: BIZAPPS_{PROVIDER}{COMPANY_ID}{CREDENTIAL_TYPE} Example: BIZAPPS_HUBSPOT_12345_API_KEY

      Parameters

      • companyId: string
      • credentialType: string

      Returns string

    • Makes a paginated request to HubSpot API using cursor-based pagination

      Type Parameters

      • T = any

      Parameters

      • endpoint: string
      • params: Record<string, any> = {}
      • OptionalcontextUser: UserInfo

      Returns Promise<T[]>

    • Makes an authenticated request to HubSpot API

      Type Parameters

      • T = any

      Parameters

      • endpoint: string
      • method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE" = 'GET'
      • Optionalbody: any
      • OptionalcontextUser: UserInfo

      Returns Promise<T>

    • Search HubSpot objects using the search API

      Type Parameters

      • T = any

      Parameters

      • objectType: string
      • filters: { operator: string; propertyName: string; value: string }[]
      • Optionalproperties: string[]
      • OptionalcontextUser: UserInfo

      Returns Promise<T[]>