tanseercena / eventbrite
Laravel PHP Facade/Wrapper for the Eventbrite Data API v3
Requires
- php: ^7.2
- ext-json: *
- guzzlehttp/guzzle: ^6.0
- illuminate/support: ^7.0
Requires (Dev)
- phpunit/phpunit: ^6.1
- scrutinizer/ocular: ^1.1
- squizlabs/php_codesniffer: ^2.3
This package is auto-updated.
Last update: 2024-09-05 19:50:54 UTC
README
Eventbrite API包装器用于Laravel。此包提供了对Eventbrite(出色)API的简单接口。使用表达式清晰的PHP组织Eventbrite集成。
要求
PHP >= 7.2
Laravel >= 6.0
安装
Laravel Eventbrite使用composer使安装变得简单。
通过composer安装
composer require marat555/eventbrite
注册服务提供程序 将Laravel Eventbrite服务提供程序添加到您的config/app.php文件中的providers键
'providers' => [ // ... other providers Marat555\Eventbrite\EventbriteServiceProvider::class, ]
Eventbrite外观别名 然后将Eventbrite外观添加到您的aliases键:'Eventbrite' => Marat555\Eventbrite\Facades\Eventbrite::class.
配置
配置可以通过您的.env文件完成。
EVENTBRITE_BASE_URL=https://www.eventbriteapi.com/v3/
EVENTBRITE_TOKEN=xxxxxxx
您还可以将配置文件发布到
config/eventbrite.pzhp以进行编辑:php artisan vendor:publish --provider="Marat555\Eventbrite\EventbriteServiceProvider"
用法
Laravel Eventbrite使用起来非常直观。
简介
已经配置好了一切,只想看看它的实际效果?请看下面的示例代码。
<?php namespace App\Http\Controllers; use Eventbrite; use App\Http\Controllers\Controller; class EventbriteController extends Controller { public function getEvent(int $eventId) { return response()->json(Eventbrite::event()->get($eventId)); } }
活动
通过活动ID检索活动
Eventbrite::event()->get($eventId);
创建新活动
Eventbrite::event()->create(int $organizerId, array $event);
通过活动ID更新活动
Eventbrite::event()->update(int $eventId, array $event);
通过场馆ID列出活动
Eventbrite::event()->list('venue', int $venueId, array $filterParams = []);
通过组织ID列出活动
Eventbrite::event()->list('organizations', int $organizationId, array $filterParams = []);
通过活动系列ID列出活动
Eventbrite::event()->list('series', int $seriesId, array $filterParams = []);
发布活动。返回一个布尔值,表示发布操作的成功或失败。
Eventbrite::event()->publish(int $eventId);
取消发布活动。返回一个布尔值,表示取消发布操作的成功或失败。
Eventbrite::event()->unpublish(int $eventId);
取消活动。返回一个布尔值,表示取消操作的成功或失败。
Eventbrite::event()->cancel(int $eventId);
删除活动。返回一个布尔值,表示删除操作的成功或失败。
Eventbrite::event()->delete(int $eventId);
分类
通过分类ID检索分类
Eventbrite::category()->get(int $categoryId);
分类列表
Eventbrite::category()->all(int $categoryId);
子分类
通过子分类ID检索子分类
Eventbrite::subcategory()->get(int $subcategoryId);
子分类列表
Eventbrite::subcategory()->all(int $categoryId);
显示设置
通过活动ID检索显示设置
Eventbrite::displaySettings()->get(int $eventId);
更新显示设置
Eventbrite::displaySettings()->update(int $eventId, array $displaySettings);
用户
通过用户ID检索用户
Eventbrite::user()->get($userId);
检索您的用户
Eventbrite::user()->me();
场馆
通过场馆ID检索场馆
Eventbrite::venue()->get($venueId);
创建新场馆
Eventbrite::venue()->create(int $organizerId, array $venue);
更新场馆
Eventbrite::venue()->update(int $venueId, array $venue);
通过组织ID列出场馆
Eventbrite::venue()->list(int $organizationId);
格式
通过格式ID检索格式
Eventbrite::format->get($formatId);
格式列表
Eventbrite::format->list();
媒体
通过媒体ID检索媒体
Eventbrite::media->get($formatId);
创建媒体上传
Eventbrite::media->createUpload(array $mediaUpload);
检索媒体上传
Eventbrite::media->createUpload(array $mediaUploadType);
查询构建
包装器还为您提供了方便的方式来构建相当复杂的Eventbrite API请求。以下方法返回实例,因此您可以根据需要将更多约束添加到请求中。
扩展
Eventbrite有许多相互引用的模型,并且您通常会希望查询主要模型的同时获取相关数据 - 例如,您将想要获取活动及其组织者。
Eventbrite::event()->expand('organizer')->get($eventId);
处理异常
Eventbrite API将根据需要返回错误。我仍在寻找处理这些异常的更优雅方式...目前,请简单地使用try/catch块包装您的调用。
try { Eventbrite::event()->publish(1234); } catch(EventbriteErrorException $e) { $response = $e->getResponse(); $responseBodyAsString = $response->getBody()->getContents(); echo $responseBodyAsString; }
实现的事件brite API端点
- 活动
- get
- create
- update
- list
- byEventSeriesId
- byVenueId
- byOrganizationId
- publish
- unpublish
- cancel
- delete
- 分类
- get
- list
- 子分类
- get
- list
- 显示设置
- getByEventId
- update
- 用户
- get
- me
- 场馆
- get
- update
- list
- 格式
- get
- list
- 媒体
- get
- 创建上传
- 创建上传
Eventbrite API 功能丰富。我已尝试涵盖所有关键端点,但仍有一些端点尚未实现。
许可证
MIT 许可证(MIT)。有关更多信息,请参阅许可证文件。