2017 © Pedro Peláez
 

library intercom-php

image

wisembly/intercom-php

  • Wednesday, May 13, 2015
  • by guillaumepotier
  • Repository
  • 14 Watchers
  • 6 Stars
  • 7,260 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 3 Forks
  • 2 Open issues
  • 10 Versions
  • 0 % Grown

The README.md

Build Status, (*1)

Intercom-php

This little library allows you to use Intercom API more easily. It provides clients to manage your users or your events fluently., (*2)

The curl client used is Guzzle. Instanciate Guzzle with your configuration and give it to your Intercom client with you credentials and it's ready go !, (*3)

Intercom API documentation, (*4)

Versioning

For the moment the library is in "Work In Progress". Master move fast and I don't guarantee BC before announcing a stable version in 1.1.0., (*5)

Installation

  1. Install composer : curl -s http://getcomposer.org/installer | php (more info at getcomposer.org), (*6)

  2. Create a composer.json file in your project root : (or add only the excelant line in your existing composer file), (*7)

  {
    "require": {
      "wisembly/intercom-php": "*",
    }
  }
  1. Install via composer : php composer.phar install

Use Intercom-php

Create the client for manage Users

use GuzzleHttp\Client as Guzzle;
use Intercom\Client\User as Intercom;

$guzzleHttp = new Guzzle;
$intercom = new Intercom('APP_ID', 'API_KEY', $guzzle);

Actions

Now you can do all the requests that the Intercom User API allows. For each actions, you need to create a User object that represents your Intercom User., (*8)

Create

use Intercom\Object\User;

$user = new User(1, 'foo@company.com'); // user_id or email
$intercom->create($user);

Update

use Intercom\Object\User;

$user = new User(1, 'foo@company.com'); // user_id or email
$intercom->update($user);

Delete

use Intercom\Object\User;

$user = new User(1, 'foo@company.com'); // user_id or email
$intercom->delete($user);

Get

$user = $intercom->get(1, 'foo@company.com'); // user_id or email

To search users through all your Intercom database, use an instance of UserSearch that allows you to find users with specified attributes., (*9)

use Intercom\Request\Search\UserSearch;

// Retrieve the first ten users with tag name "premium"
$search = new UserSearch(1, 10, null, 'premium');

$users = $intercom->search($search);

See the complete documentation of this search API., (*10)

Use case : How to retrieve all your Intercom users ?

By default the Intercom API allows you to retrieve 500 entities per request., (*11)

use GuzzleHttp\Client as Guzzle;
use Intercom\Request\UserSearch;
use Intercom\Client\User as Intercom;

// Create the client
$guzzle = new Guzzle;
$intercom = new Intercom('APP_ID', 'API_KEY', $guzzle);

// Create a search with defaut parameters
$search = new UserSearch;

$users = [];

// Fetch all users
do {
    $response = $intercom->search($search);
    $users = array_merge($users, $response->getContent());
    $search->setPage($response->getNextPage());
} while ($response->hasPageToBeFetch());

TODO

  • Tagging
  • Notes
  • Impressions
  • Messages threads

The Versions

13/05 2015

dev-check-response-exists

dev-check-response-exists https://github.com/wisembly/intercom-php

  Sources   Download

MIT

The Requires

 

The Development Requires

intercom

02/07 2014
02/07 2014
01/07 2014
13/06 2014
26/05 2014

v1.0.4

1.0.4.0 https://github.com/wisembly/intercom-php

  Sources   Download

MIT

The Requires

 

The Development Requires

intercom

25/04 2014

v1.0.3

1.0.3.0 https://github.com/wisembly/intercom-php

  Sources   Download

MIT

The Requires

 

The Development Requires

intercom

24/04 2014

v1.0.2

1.0.2.0 https://github.com/wisembly/intercom-php

  Sources   Download

MIT

The Requires

 

The Development Requires

intercom

24/04 2014

v1.0.1

1.0.1.0 https://github.com/wisembly/intercom-php

  Sources   Download

MIT

The Requires

 

The Development Requires

intercom

23/04 2014

v1.0.0

1.0.0.0 https://github.com/wisembly/intercom-php

  Sources   Download

MIT

The Requires

 

The Development Requires

intercom