bklein01/suitecrmclient

This is a fork of a free client library for use with SuiteCRM to abstract the various API usage to enable easier integrations. Provided by PortoSpire

0.0.7 2023-08-15 19:31 UTC

This package is auto-updated.

Last update: 2024-04-15 22:00:27 UTC


README

68747470733a2f2f6173736574732e706f72746f73706972652e636f6d2f6769746875622e696f2f737569746563726d636c69656e742e706e67

68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f506f72746f53706972652f737569746543524d436c69656e74 68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c616e6775616765732f636f64652d73697a652f506f72746f53706972652f737569746543524d436c69656e74 68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f506f72746f53706972652f737569746543524d436c69656e74

Client library for use with SuiteCRM

A free (LGPL3) client library for use with SuiteCRM to abstract various API usage to enable easier integrations. SuiteCRM

Provided by PortoSpire PortoSpire - be seen

Introduction Setup Usage

Introduction

This package provides a SuiteCRM client to abstract API calls and form submissions to provide and receive data from SuiteCRM instances. It makes use of Person Form campaigns and both the V8 and rest APIs as needed.

Setup

Add to your project's composer.json

composer require portospire/suitecrmclient

Usage

This package is built to support Laminas Mezzio and Laminas MVC as well as be available as a stand alone library.

An example to get a list of Web campaigns from a SuiteCRM instance:

$SuiteCRMClient->setServerDomain($server_domain); $SuiteCRMClient->setClientId($client_id); $SuiteCRMClient->setClientSecret($client_secret); $filter = new \PortoSpire\SuiteCRMClient\Model\Filter(['campaign_type' => 'Web']); $json = $SuiteCRMClient->getCampaigns([], ['size' => 20, 'number' => 1], 'name', $filter); // this will contain json of the results $campaignsFull = $SuiteCRMClient->convertJsonToGenerics($json); // this converts the json to PHP objects

An example to submit a lead into a web-to-lead form in a SuiteCRM instance: (You can extend the provided models (Model/WebToLead, etc) if you have custom fields)

$values = (array) $WebToLead; // expects an array of key=>value pairs where the keys match the different fields from the web-to-lead form $SuiteCRMClient->setServerDomain($server_domain); $SuiteCRMClient->setClientId($client_id); $SuiteCRMClient->setClientSecret($client_secret); $SuiteCRMClient->submitWebToLead($values, $campaign_id); // this must match the campaign id that the web-to-lead form is associated to in SuiteCRM

Mezzio

Add the ConfigProvider class to the config aggregator (typically found in config/config.php)

$aggregator = new ConfigAggregator([ ... \PortoSpire\SuiteCRMClient\ConfigProvider::class, ... Then use the client in your handlers/middleware as needed for your use cases.

Laminas MVC

There should be no additional steps beyond adding to your project's composer.json required to begin using the library with Laminas MVC.

Standalone

There should be no additional steps beyond adding to your project's composer.json required to begin using the library.