PHPackages                             iclimber/laravel-zoom - 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. iclimber/laravel-zoom

ActiveLibrary[API Development](/categories/api)

iclimber/laravel-zoom
=====================

Laravel Zoom package

1.0.24(6y ago)25821MITPHPPHP ^7.2

Since Jun 26Pushed 6y agoCompare

[ Source](https://github.com/IClimber/laravel-zoom)[ Packagist](https://packagist.org/packages/iclimber/laravel-zoom)[ Docs](https://github.com/IClimber/laravel-zoom)[ RSS](/packages/iclimber-laravel-zoom/feed)WikiDiscussions master Synced yesterday

READMEChangelog (4)Dependencies (5)Versions (26)Used By (0)

Laravel package for Zoom video conferencing
===========================================

[](#laravel-package-for-zoom-video-conferencing)

[![Latest Version on Packagist](https://camo.githubusercontent.com/76e4930cf0a24ac85c9bb6849517eff0c66f384c282d837032e9c30be79687d8/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6d616373696469676974616c2f6c61726176656c2d7a6f6f6d2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/iclimber/laravel-zoom)[![Build Status](https://camo.githubusercontent.com/4e84b75558053f5e4d3c1adf043c1bcf2c8ec00e77ffb4d34a1bcd7b44141be0/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f6d616373696469676974616c2f6c61726176656c2d7a6f6f6d2f6d61737465722e7376673f7374796c653d666c61742d737175617265)](https://travis-ci.org/MacsiDigital/laravel-zoom)[![StyleCI](https://camo.githubusercontent.com/19bdbd4716f6257fae73790c3f427fc6f36d35db61dd9e147ee3744ccc4d84a0/68747470733a2f2f6769746875622e7374796c6563692e696f2f7265706f732f3139333538383938382f736869656c643f6272616e63683d6d6173746572)](https://github.styleci.io/repos/193588988)[![Total Downloads](https://camo.githubusercontent.com/485187bb72cbe264d716cef0599d6c9a3f3eb71815df2adf445f3e1a2b9b1c94/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6d616373696469676974616c2f6c61726176656c2d7a6f6f6d2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/iclimber/laravel-zoom)

Package to manage the Zoom API in Laravel

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

[](#installation)

You can install the package via composer:

```
composer require iclimber/laravel-zoom
```

The service provider should automatically register for For Laravel &gt; 5.4.

For Laravel &lt; 5.5, open config/app.php and, within the providers array, append:

```
IClimber\Zoom\Providers\ZoomServiceProvider::class
```

Configuration file
------------------

[](#configuration-file)

Publish the configuration file

```
php artisan vendor:publish --provider="IClimber\Zoom\Providers\ZoomServiceProvider"
```

This will create a zoom/config.php within your config directory, where you add value for api\_key and api\_secret.

Usage
-----

[](#usage)

Everything has been setup to be similar to Laravel syntax.

Unfortunately the Zoom API is not very uniform and is a bit all over the place, so at the minute there are a number of hacks to be able to get this to work. We will refactor and improve this.

We use relationships so you will need to check the Zoom API, for example to get a list of meetings or webinars you need to pass in a user id. WE use a little bit of relationship magic to acheive this in a more laravel type way.

If you want to work with JWT App

```
    $zoom = new \IClimber\Zoom\Zoom();
```

If you want to work with OAuth App

```
    //user bearer token
    $zoom = new \IClimber\Zoom\Zoom('eyJhbGc...');
```

So to get a user info

```
    $userBearerToken = 'eyJhbGc...';
    $zoom = new \IClimber\Zoom\Zoom($userBearerToken);

    //for Account Level App or JWT
    $user = $zoom->user->find('test@domain.com');
    //or
    $user = $zoom->user->first();

    //for User Managed App
    $user = $zoom->user->me();
```

To get a list of meetings

```
    $zoom = new \IClimber\Zoom\Zoom();

    //for Account Level App or JWT
    $meetings = $zoom->user->find('test@domain.com')->meetings()->all();

    //for User Managed App use method "user->me()"
    $meetings = $zoom->user->me()->meetings()->all();
```

Get user access token

```
    //Get access and refresh token by user authorization code
    $userAccessData = Zoom::getUserAccessData('obBEe8ewaL_KdYKjnimT4KPd8KKdQt9FQ', 'my redirect url');

    //Refresh token
    $userAccessData = Zoom::refreshToken('eyJhbGc...');

    //Revoke token
    Zoom::revokeToken('eyJhbGc...');
```

Find all
--------

[](#find-all)

The find all function returns a Laravel Collection so you can use all the Laravel Collection magic

```
    $zoom = new \IClimber\Zoom\Zoom();
    $users = $zoom->user->all();
```

Filtered
--------

[](#filtered)

There are very few ocassions in the API where you can filter the results, but where you can you can use the where function. Again check the API documentation for where you can add a query to the request. To action you would do like so

```
    $zoom = new \IClimber\Zoom\Zoom();
    $thing = $zoom->thing->where('Name', '=', 'Test Name')->get();
```

You can also just passs the name and value if it is to equal

```
    $zoom = new \IClimber\Zoom\Zoom();
    $thing = $zoom->thing->where('Name', 'Test Name')->get();
```

To only get a single item use the 'first' method

```
    $zoom = new \IClimber\Zoom\Zoom();
    $thing = $zoom->thing->where('Name', 'Test Name')->first();
```

Find by ID
----------

[](#find-by-id)

Just like Laravel we can use the 'find' method to return a single matched result on the ID. For users/registrants/panelists you can also use the email as well as the ID.

```
    $zoom = new \IClimber\Zoom\Zoom();
    $meeting = $zoom->meeting->find('000000000');
```

Creating Items
--------------

[](#creating-items)

We can create and update records using the save function, below is the full save script for a creation.

```
    $user = $zoom->user->create([
        'name' => 'Test Name',
        'first_name' => 'First Name',
        'last_name' => 'Last Name',
        'email' => 'test@test.com',
        'password' => 'secret',
        'type' => 1
    ]);

    $meeting = $user->meetings()->create([
        'type' => '2',
        'start_time' => '2019-06-29T20:00:00Z',
        'password' => '12345',
        'settings' => [
            'join_before_host' => true
        ]
    ]);

    $meeting->topic = 'Meeting name';
    $meetings->password = '12345';
    $meetings->save();

    $registrant = $meeting->registrants()->create([
        'email' => 'registratn@domain.com',
        'first_name' => 'Test',
        'last_name' => 'Registrant'
    ]);
```

There are also helper functions for adding sub objects

```
    $meeting = $zoom->meeting->find('000000000');
    $recurrence = $zoom->recurrence->create(['fields' => 'values']);
    $meeting->addRecurrence($recurrence);
    $meeting->save();
```

### RESOURCES

[](#resources)

We cover the main resources

```
Meetings
Panelists
Registrants
Users
Webinars

```

But some also have sub cresources, like

```
Recurrence
Occurrence
Settings (for meetings and webinars)
Tracking Fields

```

We aim to add additional resources/sub-resources over time

### Changelog

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information what has changed recently.

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

### Security

[](#security)

If you discover any security related issues, please email  instead of using the issue tracker.

Credits
-------

[](#credits)

- [Colin Hall](https://github.com/macsidigital)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

31

—

LowBetter than 68% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity17

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 61.5% 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 ~11 days

Total

25

Last Release

2231d ago

PHP version history (2 changes)1.0.0PHP ^7.0

1.0.17PHP ^7.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/e5cf6e5ec0d92a45387699b93e7b1ce3151603fc97f9b0f3f3c4088663c02bad?d=identicon)[IClimber](/maintainers/IClimber)

---

Top Contributors

[![colinhall17](https://avatars.githubusercontent.com/u/5073205?v=4)](https://github.com/colinhall17 "colinhall17 (40 commits)")[![IClimber](https://avatars.githubusercontent.com/u/18194010?v=4)](https://github.com/IClimber "IClimber (17 commits)")[![devoidofgenius](https://avatars.githubusercontent.com/u/4098997?v=4)](https://github.com/devoidofgenius "devoidofgenius (5 commits)")[![tpenaranda](https://avatars.githubusercontent.com/u/12966330?v=4)](https://github.com/tpenaranda "tpenaranda (2 commits)")[![EcoinTest](https://avatars.githubusercontent.com/u/153815470?v=4)](https://github.com/EcoinTest "EcoinTest (1 commits)")

---

Tags

apiclientlaravelzoomlaravel-zoommacsidigitaliclimber

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/iclimber-laravel-zoom/health.svg)

```
[![Health](https://phpackages.com/badges/iclimber-laravel-zoom/health.svg)](https://phpackages.com/packages/iclimber-laravel-zoom)
```

###  Alternatives

[macsidigital/laravel-zoom

Laravel Zoom package

268375.9k](/packages/macsidigital-laravel-zoom)[jubaer/zoom-laravel

A comprehensive Zoom integration package for Laravel, providing easy-to-use API functionality to interact with the Zoom platform using PHP.

58107.8k](/packages/jubaer-zoom-laravel)[devio/pipedrive

Complete Pipedrive API client for PHP and/or Laravel

1691.8M](/packages/devio-pipedrive)

PHPackages © 2026

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