PHPackages                             novaksolutions/infusionsoft-rest-php-sdk - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. novaksolutions/infusionsoft-rest-php-sdk

ActiveLibrary[API Development](/categories/api)

novaksolutions/infusionsoft-rest-php-sdk
========================================

An easy to use SDK for Infusionsoft's API (REST API)

v0.0.1-alpha(7y ago)11881MITPHPPHP ^5.4 || ^7.0CI failing

Since Jul 27Pushed 3y ago6 watchersCompare

[ Source](https://github.com/novaksolutions/infusionsoft-rest-php-sdk)[ Packagist](https://packagist.org/packages/novaksolutions/infusionsoft-rest-php-sdk)[ RSS](/packages/novaksolutions-infusionsoft-rest-php-sdk/feed)WikiDiscussions master Synced 2w ago

READMEChangelogDependencies (1)Versions (7)Used By (0)

Contributing
============

[](#contributing)

We are VERY open and appreciate contributions. Please try to follow our existing architecture, but we are always grateful for PRs, even if they just give us a possible solution to a problem.

Reporting bugs
==============

[](#reporting-bugs)

Please do, although bugs with bug fix PRs are appreciated more.

Examples
========

[](#examples)

Just show me how to use it
--------------------------

[](#just-show-me-how-to-use-it)

There are two parts, first you need to get an OAuth access\_token then you can use the REST client and model.

### REST client and model

[](#rest-client-and-model)

(This assumes you already have the access\_token)

```
use NovakSolutions\Infusionsoft\Model\Contact;
Registry::init();
#contact = new Contact();
$contact->given_name = 'Joey';
$contact->save();

```

### OAuth2

[](#oauth2)

(New stuff will go here...)

Architecture
============

[](#architecture)

The SDK is designed using PHP traits. This allows for quick creation of new services and models with extremely DRY code.

There are three main seperations of the API.

- REST Client and Model
- OAuth code
- Registry

The REST client and model allows you to work exclusively with objects and be ignorant of the REST api itself. This allows you to focus on what you need to do and not how the API works.

The SDK is designed to be pluggable, and easily integrated with your project. Most people already have a system for OAuth in their app, by seperating the OAuth code from the REST Client and Model you can easily inject your own auth\_token provider to integrate with your existing OAuth code.

The "Registry" is how we maintain IOC, it is a very simple implementation. You call init() it structures everything, and then you can replace things as needed. We wanted to keep it as simple to use as possible so IoC purists may balk and complain but it is simple, and does what we need with zero learning curve.

API Gotchas
===========

[](#api-gotchas)

###  Health Score

25

—

LowBetter than 35% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity13

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 51.6% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

2895d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/702379?v=4)[Joey Novak](/maintainers/joeynovak)[@joeynovak](https://github.com/joeynovak)

---

Top Contributors

[![joeynovak](https://avatars.githubusercontent.com/u/702379?v=4)](https://github.com/joeynovak "joeynovak (16 commits)")[![freezey](https://avatars.githubusercontent.com/u/879158?v=4)](https://github.com/freezey "freezey (15 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/novaksolutions-infusionsoft-rest-php-sdk/health.svg)

```
[![Health](https://phpackages.com/badges/novaksolutions-infusionsoft-rest-php-sdk/health.svg)](https://phpackages.com/packages/novaksolutions-infusionsoft-rest-php-sdk)
```

###  Alternatives

[exsyst/swagger

A php library to manipulate Swagger specifications

35816.3M7](/packages/exsyst-swagger)[hubspot/api-client

Hubspot API client

24016.2M18](/packages/hubspot-api-client)[pocketmine/bedrock-protocol

An implementation of the Minecraft: Bedrock Edition protocol in PHP

172437.8k11](/packages/pocketmine-bedrock-protocol)[botman/driver-telegram

Telegram driver for BotMan

94452.6k6](/packages/botman-driver-telegram)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
