gridwb / laravel-funnelfox
funnelfox.com API for Laravel
1.1.0
2026-02-28 16:50 UTC
Requires
- php: >=8.2
- guzzlehttp/guzzle: ^7.9.0
- illuminate/contracts: ^10.0||^11.0||^12.0
- spatie/laravel-data: ^4.13
- spatie/laravel-package-tools: ^1.16
Requires (Dev)
- larastan/larastan: ^2.9|^3.0
- laravel/pint: ^1.14
- orchestra/testbench: ^8.22|^9.0|^10.0
- pestphp/pest: ^2.0|^3.0
- pestphp/pest-plugin-laravel: ^2.0|^3.0
README
Laravel FunnelFox is a convenient wrapper for interacting with the FunnelFox API in Laravel applications.
Table of Contents
Installation
-
Install the package
composer require gridwb/laravel-funnelfox
-
Publish the configuration file
php artisan vendor:publish --tag="funnelfox-config" -
Add environment variables
FUNNELFOX_API_URL=https://api.funnelfox.io FUNNELFOX_KEY=your-api-key-here FUNNELFOX_WEBHOOK_PATH=webhooks/funnelfox FUNNELFOX_WEBHOOK_SECRET=your-webhook-secret-here
Usage
Profiles Resource
get profile
Retrieves a specific profile.
<?php use Gridwb\LaravelFunnelFox\Facades\FunnelFox; $profileId = '<string>'; $response = FunnelFox::profiles()->getProfile($profileId); echo $response->id; echo $response->createdAt; echo $response->funnelId; echo $response->preview; echo $response->email; // Adapty integration echo $response->integrations->adapty?->entitlement; echo $response->integrations->adapty?->userId; // RevenueCat integration echo $response->integrations->adapty?->entitlement; echo $response->integrations->adapty?->userId;
list profiles
Retrieves a list of profiles.
<?php use Gridwb\LaravelFunnelFox\Facades\FunnelFox; $response = FunnelFox::profiles()->listProfiles([ 'limit' => 20, 'cursor' => '<string>', 'filter' => [ 'email' => '<string>', 'funnel_id' => '<string>', ], ]); foreach ($response->data as $profile) { echo $profile->id; echo $profile->createdAt; echo $profile->preview; echo $profile->email; echo $profile->country; echo $profile->funnelId; } echo $response->pagination->hasMore; echo $response->pagination->total; echo $response->pagination->nextCursor;
Webhooks
FunnelFox can send events to your Laravel application via webhooks. By default, all webhook requests are dispatched to the
Gridwb\LaravelFunnelFox\Jobs\ProcessWebhook::class job, which triggers corresponding Laravel events. You can listen to
these events like any other Laravel event:
<?php use Gridwb\LaravelFunnelFox\Events\OnboardingStarted; use Illuminate\Support\Facades\Event; Event::listen(OnboardingStarted::class, function (OnboardingStarted $event) { $payload = $event->payload; // Access data from FunnelFox payload });
Testing
composer test
Changelog
Please see CHANGELOG for more information on what has changed recently.
License
The MIT License (MIT). Please see License File for more information.