> ## Documentation Index
> Fetch the complete documentation index at: https://docs.runmorph.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# HubSpot

> Open-Source HubSpot Connector

<Card title="HubSpot" icon={<svg width="24" height="24" viewBox="0 0 36 38" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M27.4767 12.392L27.4767 7.95782C28.0636 7.68406 28.5599 7.24939 28.9085 6.70443C29.2571 6.15966 29.4443 5.52706 29.4462 4.88023L29.4462 4.77841C29.4462 2.89263 27.9179 1.36388 26.0311 1.36388L25.9307 1.36388C25.0247 1.36388 24.1561 1.72363 23.516 2.36398C22.8759 3.00432 22.5155 3.87281 22.5155 4.77841L22.5155 4.88023C22.5195 5.52706 22.7046 6.15966 23.0532 6.70443C23.4018 7.24939 23.8981 7.68406 24.485 7.95782L24.485 12.392C22.8011 12.6498 21.2137 13.3482 19.8863 14.416L7.72652 4.94436C7.81317 4.63131 7.85847 4.30947 7.86241 3.98638C7.86438 3.22542 7.63987 2.48108 7.21839 1.84757C6.79692 1.21406 6.19622 0.719796 5.49508 0.427325C4.79196 0.134853 4.01795 0.057295 3.27151 0.204476C2.52507 0.351657 1.83967 0.71694 1.30003 1.25416C0.760382 1.79136 0.394093 2.47636 0.244411 3.22246C0.0947284 3.96859 0.169527 4.74231 0.459044 5.44572C0.75053 6.14922 1.24295 6.75091 1.87517 7.17455C2.50738 7.59819 3.24985 7.82488 4.01008 7.82586C4.67577 7.82271 5.32965 7.64506 5.90475 7.31044L17.8793 16.6288C16.804 18.2538 16.2427 20.1654 16.2702 22.114C16.2959 24.0628 16.9084 25.9583 18.029 27.5536L14.3874 31.197C14.092 31.1028 13.7847 31.0528 13.4755 31.0487C12.8512 31.0491 12.2407 31.2348 11.7227 31.5822C11.2027 31.9294 10.799 32.423 10.5587 33.0001C10.3204 33.5773 10.2593 34.2123 10.3795 34.825C10.5016 35.4375 10.8029 36.0002 11.2441 36.442C11.6872 36.8835 12.2485 37.1845 12.861 37.3064C13.4735 37.4285 14.1097 37.3661 14.6867 37.1273C15.2638 36.8884 15.7581 36.4839 16.1048 35.9647C16.4514 35.4456 16.6385 34.835 16.6385 34.2105C16.6346 33.9013 16.5834 33.5946 16.4888 33.3002L20.0931 29.6958C21.2689 30.6004 22.6337 31.2242 24.0872 31.519C25.5407 31.8138 27.0415 31.7723 28.4772 31.3973C29.911 31.0223 31.2404 30.3239 32.363 29.3555C33.4876 28.3873 34.3739 27.1749 34.9549 25.811C35.5379 24.4471 35.7999 22.9682 35.7211 21.4875C35.6443 20.0067 35.2287 18.5634 34.5059 17.2683C33.785 15.9729 32.7766 14.8599 31.5575 14.0148C30.3384 13.1695 28.944 12.6145 27.4767 12.392ZM25.9839 26.9753C25.3182 26.9937 24.6544 26.8783 24.034 26.6362C23.4136 26.3939 22.8484 26.03 22.3718 25.5654C21.8932 25.1008 21.515 24.5454 21.2551 23.9317C20.9951 23.318 20.8631 22.6586 20.8631 21.9925C20.8631 21.3264 20.9951 20.667 21.2551 20.0533C21.515 19.4396 21.8932 18.884 22.3718 18.4196C22.8484 17.955 23.4136 17.5911 24.034 17.3488C24.6544 17.1066 25.3182 16.9913 25.9839 17.0097C27.2739 17.0548 28.4969 17.5991 29.395 18.5279C30.2911 19.4566 30.7934 20.6974 30.7953 21.9888C30.7953 23.2802 30.2951 24.5213 29.3989 25.4511C28.5008 26.3808 27.2798 26.9263 25.9897 26.9728" fill="#FF7A59"/></svg>}>
  The HubSpot connector enables easy and secure data synchronization between your application and your customers' HubSpot accounts through unified data models.
</Card>

## Authorization

<Accordion title="OAuth" defaultOpen={false} icon="key-skeleton" iconType="duotone">
  The HubSpot connector uses OAuth for secure authentication. When creating a connection, the required OAuth scopes are automatically configured based on your specific operations needs (e.g. `genericContact::create`, `genericUser::list`).<br /><br />
  ✓ Automatic token refresh handling<br />
  ✓ Proactive insufficient permissions detection<br /><br />

  [View our step-by-step integration guide](./../api-reference/intro)

  **Whitelabel**

  <Check>
    **Supported** <br />
    You can choose to provide your own set of `clientId` and `clientSecret` for this
    connector from the Morph Cloud dashboard; allowing a fully whitelabled experience
    for your end-customers.
  </Check>
</Accordion>

<CodeGroup>
  ```typescript TypeScript theme={null}
  import { Morph } from "@runmorph/cloud";

  const morph = Morph({ publicKey: "pk_demo_xxxxxxxxxxxxxxx", secretKey: "sk_demo_xxxxxxxxxxxxxxx"}); 

  // create a new connection
  const connection = morph.connections({ connectorId: "hubspot", ownerId: "demo" });
  await connection.create({ operations:[ "genericContact::list" ]});

  // auhtorize the connection
  const { auhtorizationUrl } = await connection.authorize();

  // redirect the user to the auhtorizationUrl
  ```

  ```tsx React theme={null}
  import { Morph, Connect } from "@runmorph/atoms";

  // generate sessionToken from server →  morph.sessions().create(...);

  export default function ConnectionPage({ sessionToken }) {
    return (
      <Morph.Provider>
        <Connect
          sessionToken={sessionToken}
          connectionCallbacks={{
            onError: (error) => alert(error.message)
          }}
        />
      </Morph.Provider>
    );
  }
  ```

  ```python Python theme={null}
  morph = Morph(api_key="pk_demo_xxxxxxxxxxxxxxx", api_secret="sk_demo_xxxxxxxxxxxxxxx")

  # create a new connection
  connection = morph.connections(connector_id="hubspot", owner_id="demo")
  connection.create(operations=[ "genericContact::list" ])

  # authorize the connection
  auth_result = connection.authorize()
  authorization_url = auth_result["authorization_url"]

  # redirect the user to the authorization_url
  ```

  ```ruby Ruby theme={null}
  morph = Morph.new(api_key: "pk_demo_xxxxxxxxxxxxxxx", api_secret: "sk_demo_xxxxxxxxxxxxxxx")

  # create a new connection
  connection = morph.connections(connector_id: "hubspot", owner_id: "demo")
  connection.create(operations: [ "genericContact::list" ])

  # authorize the connection
  auth_result = connection.authorize
  authorization_url = auth_result[:authorization_url]

  # redirect the user to the authorization_url
  ```

  ```php PHP theme={null}
  $morph = new Morph([
    'api_key' => 'pk_demo_xxxxxxxxxxxxxxx',
    'api_secret' => 'sk_demo_xxxxxxxxxxxxxxx'
  ]);

  // create a new connection
  $connection = $morph->connections([
    'connector_id' => 'hubspot',
    'owner_id' => 'demo'
  ]);
  $connection->create(['operations' => ['genericContact::create','genericUser::list']]);

  // auhtorize the connection
  $authResult = $connection->authorize();
  $authorizationUrl = $authResult['authorization_url'];

  // redirect the user to the auhtorizationUrl
  ```

  ```go Go theme={null}
  morph := morph.New(&morph.Config{
      publicKey:    "pk_demo_xxxxxxxxxxxxxxx",
      secretKey: "sk_demo_xxxxxxxxxxxxxxx",
  })

  // create a new connection
  connection := morph.Connections(&morph.ConnectionConfig{
      ConnectorId: "hubspot",
      OwnerId:    "demo",
  })
  connection.Create(&morph.CreateConfig{
      Operations: []string{"genericContact::create", "genericUser::list"},
  })

  // authorize the connection
  authResult, _ := connection.Authorize()
  authorizationUrl := authResult.AuthorizationUrl

  // redirect the user to the authorization URL
  ```
</CodeGroup>

<br />

<Accordion title="Try a live demo of HubSpot connection ✨">
  <Check>
    **Live Demo** <br />
    Select a connector below to experience our seamless authentication flow and see
    how easy it is to connect third-party services.
  </Check>

  <iframe src="https://atoms-playground.vercel.app/temp/connectors/hubspot?theme=light" width="100%" height="370px" className="block dark:hidden" />

  <iframe src="https://atoms-playground.vercel.app/temp/connectors/hubspot?theme=dark" width="100%" height="370px" className="hidden dark:block" />
</Accordion>

## Models

### Generic

<AccordionGroup>
  <Accordion title="Contact" defaultOpen={false} icon="user-group">
    <p>
      The HubSpot connector seamlessly integrates with our unified `genericContact` model, enabling you to manage Contacts with rich data including `firstName`, `lastName`, `phoneNumber`, `email` and other key details <br />
    </p>

    **API Reference**

    <table className="mt-0">
      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/genericContact`</td>
        <td className="py-1 px-2">[List and Search HubSpot Contacts](./../api-reference/models/contact/list-contact)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/genericContact/:id`</td>
        <td className="py-1 px-2">[Retrieve a HubSpot Contact](./../api-reference/models/contact/retrieve-contact)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-blue-400/20 text-blue-700 dark:bg-blue-400/20 dark:text-blue-400">POST</span>
        </td>

        <td className="py-1 px-2">`/resources/genericContact`</td>
        <td className="py-1 px-2">[Create a HubSpot Contact](./../api-reference/models/contact/create-contact)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-orange-400/20 text-orange-700 dark:bg-orange-400/20 dark:text-orange-400">PATCH</span>
        </td>

        <td className="py-1 px-2">`/resources/genericContact/:id`</td>
        <td className="py-1 px-2">[Update a HubSpot Contact](./../api-reference/models/contact/update-contact)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-red-400/20 text-red-700 dark:bg-red-400/20 dark:text-red-400">DEL</span>
        </td>

        <td className="py-1 px-2">`/resources/genericContact/:id`</td>
        <td className="py-1 px-2">[Delete a HubSpot Contact](./../api-reference/models/contact/delete-contact)</td>
      </tr>
    </table>

    **Custom Fields**

    <Check>
      **Supported** <br />
      The HubSpot connector supports our `Field Mapping` feature, enabling you or your customers to seamlessly map HubSpot Contact custom fields to the unified contact model. This allows for flexible data synchronization while maintaining data consistency across all connectors.
    </Check>

    <br />

    [view Contact model details](./../models/genericContact)
  </Accordion>

  <Accordion title="Company" defaultOpen={false} icon="building">
    <p>
      The HubSpot connector seamlessly integrates with our unified `genericCompany` model, enabling you to manage Companies with rich data including `name` and other key details <br />
    </p>

    **API Reference**

    <table className="mt-0">
      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/genericCompany`</td>
        <td className="py-1 px-2">[List and Search HubSpot Companies](./../api-reference/models/company/list-company)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/genericCompany/:id`</td>
        <td className="py-1 px-2">[Retrieve a HubSpot Company](./../api-reference/models/company/retrieve-company)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-blue-400/20 text-blue-700 dark:bg-blue-400/20 dark:text-blue-400">POST</span>
        </td>

        <td className="py-1 px-2">`/resources/genericCompany`</td>
        <td className="py-1 px-2">[Create a HubSpot Company](./../api-reference/models/company/create-company)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-orange-400/20 text-orange-700 dark:bg-orange-400/20 dark:text-orange-400">PATCH</span>
        </td>

        <td className="py-1 px-2">`/resources/genericCompany/:id`</td>
        <td className="py-1 px-2">[Update a HubSpot Company](./../api-reference/models/company/update-company)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-red-400/20 text-red-700 dark:bg-red-400/20 dark:text-red-400">DEL</span>
        </td>

        <td className="py-1 px-2">`/resources/genericCompany/:id`</td>
        <td className="py-1 px-2">[Delete a HubSpot Company](./../api-reference/models/company/delete-company)</td>
      </tr>
    </table>

    **Custom Fields**

    <Check>
      **Supported** <br />
      The HubSpot connector supports our `Field Mapping` feature, enabling you or your customers to seamlessly map HubSpot Company custom fields to the unified company model. This allows for flexible data synchronization while maintaining data consistency across all connectors.
    </Check>

    <br />

    [view Company model details](./../models/genericCompany)
  </Accordion>

  <Accordion title="User" defaultOpen={false} icon="users-medical">
    <p>
      The HubSpot connector seamlessly integrates with our unified `genericUser` model, enabling you to manage Users with rich data including `firstName`, `lastName`, `email` and other key details <br />
    </p>

    **API Reference**

    <table className="mt-0">
      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/genericUser`</td>
        <td className="py-1 px-2">[List and Search HubSpot Users](./../api-reference/models/user/list-user)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/genericUser/:id`</td>
        <td className="py-1 px-2">[Retrieve a HubSpot User](./../api-reference/models/user/retrieve-user)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-blue-400/20 text-blue-700 dark:bg-blue-400/20 dark:text-blue-400">POST</span>
        </td>

        <td className="py-1 px-2">`/resources/genericUser`</td>
        <td className="py-1 px-2">[Create a HubSpot User](./../api-reference/models/user/create-user)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-orange-400/20 text-orange-700 dark:bg-orange-400/20 dark:text-orange-400">PATCH</span>
        </td>

        <td className="py-1 px-2">`/resources/genericUser/:id`</td>
        <td className="py-1 px-2">[Update a HubSpot User](./../api-reference/models/user/update-user)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-red-400/20 text-red-700 dark:bg-red-400/20 dark:text-red-400">DEL</span>
        </td>

        <td className="py-1 px-2">`/resources/genericUser/:id`</td>
        <td className="py-1 px-2">[Delete a HubSpot User](./../api-reference/models/user/delete-user)</td>
      </tr>
    </table>

    **Custom Fields**

    <Check>
      **Supported** <br />
      The HubSpot connector supports our `Field Mapping` feature, enabling you or your customers to seamlessly map HubSpot User custom fields to the unified user model. This allows for flexible data synchronization while maintaining data consistency across all connectors.
    </Check>

    <br />

    [view User model details](./../models/genericUser)
  </Accordion>

  <Accordion title="Workspace" defaultOpen={false} icon="network-wired">
    <p>
      The HubSpot connector seamlessly integrates with our unified `genericWorkspace` model, enabling you to manage Workspaces with rich data including `name` and other key details <br />
    </p>

    **API Reference**

    <table className="mt-0">
      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/genericWorkspace`</td>
        <td className="py-1 px-2">[List and Search HubSpot Workspaces](./../api-reference/models/workspace/list-workspace)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/genericWorkspace/:id`</td>
        <td className="py-1 px-2">[Retrieve a HubSpot Workspace](./../api-reference/models/workspace/retrieve-workspace)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-blue-400/20 text-blue-700 dark:bg-blue-400/20 dark:text-blue-400">POST</span>
        </td>

        <td className="py-1 px-2">`/resources/genericWorkspace`</td>
        <td className="py-1 px-2">[Create a HubSpot Workspace](./../api-reference/models/workspace/create-workspace)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-orange-400/20 text-orange-700 dark:bg-orange-400/20 dark:text-orange-400">PATCH</span>
        </td>

        <td className="py-1 px-2">`/resources/genericWorkspace/:id`</td>
        <td className="py-1 px-2">[Update a HubSpot Workspace](./../api-reference/models/workspace/update-workspace)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-red-400/20 text-red-700 dark:bg-red-400/20 dark:text-red-400">DEL</span>
        </td>

        <td className="py-1 px-2">`/resources/genericWorkspace/:id`</td>
        <td className="py-1 px-2">[Delete a HubSpot Workspace](./../api-reference/models/workspace/delete-workspace)</td>
      </tr>
    </table>

    **Custom Fields**

    <Check>
      **Supported** <br />
      The HubSpot connector supports our `Field Mapping` feature, enabling you or your customers to seamlessly map HubSpot Workspace custom fields to the unified workspace model. This allows for flexible data synchronization while maintaining data consistency across all connectors.
    </Check>

    <br />

    [view Workspace model details](./../models/genericWorkspace)
  </Accordion>
</AccordionGroup>

### CRM

<AccordionGroup>
  <Accordion title="Opportunity" defaultOpen={false} icon="badge-dollar">
    <p>
      The HubSpot connector seamlessly integrates with our unified `crmOpportunity` model, enabling you to manage Opportunities with rich data including `name`, `amount`, `currency`, `pipeline`, `stage` and other key details <br />
    </p>

    **API Reference**

    <table className="mt-0">
      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/crmOpportunity`</td>
        <td className="py-1 px-2">[List and Search HubSpot Opportunities](./../api-reference/models/opportunity/list-opportunity)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/crmOpportunity/:id`</td>
        <td className="py-1 px-2">[Retrieve a HubSpot Opportunity](./../api-reference/models/opportunity/retrieve-opportunity)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-blue-400/20 text-blue-700 dark:bg-blue-400/20 dark:text-blue-400">POST</span>
        </td>

        <td className="py-1 px-2">`/resources/crmOpportunity`</td>
        <td className="py-1 px-2">[Create a HubSpot Opportunity](./../api-reference/models/opportunity/create-opportunity)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-orange-400/20 text-orange-700 dark:bg-orange-400/20 dark:text-orange-400">PATCH</span>
        </td>

        <td className="py-1 px-2">`/resources/crmOpportunity/:id`</td>
        <td className="py-1 px-2">[Update a HubSpot Opportunity](./../api-reference/models/opportunity/update-opportunity)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-red-400/20 text-red-700 dark:bg-red-400/20 dark:text-red-400">DEL</span>
        </td>

        <td className="py-1 px-2">`/resources/crmOpportunity/:id`</td>
        <td className="py-1 px-2">[Delete a HubSpot Opportunity](./../api-reference/models/opportunity/delete-opportunity)</td>
      </tr>
    </table>

    **Custom Fields**

    <Check>
      **Supported** <br />
      The HubSpot connector supports our `Field Mapping` feature, enabling you or your customers to seamlessly map HubSpot Opportunity custom fields to the unified opportunity model. This allows for flexible data synchronization while maintaining data consistency across all connectors.
    </Check>

    <br />

    [view Opportunity model details](./../models/crmOpportunity)
  </Accordion>

  <Accordion title="Pipeline" defaultOpen={false} icon="square-kanban">
    <p>
      The HubSpot connector seamlessly integrates with our unified `crmPipeline` model, enabling you to manage Pipelines with rich data including `name`, `stages` and other key details <br />
    </p>

    **API Reference**

    <table className="mt-0">
      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/crmPipeline`</td>
        <td className="py-1 px-2">[List and Search HubSpot Pipelines](./../api-reference/models/pipeline/list-pipeline)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/crmPipeline/:id`</td>
        <td className="py-1 px-2">[Retrieve a HubSpot Pipeline](./../api-reference/models/pipeline/retrieve-pipeline)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-blue-400/20 text-blue-700 dark:bg-blue-400/20 dark:text-blue-400">POST</span>
        </td>

        <td className="py-1 px-2">`/resources/crmPipeline`</td>
        <td className="py-1 px-2">[Create a HubSpot Pipeline](./../api-reference/models/pipeline/create-pipeline)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-orange-400/20 text-orange-700 dark:bg-orange-400/20 dark:text-orange-400">PATCH</span>
        </td>

        <td className="py-1 px-2">`/resources/crmPipeline/:id`</td>
        <td className="py-1 px-2">[Update a HubSpot Pipeline](./../api-reference/models/pipeline/update-pipeline)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-red-400/20 text-red-700 dark:bg-red-400/20 dark:text-red-400">DEL</span>
        </td>

        <td className="py-1 px-2">`/resources/crmPipeline/:id`</td>
        <td className="py-1 px-2">[Delete a HubSpot Pipeline](./../api-reference/models/pipeline/delete-pipeline)</td>
      </tr>
    </table>

    <br />

    [view Pipeline model details](./../models/crmPipeline)
  </Accordion>

  <Accordion title="Stage" defaultOpen={false} icon="flag-pennant">
    <p>
      The HubSpot connector seamlessly integrates with our unified `crmStage` model, enabling you to manage Stages with rich data including `pipeline`, `name`, `type` and other key details <br />
    </p>

    **API Reference**

    <table className="mt-0">
      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/crmStage`</td>
        <td className="py-1 px-2">[List and Search HubSpot Stages](./../api-reference/models/stage/list-stage)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/crmStage/:id`</td>
        <td className="py-1 px-2">[Retrieve a HubSpot Stage](./../api-reference/models/stage/retrieve-stage)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-blue-400/20 text-blue-700 dark:bg-blue-400/20 dark:text-blue-400">POST</span>
        </td>

        <td className="py-1 px-2">`/resources/crmStage`</td>
        <td className="py-1 px-2">[Create a HubSpot Stage](./../api-reference/models/stage/create-stage)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-orange-400/20 text-orange-700 dark:bg-orange-400/20 dark:text-orange-400">PATCH</span>
        </td>

        <td className="py-1 px-2">`/resources/crmStage/:id`</td>
        <td className="py-1 px-2">[Update a HubSpot Stage](./../api-reference/models/stage/update-stage)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-red-400/20 text-red-700 dark:bg-red-400/20 dark:text-red-400">DEL</span>
        </td>

        <td className="py-1 px-2">`/resources/crmStage/:id`</td>
        <td className="py-1 px-2">[Delete a HubSpot Stage](./../api-reference/models/stage/delete-stage)</td>
      </tr>
    </table>

    <br />

    [view Stage model details](./../models/crmStage)
  </Accordion>

  <Accordion title="Engagement" defaultOpen={false} icon="comments">
    <p>
      The HubSpot connector seamlessly integrates with our unified `crmEngagement` model, enabling you to manage Engagements with rich data including `type`, `direction`, `status`, `title`, `description` and other key details <br />
    </p>

    **API Reference**

    <table className="mt-0">
      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/crmEngagement`</td>
        <td className="py-1 px-2">[List and Search HubSpot Engagements](./../api-reference/models/engagement/list-engagement)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/crmEngagement/:id`</td>
        <td className="py-1 px-2">[Retrieve a HubSpot Engagement](./../api-reference/models/engagement/retrieve-engagement)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-blue-400/20 text-blue-700 dark:bg-blue-400/20 dark:text-blue-400">POST</span>
        </td>

        <td className="py-1 px-2">`/resources/crmEngagement`</td>
        <td className="py-1 px-2">[Create a HubSpot Engagement](./../api-reference/models/engagement/create-engagement)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-orange-400/20 text-orange-700 dark:bg-orange-400/20 dark:text-orange-400">PATCH</span>
        </td>

        <td className="py-1 px-2">`/resources/crmEngagement/:id`</td>
        <td className="py-1 px-2">[Update a HubSpot Engagement](./../api-reference/models/engagement/update-engagement)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-red-400/20 text-red-700 dark:bg-red-400/20 dark:text-red-400">DEL</span>
        </td>

        <td className="py-1 px-2">`/resources/crmEngagement/:id`</td>
        <td className="py-1 px-2">[Delete a HubSpot Engagement](./../api-reference/models/engagement/delete-engagement)</td>
      </tr>
    </table>

    **Custom Fields**

    <Check>
      **Supported** <br />
      The HubSpot connector supports our `Field Mapping` feature, enabling you or your customers to seamlessly map HubSpot Engagement custom fields to the unified engagement model. This allows for flexible data synchronization while maintaining data consistency across all connectors.
    </Check>

    <br />

    [view Engagement model details](./../models/crmEngagement)
  </Accordion>
</AccordionGroup>

### Ticketing

<AccordionGroup>
  <Accordion title="Project" defaultOpen={false} icon="folder">
    <p>
      The HubSpot connector seamlessly integrates with our unified `ticketProject` model, enabling you to manage Projects with rich data including `name`, `description`, `members` and other key details <br />
    </p>

    **API Reference**

    <table className="mt-0">
      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/ticketProject`</td>
        <td className="py-1 px-2">[List and Search HubSpot Projects](./../api-reference/models/project/list-project)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/ticketProject/:id`</td>
        <td className="py-1 px-2">[Retrieve a HubSpot Project](./../api-reference/models/project/retrieve-project)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-blue-400/20 text-blue-700 dark:bg-blue-400/20 dark:text-blue-400">POST</span>
        </td>

        <td className="py-1 px-2">`/resources/ticketProject`</td>
        <td className="py-1 px-2">[Create a HubSpot Project](./../api-reference/models/project/create-project)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-orange-400/20 text-orange-700 dark:bg-orange-400/20 dark:text-orange-400">PATCH</span>
        </td>

        <td className="py-1 px-2">`/resources/ticketProject/:id`</td>
        <td className="py-1 px-2">[Update a HubSpot Project](./../api-reference/models/project/update-project)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-red-400/20 text-red-700 dark:bg-red-400/20 dark:text-red-400">DEL</span>
        </td>

        <td className="py-1 px-2">`/resources/ticketProject/:id`</td>
        <td className="py-1 px-2">[Delete a HubSpot Project](./../api-reference/models/project/delete-project)</td>
      </tr>
    </table>

    <br />

    [view Project model details](./../models/ticketProject)
  </Accordion>

  <Accordion title="Issue" defaultOpen={false} icon="ticket">
    <p>
      The HubSpot connector seamlessly integrates with our unified `ticketIssue` model, enabling you to manage Issues with rich data including `project`, `title`, `description`, `status`, `priority` and other key details <br />
    </p>

    **API Reference**

    <table className="mt-0">
      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/ticketIssue`</td>
        <td className="py-1 px-2">[List and Search HubSpot Issues](./../api-reference/models/issue/list-issue)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/ticketIssue/:id`</td>
        <td className="py-1 px-2">[Retrieve a HubSpot Issue](./../api-reference/models/issue/retrieve-issue)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-blue-400/20 text-blue-700 dark:bg-blue-400/20 dark:text-blue-400">POST</span>
        </td>

        <td className="py-1 px-2">`/resources/ticketIssue`</td>
        <td className="py-1 px-2">[Create a HubSpot Issue](./../api-reference/models/issue/create-issue)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-orange-400/20 text-orange-700 dark:bg-orange-400/20 dark:text-orange-400">PATCH</span>
        </td>

        <td className="py-1 px-2">`/resources/ticketIssue/:id`</td>
        <td className="py-1 px-2">[Update a HubSpot Issue](./../api-reference/models/issue/update-issue)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-red-400/20 text-red-700 dark:bg-red-400/20 dark:text-red-400">DEL</span>
        </td>

        <td className="py-1 px-2">`/resources/ticketIssue/:id`</td>
        <td className="py-1 px-2">[Delete a HubSpot Issue](./../api-reference/models/issue/delete-issue)</td>
      </tr>
    </table>

    <br />

    [view Issue model details](./../models/ticketIssue)
  </Accordion>

  <Accordion title="Comment" defaultOpen={false} icon="comments">
    <p>
      The HubSpot connector seamlessly integrates with our unified `ticketComment` model, enabling you to manage Comments with rich data including `issue`, `author`, `content`, `isInternal` and other key details <br />
    </p>

    **API Reference**

    <table className="mt-0">
      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/ticketComment`</td>
        <td className="py-1 px-2">[List and Search HubSpot Comments](./../api-reference/models/comment/list-comment)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/ticketComment/:id`</td>
        <td className="py-1 px-2">[Retrieve a HubSpot Comment](./../api-reference/models/comment/retrieve-comment)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-blue-400/20 text-blue-700 dark:bg-blue-400/20 dark:text-blue-400">POST</span>
        </td>

        <td className="py-1 px-2">`/resources/ticketComment`</td>
        <td className="py-1 px-2">[Create a HubSpot Comment](./../api-reference/models/comment/create-comment)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-orange-400/20 text-orange-700 dark:bg-orange-400/20 dark:text-orange-400">PATCH</span>
        </td>

        <td className="py-1 px-2">`/resources/ticketComment/:id`</td>
        <td className="py-1 px-2">[Update a HubSpot Comment](./../api-reference/models/comment/update-comment)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-red-400/20 text-red-700 dark:bg-red-400/20 dark:text-red-400">DEL</span>
        </td>

        <td className="py-1 px-2">`/resources/ticketComment/:id`</td>
        <td className="py-1 px-2">[Delete a HubSpot Comment](./../api-reference/models/comment/delete-comment)</td>
      </tr>
    </table>

    <br />

    [view Comment model details](./../models/ticketComment)
  </Accordion>
</AccordionGroup>

### Widget

<AccordionGroup>
  <Accordion title="Card View" defaultOpen={false} icon="rectangle-history-circle-user">
    <p>
      The HubSpot connector seamlessly integrates with our unified `widgetCardView` model, enabling you to manage Card Views with rich data including  and other key details <br />
    </p>

    **API Reference**

    <table className="mt-0">
      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/widgetCardView`</td>
        <td className="py-1 px-2">[List and Search HubSpot Card Views](./../api-reference/models/card-view/list-card-view)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-green-400/20 text-green-700 dark:bg-green-400/20 dark:text-green-400">GET</span>
        </td>

        <td className="py-1 px-2">`/resources/widgetCardView/:id`</td>
        <td className="py-1 px-2">[Retrieve a HubSpot Card View](./../api-reference/models/card-view/retrieve-card-view)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md  leading-tight font-bold bg-blue-400/20 text-blue-700 dark:bg-blue-400/20 dark:text-blue-400">POST</span>
        </td>

        <td className="py-1 px-2">`/resources/widgetCardView`</td>
        <td className="py-1 px-2">[Create a HubSpot Card View](./../api-reference/models/card-view/create-card-view)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-orange-400/20 text-orange-700 dark:bg-orange-400/20 dark:text-orange-400">PATCH</span>
        </td>

        <td className="py-1 px-2">`/resources/widgetCardView/:id`</td>
        <td className="py-1 px-2">[Update a HubSpot Card View](./../api-reference/models/card-view/update-card-view)</td>
      </tr>

      <tr>
        <td className="py-1 px-2">
          <span className="px-1 py-0.5 rounded-md leading-tight font-bold bg-red-400/20 text-red-700 dark:bg-red-400/20 dark:text-red-400">DEL</span>
        </td>

        <td className="py-1 px-2">`/resources/widgetCardView/:id`</td>
        <td className="py-1 px-2">[Delete a HubSpot Card View](./../api-reference/models/card-view/delete-card-view)</td>
      </tr>
    </table>

    <br />

    [view Card View model details](./../models/widgetCardView)
  </Accordion>
</AccordionGroup>

## Custom

<Check>
  **Supported** <br />
  Can't find the unified model you need? The HubSpot connector supports your own custom model.
</Check>

## Webhooks

<Accordion title="Events Subscription" defaultOpen={false} icon="webhook" iconType="duotone">
  The HubSpot connector supports real-time event subscriptions, allowing you to
  receive instant notifications when records are created, updated, or deleted.
  Below are the supported models and their corresponding triggers.

  <table className="mt-0">
    <tr>
      <th className="py-1 px-2">Models</th>
      <th className="py-1 px-2">Created</th>
      <th className="py-1 px-2">Updated</th>
      <th className="py-1 px-2">Deleted</th>
      <th className="py-1 px-6">API Reference</th>
    </tr>

    <tr>
      <td className="">`genericContact`</td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        [view event](./../api-reference/models/contact/event)
      </td>
    </tr>

    <tr>
      <td className="">`genericCompany`</td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        [view event](./../api-reference/models/company/event)
      </td>
    </tr>

    <tr>
      <td className="">`genericUser`</td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        [view event](./../api-reference/models/user/event)
      </td>
    </tr>

    <tr>
      <td className="">`genericWorkspace`</td>

      <td className=" text-center">
        <Icon icon="circle-x" iconType="duotone" color="gray" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-x" iconType="duotone" color="gray" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-x" iconType="duotone" color="gray" />
      </td>

      <td className=" text-center">
        [view event](./../api-reference/models/workspace/event)
      </td>
    </tr>

    <tr>
      <td className="">`crmOpportunity`</td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        [view event](./../api-reference/models/opportunity/event)
      </td>
    </tr>

    <tr>
      <td className="">`crmPipeline`</td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        [view event](./../api-reference/models/pipeline/event)
      </td>
    </tr>

    <tr>
      <td className="">`crmStage`</td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        [view event](./../api-reference/models/stage/event)
      </td>
    </tr>

    <tr>
      <td className="">`ticketProject`</td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        [view event](./../api-reference/models/project/event)
      </td>
    </tr>

    <tr>
      <td className="">`ticketIssue`</td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        [view event](./../api-reference/models/issue/event)
      </td>
    </tr>

    <tr>
      <td className="">`ticketComment`</td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        [view event](./../api-reference/models/comment/event)
      </td>
    </tr>

    <tr>
      <td className="">`widgetCardView`</td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-x" iconType="duotone" color="gray" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-x" iconType="duotone" color="gray" />
      </td>

      <td className=" text-center">
        [view event](./../api-reference/models/card-view/event)
      </td>
    </tr>

    <tr>
      <td className="">`crmEngagement`</td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        <Icon icon="circle-check" iconType="duotone" />
      </td>

      <td className=" text-center">
        [view event](./../api-reference/models/engagement/event)
      </td>
    </tr>
  </table>
</Accordion>

## Proxy

<Check>
  **Supported** <br />
  The HubSpot connector supports our `Proxy Request` feature, allowing you to directly
  call any endpoints from HubSpot's public API without needing to handle authentication.
  Your customer's token will be automatically set and refreshed as needed, enabling
  quick implementation of custom connector behaviors. [View API Reference](./../api-reference/proxy/proxy-request-to-connector).
</Check>
