PHPackages                             erwane/openagenda-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. erwane/openagenda-api

ActiveLibrary[API Development](/categories/api)

erwane/openagenda-api
=====================

PHP sdk to request OpenAgenda api

3.1.2(1y ago)21042[1 issues](https://github.com/Erwane/openagenda-api/issues)2MITPHPPHP ^8.0

Since Oct 20Pushed 1y ago2 watchersCompare

[ Source](https://github.com/Erwane/openagenda-api)[ Packagist](https://packagist.org/packages/erwane/openagenda-api)[ Docs](https://github.com/Erwane/openagenda-api)[ RSS](/packages/erwane-openagenda-api/feed)WikiDiscussions 3.x Synced 1mo ago

READMEChangelogDependencies (6)Versions (33)Used By (2)

PHP lib for OpenAgenda API (all CRUD endpoints)
===============================================

[](#php-lib-for-openagenda-api-all-crud-endpoints)

[![Software License](https://camo.githubusercontent.com/55c0218c8f8009f06ad4ddae837ddd05301481fcf0dff8e0ed9dadda8780713e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](LICENSE)[![codecov](https://camo.githubusercontent.com/4ea2a8e215f6dad6e5ef88c7fdd89a05082dbbe00207099d4aaec1767442ae44/68747470733a2f2f636f6465636f762e696f2f67682f457277616e652f6f70656e6167656e64612d6170692f6272616e63682f332e782f67726170682f62616467652e7376673f746f6b656e3d684635486845546e6b67)](https://codecov.io/gh/Erwane/openagenda-api)[![Build Status](https://github.com/Erwane/openagenda-api/actions/workflows/ci.yml/badge.svg?branch=3.x)](https://github.com/Erwane/openagenda-api/actions)[![Packagist Downloads](https://camo.githubusercontent.com/701e459905f5bab537fc80867a84bbd6417004d08d3b17f08b510c9c355e9ab6/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f457277616e652f6f70656e6167656e64612d617069)](https://packagist.org/packages/Erwane/openagenda-api)[![Packagist Version](https://camo.githubusercontent.com/44eacf5c1230e87ddab290c121785d9ccffc39b32e348caf567f896df1c6aecb/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f457277616e652f6f70656e6167656e64612d617069)](https://packagist.org/packages/Erwane/openagenda-api)

This package will help you to query [OpenAgenda API](https://developers.openagenda.com/). It supports all endpoints with all methods (HEAD, GET, POST, PATCH &amp; DELETE).

Version map
-----------

[](#version-map)

branchThis package versionOpenAgenda APIPHP min3.0.x3.0.\*v2PHP 7.23.x^3.1v2PHP 8.0Installation
------------

[](#installation)

The sdk is not directly usable.
You need to use one client wrapper, compatible with your PSR-18 http client or framework.

### Wrappers

[](#wrappers)

*Please check version map in the `README` of your desired wrapper.*

#### CakePHP

[](#cakephp)

[erwane/openagenda-wrapper-cakephp](https://github.com/Erwane/openagenda-wrapper-cakephp)

```
composer require erwane/openagenda-wrapper-cakephp
```

#### Guzzle

[](#guzzle)

[erwane/openagenda-wrapper-guzzle](https://github.com/Erwane/openagenda-wrapper-guzzle)

```
composer require erwane/openagenda-wrapper-guzzle
```

Documentations and examples
---------------------------

[](#documentations-and-examples)

- [Agendas](docs/agendas.md)
- [Events](docs/events.md)
- [Locations](docs/locations.md)
- [Validations](docs/validation.md)

Quick start
-----------

[](#quick-start)

This package require wrapper compatible with your PSR-18 Http client (`psr/http-client`).

For performance and reduce queries in `post`, `patch` &amp; `delete` (authenticated request), you can configure a PSR 16 cache (`psr/simple-cache`).

```
use OpenAgenda\OpenAgenda;
use OpenAgenda\Wrapper\GuzzleWrapper

// PSR-18 Http client.
$guzzleOptions = ['timeout'  => 2.0];
$wrapper = new GuzzleWrapper($guzzleOptions);

// PSR-16 Simple cache. Optional
$cache = new Psr16Cache();

// Create the OpenAgenda client. The public key is required for reading data (GET)
// The private key is optional and only needed for writing data (POST, PUT, DELETE)
$oa = new OpenAgenda([
    'public_key' => 'my public key', // Required
    'secret_key' => 'my secret key', // Optional, only for create/update/delete
    'wrapper' => $wrapper, // Required
    'cache' => $cache, // Optional
    'defaultLang' => 'fr', // Optional
]);
```

### Usages

[](#usages)

**Agendas**

```
$agendas = $oa->myAgendas(['limit' => 2]);
$agenda = $oa->agendas(['slug' => 'agenda-slug'])->first();
```

See [agendas](docs/agendas.md) for more details.

**Locations**

```
// Search
$locations = $oa->locations(['agendaUid' => 123, 'name' => 'My Location']);
// Exists and get
$exists = $oa->location(['uid' => 456, 'agendaUid' => 123])->exists();
$location = $oa->location(['uid' => 456, 'agendaUid' => 123])->get();
// Create
$location = $oa->location($data)->create();
```

See [locations](docs/locations.md) for more details.

**Events**

```
// Search
$events = $oa->events(['agendaUid' => 123, 'title' => 'My event']);
// Exists and get
$exists = $oa->event(['uid' => 456, 'agendaUid' => 123])->exists();
$event = $oa->event(['uid' => 456, 'agendaUid' => 123])->get();
// Create
$event = $oa->event($data)->create();
```

See [events](docs/events.md) for more details.

###  Health Score

38

—

LowBetter than 85% of packages

Maintenance32

Infrequent updates — may be unmaintained

Popularity14

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity79

Established project with proven stability

 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 ~91 days

Recently: every ~0 days

Total

30

Last Release

474d ago

Major Versions

1.x-dev → 2.0.02019-07-07

2.x-dev → 3.0.02025-01-13

PHP version history (6 changes)1.0.0PHP &gt;=5.6.0

2.0.1PHP ^7.1

2.0.3PHP ^7.2 || ^8.0

3.0.0PHP ^7.2

3.1.0PHP ^8.0, &lt;8.2

3.1.2PHP ^8.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/91732d78336582954080932d4350d08420a053dbba6728f1727b5500ab931c65?d=identicon)[Erwane](/maintainers/Erwane)

---

Top Contributors

[![Erwane](https://avatars.githubusercontent.com/u/712604?v=4)](https://github.com/Erwane "Erwane (188 commits)")

---

Tags

openagendaphpopenagenda

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/erwane-openagenda-api/health.svg)

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

###  Alternatives

[algolia/algoliasearch-client-php

API powering the features of Algolia.

69333.0M114](/packages/algolia-algoliasearch-client-php)[swisnl/json-api-client

A PHP package for mapping remote JSON:API resources to Eloquent like models and collections.

211473.2k12](/packages/swisnl-json-api-client)[php-heroku-client/php-heroku-client

A PHP client for the Heroku Platform API

24404.8k4](/packages/php-heroku-client-php-heroku-client)[yoti/yoti-php-sdk

Yoti SDK for quickly integrating your PHP backend with Yoti

27539.9k1](/packages/yoti-yoti-php-sdk)[brd6/notion-sdk-php

Notion SDK for PHP

5918.0k](/packages/brd6-notion-sdk-php)[iwechatpay/openapi

为 wechatpay/wechatpay 增加IDE提示的接口描述包。

406.7k](/packages/iwechatpay-openapi)

PHPackages © 2026

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