punktde / flow-zoom-api
Zoom API connector
Installs: 12 409
Dependents: 0
Suggesters: 0
Security: 0
Stars: 2
Watchers: 6
Forks: 1
Open Issues: 0
Type:neos-package
Requires
- firebase/php-jwt: ^5.0
- guzzlehttp/guzzle: ^6 || ^7
- neos/flow: >5.1
- symfony/property-access: ^4.1
- symfony/serializer: ^4.0
This package is auto-updated.
Last update: 2024-10-29 06:00:09 UTC
README
This Flow package provides a programmable interface to the Zoom API.
Implemented Endpoints
The following Endpoints are currently implemented, see the Admin API documentation for details:
- Meeting
- Webinar
- Registrant
Setup
Installation
The installation is done with composer:
composer require punktde/flow-zoom-api
Configuration
- Create a set of JWT API-credentials
- Log-in to your Zoom-Account and create a new App
- Configure the required settings:
- clientId
- clientSecret
- baseUri
- zoomAccountIdentifier (your account's email-address)
Usage Examples
Find a single meeting by its identifier and host (user)
You need to provide an identifier for the host (user) of the meeting, since the api endpoint has no way of listing all meetings in an account
/** * @Flow\Inject * @var PunktDe\Zoom\Api\Resource\MeetingResource */ protected $meetings; /** * @param string $identifier * @param string $userIdentifier * @return PunktDe\Zoom\Api\Dto\Meeting */ private function findOneMeetingByIdentifier(string $identifier, string $userIdentifier): PunktDe\Zoom\Api\Dto\Product { return $this->meetings->get($identifier, $userIdentifier); }
Add a registrant to an existing meeting
/** * @Flow\Inject * @var PunktDe\Zoom\Api\Resource\MeetingRegistrantResource */ protected $meetingRegistrants; /** * @return Registrant|null */ private function addRegistrantToExistingMeeting(string $meetingIdentifier): ?PunktDe\Zoom\Api\Dto\Registrant { $registrant = (new Registrant()) ->setEmail('info@acme.co') ->setFirstName('Pooh') ->setLastName('The Bear'); return $this->meetingRegistrants->add($registrant, $meetingIdentifier); }