Como integrar la api de hubspot en tu propia landing page en tu sitio web con php

Como integrar la api de hubspot en tu propia landing page en tu sitio web con php
by Janeth Kent Date: 14-11-2024

Integrar la API de HubSpot en una página de aterrizaje (landing page) en un sitio web construido con PHP es un proceso bastante directo si sigues estos pasos. A continuación te explico cómo hacerlo:

Paso 1: Crear una cuenta en HubSpot y obtener la clave API

  1. Crea una cuenta en HubSpot (si aún no tienes una).
  2. Genera una clave API de HubSpot:
    • Ve a tu cuenta de HubSpot.
    • En el menú de la esquina superior derecha, haz clic en tu perfil y selecciona "Configuración".
    • En el menú de la izquierda, selecciona "Integraciones" y luego "API Key".
    • Si aún no tienes una clave API, puedes generar una nueva. Cópiala, ya que la necesitarás para autenticar las solicitudes a la API.

Paso 2: Instalación de dependencias en tu proyecto PHP

Para interactuar con la API de HubSpot de manera más fácil, puedes usar una librería cliente para PHP. Una opción popular es usar el paquete oficial de HubSpot.

  1. Instala Composer (si aún no lo tienes instalado):

    • Composer es una herramienta para gestionar dependencias en proyectos PHP.
    • Si no lo tienes instalado, puedes descargarlo desde aquí.
  2. Instala el SDK de HubSpot: Ejecuta el siguiente comando en la raíz de tu proyecto para instalar la librería de HubSpot:

    
    

    bash

    composer require hubspot/hubspot-php

    Si no puedes usar Composer por alguna razón, también puedes hacer solicitudes HTTP directamente usando cURL (te lo explicaré más adelante).

Paso 3: Conectar con la API de HubSpot

Ahora que tienes la clave API, puedes utilizarla para hacer solicitudes a la API de HubSpot. Aquí te dejo un ejemplo básico de cómo hacer una integración para capturar formularios.

Ejemplo de integración con PHP usando el SDK de HubSpot:


php

<?php require_once 'vendor/autoload.php'; // Asegúrate de que el autoload de Composer esté cargado use HubSpotClientHubSpot; use HubSpotClientHubSpotException; $apiKey = 'tu-api-key'; // Reemplaza con tu clave API de HubSpot $client = new HubSpot($apiKey); try { // Ejemplo: Crear un nuevo contacto (lead) en HubSpot $properties = [ 'email' => $_POST['email'], // Campo del formulario de la landing page 'firstname' => $_POST['firstname'], 'lastname' => $_POST['lastname'] ]; // Se hace una solicitud para agregar el contacto $response = $client->crm()->contacts()->basicApi()->create($properties); // Puedes realizar otras acciones como agregar notas, propiedades personalizadas, etc. echo 'Contacto creado exitosamente en HubSpot'; } catch (HubSpotException $e) { echo 'Error al crear el contacto: ' . $e->getMessage(); } ?>

Paso 4: Crear un formulario en tu landing page

Aquí tienes un formulario básico de ejemplo que puedes agregar a tu página de aterrizaje:


html

<form action="procesar_formulario.php" method="POST"> <input type="text" name="firstname" placeholder="Nombre" required><br> <input type="text" name="lastname" placeholder="Apellido" required><br> <input type="email" name="email" placeholder="Correo electrónico" required><br> <input type="submit" value="Enviar"> </form>

Este formulario envía los datos a un archivo procesar_formulario.php, que es el que procesará la solicitud y enviará la información a HubSpot a través de la API.

Paso 5: Verificar y gestionar los datos de contacto en HubSpot

Una vez que el formulario se envíe y el contacto sea creado correctamente, podrás ver los datos en tu cuenta de HubSpot. Los contactos aparecerán en la sección de "Contactos" de tu cuenta de HubSpot.


Alternativa sin usar SDK (usando cURL directamente)

Si prefieres no usar el SDK de PHP, puedes hacer las solicitudes a la API de HubSpot directamente con cURL.


php

<?php $apiKey = 'tu-api-key'; // Reemplaza con tu clave API de HubSpot // Datos del formulario $email = $_POST['email']; $firstname = $_POST['firstname']; $lastname = $_POST['lastname']; // URL para agregar un contacto $url = 'https://api.hubapi.com/contacts/v1/contact/?hapikey=' . $apiKey; $data = [ "properties" => [ [ "property" => "email", "value" => $email ], [ "property" => "firstname", "value" => $firstname ], [ "property" => "lastname", "value" => $lastname ] ] ]; // Inicializar cURL $ch = curl_init($url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data)); curl_setopt($ch, CURLOPT_HTTPHEADER, [ 'Content-Type: application/json' ]); // Ejecutar la solicitud $response = curl_exec($ch); curl_close($ch); // Procesar la respuesta if ($response) { echo 'Contacto creado con éxito'; } else { echo 'Error al crear el contacto'; } ?>

Este código realiza una solicitud HTTP POST a la API de HubSpot para crear un nuevo contacto. Recibe los datos del formulario, los estructura y los envía a la API para que se agreguen como un contacto.


Paso 6: Probar la integración

  1. Asegúrate de que el formulario en tu página de aterrizaje esté enviando correctamente los datos al script PHP que gestiona la integración con HubSpot.
  2. Realiza una prueba de envío de formulario y verifica si el contacto aparece en tu cuenta de HubSpot.
  3. Si encuentras algún error, revisa las respuestas de la API y asegúrate de que la clave API sea válida.

Consideraciones adicionales:

  • Límites de la API de HubSpot: Asegúrate de revisar los límites de uso de la API de HubSpot, especialmente si tu sitio recibe un volumen alto de tráfico.
  • Autenticación: Si decides usar OAuth en lugar de una clave API, el proceso será ligeramente diferente, pero para la mayoría de los casos, la clave API es suficiente.
  • Validaciones: Asegúrate de validar y sanitizar los datos del formulario antes de enviarlos a HubSpot, para evitar problemas de seguridad.

Con esto, tendrás tu landing page integrada con HubSpot para captar contactos o leads. ¿Tienes alguna otra pregunta sobre esta integración o algún otro aspecto técnico?

 
by Janeth Kent Date: 14-11-2024 visitas : 57  
 
Janeth Kent

Janeth Kent

Licenciada en Bellas Artes y programadora por pasión. Cuando tengo un rato retoco fotos, edito vídeos y diseño cosas. El resto del tiempo escribo en MA-NO WEB DESIGN AND DEVELOPMENT.