amphibee/studizz
最新稳定版本:1.3.2
Composer 安装命令:
composer require amphibee/studizz
包简介
A Laravel package to interact with the Studizz API
README 文档
README
This package provides a convenient way to interact with the Studizz API in Laravel applications.
Installation
You can install the package via composer:
composer require amphibee/studizz
Configuration
Publish the configuration file:
php artisan vendor:publish --provider="AmphiBee\Studizz\Providers\StudizzServiceProvider"
Add your Studizz API credentials to your .env file:
STUDIZZ_API_KEY=your_api_key
STUDIZZ_BASE_URL=https://sandbox.studizz.fr/api
Usage
This package provides several services: ContactService, FormationService, and CampusService. You can access these services through their respective facades.
Debugging and Logging
Each service provides a getRawResponse() method that returns the raw API response for debugging purposes:
use AmphiBee\Studizz\Facades\Contact; use Illuminate\Support\Facades\Log; try { $contactData = [ 'firstname' => 'John', 'lastname' => 'Doe', // ... autres données ]; $contactDto = new ContactDto($contactData); $newContact = Contact::create($contactDto); // Log the raw response Log::channel('api')->info('Studizz API Response', [ 'response' => Contact::getRawResponse() ]); } catch (\Exception $e) { Log::channel('api')->error('Studizz API Error', [ 'message' => $e->getMessage(), 'trace' => $e->getTraceAsString() ]); }
To enable API logging, add this to your config/logging.php:
'channels' => [ // ... autres canaux 'api' => [ 'driver' => 'daily', 'path' => storage_path('logs/api.log'), 'level' => env('LOG_LEVEL', 'debug'), 'days' => 14, ], ],
The logs will be stored in storage/logs/api.log with this format:
[2024-03-14 10:30:00] local.INFO: Studizz API - Données d'entrée {"data":{"firstname":"John","lastname":"Doe",...}}
[2024-03-14 10:30:01] local.INFO: Studizz API - Réponse {"response":{"id":"123",...}}
Contacts
Create a Contact
use AmphiBee\Studizz\Facades\Studizz; use AmphiBee\Studizz\Dto\ContactDto; $contactData = [ 'firstname' => 'John', 'lastname' => 'Doe', 'email' => 'john.doe@example.com', 'phone' => '+33612345678', 'degreeLevel' => 0, 'teamAssigned' => '63e26d24383062596b949cff', 'interestedFormations' => ['5bdeb73136da49690e78c510'], 'rgpd' => true, 'cV' => [ 'file' => file_get_contents('/path/to/file.pdf'), 'filename' => 'file.pdf', ]; ]; $contactDto = new AmphiBee\Studizz\Dto\ContactDto($contactData); $newContact = AmphiBee\Studizz\Facades\Contact::create($contactDto);
Get Contact Fields
$fields = AmphiBee\Studizz\Facades\Contact::getFields();
Formations
Get All Formations
$formations = AmphiBee\Studizz\Facades\Formation::getAll();
Campus
Get All Campus
$formation = AmphiBee\Studizz\Facades\Campus::getAll();
Testing
To run the tests for this package, use the following command:
./vendor/bin/pest
Contributing
Please see CONTRIBUTING.md for details.
Security
If you discover any security-related issues, please email security@amphibee.fr instead of using the issue tracker.
Credits
License
The MIT License (MIT). Please see License File for more information.
统计信息
- 总下载量: 1.19k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 1
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2024-07-22