zanysoft/laravel-hubspot

Adds a Laravel specific wrapper for the Hubspot API V1 client package

1.0.0 2021-11-22 15:00 UTC

This package is auto-updated.

Last update: 2024-04-16 08:19:32 UTC


README

Latest Stable Version Total Downloads

This is a wrapper for the hubspot/hubspot-php package and gives the user a Service Container binding and facade of the SevenShores\Hubspot\Factory::create('api-key') function.

Installation

From the command line run

composer require zanysoft/laravel-hubspot

Configuration

Run this on the command line for publishing a configuration file to config/meta-tags.php.

php artisan vendor:publish --provider="ZanySoft\LaravelHubSpot\HubSpotServiceProvider" --tag="config"

Get a HubSpot API Key from the Intergrations page of your HubSpot account.

Add your HubSpot API key into the your .env file: HUBSPOT_API_KEY=yourApiKey

Usage

You can use either the facade or inject the HubSpot class as a dependency:

Facade

// Echo all contacts first and last names
$response = HubSpot::contacts()->all();
    foreach ($response->contacts as $contact) {
        echo sprintf(
            "Contact name is %s %s." . PHP_EOL,
            $contact->properties->firstname->value,
            $contact->properties->lastname->value
        );
    }

// OR

$factory = HubSpot::factory();
$response = $factory->contacts()->all();
    foreach ($response->contacts as $contact) {
        echo sprintf(
            "Contact name is %s %s." . PHP_EOL,
            $contact->properties->firstname->value,
            $contact->properties->lastname->value
        );
    }

Dependency Injection

Route::get('/', function (ZanySoft\LaravelHubSpot\HubSpot $hubspot) {
    $response = $hubspot->contacts()->all();
    foreach ($response->contacts as $contact) {
        echo sprintf(
            "Contact name is %s %s." . PHP_EOL,
            $contact->properties->firstname->value,
            $contact->properties->lastname->value
        );
    }
});

For more info on using the actual API see the main repo hubspot/hubspot-php

Issues

Please only report issues relating to the Laravel side of things here, main API issues should be reported here