PHPackages                             rapidwebltd/php-google-people-api - 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. rapidwebltd/php-google-people-api

ActiveLibrary[API Development](/categories/api)

rapidwebltd/php-google-people-api
=================================

This package provides a user friendly way of interacting with Google Contacts via the Google People API.

v2.0.0(1mo ago)103260.3k↑78.9%38LGPL-3.0-onlyPHPPHP ^8.1CI passing

Since Feb 20Pushed 1mo ago9 watchersCompare

[ Source](https://github.com/rapidwebltd/php-google-people-api)[ Packagist](https://packagist.org/packages/rapidwebltd/php-google-people-api)[ RSS](/packages/rapidwebltd-php-google-people-api/feed)WikiDiscussions master Synced 2w ago

READMEChangelog (3)Dependencies (3)Versions (4)Used By (0)

👥 PHP Google People API
=======================

[](#-php-google-people-api)

This package provides a user friendly way of interacting with Google Contacts via the Google People API.

Version 2 requires PHP 8.1 or newer.

[![](assets/images/php-google-people-api.png)](assets/images/php-google-people-api.png)

Installation
------------

[](#installation)

PHP Google People API can be easily installed using Composer. Just run the following command from the root of your project.

```
composer require rapidwebltd/php-google-people-api

```

If you have never used the Composer dependency manager before, head to the [Composer website](https://getcomposer.org/) for more information on how to get started.

Setup
-----

[](#setup)

To use this package, you need to authenticate with Google via OAuth 2. Thankfully, this is made easy by the PHP Google OAuth 2 Handler package.

You can run its guided setup script with the following command.

```
php vendor/rapidwebltd/php-google-oauth-2-handler/src/setup.php

```

This will guide you through the process of setting up a project, and logging into to the Google account that you wish to manage contacts for. When asked which scopes you require access to, enter the following.

```
https://www.googleapis.com/auth/userinfo.profile
https://www.googleapis.com/auth/contacts
https://www.googleapis.com/auth/contacts.readonly

```

When complete, you will have the code needed to create a `GoogleOAuth2Handler` object for this Google account.

Import the package classes before using the examples below.

```
use RapidWeb\GoogleOAuth2Handler\GoogleOAuth2Handler;
use RapidWeb\GooglePeopleAPI\Contact;
use RapidWeb\GooglePeopleAPI\GooglePeople;
```

You can then create a `GooglePeople` object, as follows.

```
$people = new GooglePeople($googleOAuth2Handler);
```

Usage
-----

[](#usage)

### Retrieve all contacts

[](#retrieve-all-contacts)

```
// Retrieval all contacts
foreach($people->all() as $contact) {
    echo $contact->resourceName.' - ';
    if ($contact->names) {
        echo $contact->names[0]->displayName;
    }
    echo PHP_EOL;
}
```

### Retrieve a single contact

[](#retrieve-a-single-contact)

```
// Retrieve single contact (by resource name)
$contact = $people->get('people/c8055020007701654287');
```

### Create a new contact

[](#create-a-new-contact)

```
// Create new contact
$contact = new Contact($people);
$contact->names[0] = new stdClass;
$contact->names[0]->givenName = 'Testy';
$contact->names[0]->familyName = 'McTest Test';
$contact->save();
```

### Update a contact

[](#update-a-contact)

```
// Update contact
$contact->names[0]->familyName = 'McTest';
$contact->save();
```

### Delete a contact

[](#delete-a-contact)

```
// Delete contact
$contact->delete();
```

###  Health Score

64

—

FairBetter than 99% of packages

Maintenance94

Actively maintained with recent releases

Popularity52

Moderate usage in the ecosystem

Community19

Small or concentrated contributor base

Maturity74

Established project with proven stability

 Bus Factor1

Top contributor holds 75% 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

Every ~1534 days

Total

3

Last Release

31d ago

Major Versions

v1.0.1 → v2.0.02026-07-18

### Community

Maintainers

![](https://www.gravatar.com/avatar/c580cdf7c14898fff179cdfc1085892091d5d2f49d917873a12365af9ac77c93?d=identicon)[Jord-JD](/maintainers/Jord-JD)

---

Top Contributors

[![Jord-JD](https://avatars.githubusercontent.com/u/650645?v=4)](https://github.com/Jord-JD "Jord-JD (6 commits)")[![EunusHosen](https://avatars.githubusercontent.com/u/1550104?v=4)](https://github.com/EunusHosen "EunusHosen (1 commits)")[![JuniYadi](https://avatars.githubusercontent.com/u/31454084?v=4)](https://github.com/JuniYadi "JuniYadi (1 commits)")

---

Tags

googlegoogle-contactsgoogle-peoplegoogle-people-apiphpphp-library

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/rapidwebltd-php-google-people-api/health.svg)

```
[![Health](https://phpackages.com/badges/rapidwebltd-php-google-people-api/health.svg)](https://phpackages.com/packages/rapidwebltd-php-google-people-api)
```

###  Alternatives

[exsyst/swagger

A php library to manipulate Swagger specifications

35816.5M7](/packages/exsyst-swagger)[lucasdotvin/laravel-soulbscription

A straightforward interface to handle subscriptions and features consumption.

709209.3k](/packages/lucasdotvin-laravel-soulbscription)[pimax/fb-messenger-php

Facebook Messenger Bot PHP API

313188.5k2](/packages/pimax-fb-messenger-php)

PHPackages © 2026

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