PHPackages                             ciaranpflanagan/webinarjam-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. ciaranpflanagan/webinarjam-api

ActiveLibrary[API Development](/categories/api)

ciaranpflanagan/webinarjam-api
==============================

WebinarJam API Wrapper

v1.0.1(5y ago)11.5k1PHP

Since Mar 27Pushed 5y ago1 watchersCompare

[ Source](https://github.com/ciaranpflanagan/WebinarJamApi)[ Packagist](https://packagist.org/packages/ciaranpflanagan/webinarjam-api)[ Docs](https://github.com/ciaranpflanagan/WebinarJam)[ RSS](/packages/ciaranpflanagan-webinarjam-api/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (2)DependenciesVersions (3)Used By (0)

WebinarJam Composer Package
===========================

[](#webinarjam-composer-package)

A composer package that makes it easier to communicate with the WebinarJam API.

Installation
============

[](#installation)

```
composer require ciaranpflanagan/webinarjam-api
```

Add the service provider to your `config/app.php` providers array

```
ciaranpflanagan\WebinarJamApi\WebinarJamServiceProvider::class
```

Usage
=====

[](#usage)

Include the package so it can be used

```
use ciaranpflanagan\WebinarJamApi\WebinarJam;
```

Create a new instance of the WebinarJam class, passing in your WebinarJam API key. More can be found on obtaining your API key in the [WebinarJam API Documentation](https://documentation.webinarjam.com/connecting-to-our-api/).

```
$webinar = new WebinarJam('WEBINARJAM_API_KEY');
```

List All Webinars
-----------------

[](#list-all-webinars)

To get a full list of webinars. This returns an array with the response from the API.

```
$webinar->webinars();
```

### Output

[](#output)

```
{
    "status": "success",
    "webinars": [
        {
            "webinar_id": 1,
            "webinar_hash": "gfdsg765g",
            "name": "First Webinar",
            "description": "First Webinar From API",
            "type": "Series of presentations",
            "schedules": [
                "Every day, 9:00 AM"
            ],
            "timezone": "Europe\/Dublin"
        },
        {
            "webinar_id": 2,
            "webinar_hash": "gfdsg765g",
            "name": "Second Webinar",
            "description": "Second Webinar From API",
            "type": "Series of presentations",
            "schedules": [
                "Every day, 9:00 AM"
            ],
            "timezone": "Europe\/Dublin"
        }
    ]
}
```

Details About An Individual Webinar
-----------------------------------

[](#details-about-an-individual-webinar)

To get details about one individual webinar (including it's schedules). This returns an array with the response from the API.

```
/**
 * @param int $webinar_id
 */
$webinar->webinarDetails($webinar_id);
```

### Output

[](#output-1)

```
{
    "status": "success",
    "webinar": {
        "webinar_id": 1,
        "webinar_hash": "gfdsg765g",
        "name": "First Webinar",
        "description": "First Webinar From API",
        "type": "Series of presentations",
        "schedules": [
            {
                "date": "2021-03-25 09:00",
                "schedule": 99,
                "comment": "Every day, 9:00 AM"
            }
        ],
        "timezone": "Europe\/Dublin",
        "presenters": [
            {
                "name": "Ciaran Flanagan",
                "email": "test@test.com",
                "picture": ""
            }
        ],
        "registration_url": "",
        "registration_type": "free",
        "registration_fee": 0,
        "registration_currency": "",
        "registration_checkout_url": "",
        "registration_post_payment_url": "",
        "direct_live_room_url": "",
        "direct_replay_room_url": ""
    }
}
```

Register A Person To A Webinar
------------------------------

[](#register-a-person-to-a-webinar)

To register a person to a webinar. This returns an array with the response from the API.
**Note:** `$webinar_id` and `$schedule` are of type `int`.

```
/**
 * @param int $webinar_id
 * @param array $details
 */
$details = array(
    "first_name" => "",
    "last_name" => "", // Optional
    "email" => "",
    "schedule" => 0,
    "ip_address" => "", // Optional
    "phone_country_code" => "", // Optional
    "phone" => "", // Optional
);

$webinar->register($webinar_id, $details);
```

### Output

[](#output-2)

```
{
    "status": "success",
    "user": {
        "webinar_id": 1,
        "webinar_hash": "gfdsg765g",
        "user_id": 1234,
        "first_name": "Ciaran",
        "last_name": "Flanagan",
        "phone_country_code": "+353",
        "phone": "123456789",
        "email": "test@test.com",
        "password": null,
        "schedule": "99",
        "date": "2021-03-25 9:00",
        "timezone": "Europe\/Dublin",
        "live_room_url": "",
        "replay_room_url": "",
        "thank_you_url": ""
    }
}
```

Get A Webinar's Schedule
------------------------

[](#get-a-webinars-schedule)

To get a webinars schedule. This returns an array with the response from the API.

```
/**
 * @param int $webinar_id
 */
$webinar->webinarSchedule($webinar_id);

// or
$webinar->webinarDetails($webinar_id);
$webinar->webinarSchedule();
```

**NOTE:** If `->webinarDetails($webinar_id)` is has already been called, `->webinarSchedule()` can be called with no parameters and it will get the schedule using the same webinar ID used in `->webinarDetails($webinar_id)`.

### Output

[](#output-3)

```
[
    [
        "date" => "2021-03-25 09:00",
        "schedule" => 99,
        "comment" => "Every day, 9:00 AM",
    ],
    [
        "date" => "2021-03-52 09:00",
        "schedule" => 99,
        "comment" => "Every day, 9:00 AM",
    ],
]
```

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity21

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~15 days

Total

2

Last Release

1854d ago

### Community

Maintainers

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

---

Top Contributors

[![ciaranpflanagan](https://avatars.githubusercontent.com/u/6377337?v=4)](https://github.com/ciaranpflanagan "ciaranpflanagan (9 commits)")

---

Tags

apiwebinarwebinarjamapilaravelwebinarjamwebinarjam API

### Embed Badge

![Health badge](/badges/ciaranpflanagan-webinarjam-api/health.svg)

```
[![Health](https://phpackages.com/badges/ciaranpflanagan-webinarjam-api/health.svg)](https://phpackages.com/packages/ciaranpflanagan-webinarjam-api)
```

###  Alternatives

[joisarjignesh/bigbluebutton

BigBlueButton Server API Library for Laravel

162145.5k1](/packages/joisarjignesh-bigbluebutton)[d-scribe/laraquick

A collection of classes to be extended/used in laravel applications for quick development

371.8k1](/packages/d-scribe-laraquick)

PHPackages © 2026

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