Check the full documentation on the Custom AI Workflows page.
| Resource | Link |
|---|---|
| Product Details | SharpAPI.com |
| PHP SDK (non-Laravel) | sharpapi/php-custom-workflow |
| SDK Libraries | GitHub - SharpAPI SDKs |
- PHP >= 8.1
- Laravel 10, 11, 12, or 13
- A SharpAPI account with an API key
composer require sharpapi/laravel-custom-workflowStep 2. Visit SharpAPI to get your API key.
SHARP_API_KEY=your-api-keyphp artisan vendor:publish --tag=sharpapi-custom-workflowThis package provides a Laravel-native wrapper around sharpapi/php-custom-workflow. It adds:
- Service Provider with deferred loading (singleton only created when first used)
- Facade for quick static access
- Dependency Injection support
- Publishable configuration with auto-discovery
use SharpAPI\LaravelCustomWorkflow\Facades\CustomWorkflow;
// Execute a workflow
$statusUrl = CustomWorkflow::executeWorkflow('my-sentiment-analyzer', [
'text' => 'Great product!',
'score' => 4.5,
]);
// Fetch results when ready
$result = CustomWorkflow::fetchResults($statusUrl);
// List your workflows
$workflows = CustomWorkflow::listWorkflows();
// Describe a workflow's schema
$definition = CustomWorkflow::describeWorkflow('my-analyzer');
// Validate + execute in one call
$statusUrl = CustomWorkflow::validateAndExecute('my-analyzer', ['text' => 'hello']);use SharpAPI\CustomWorkflow\CustomWorkflowClient;
class AnalyzeController extends Controller
{
public function analyze(CustomWorkflowClient $client)
{
$statusUrl = $client->executeWorkflow('my-sentiment-analyzer', [
'text' => 'Great product!',
]);
return $client->fetchResults($statusUrl);
}
}After publishing, the config file is at config/sharpapi-custom-workflow.php:
return [
'api_key' => env('SHARP_API_KEY', env('SHARPAPI_API_KEY')),
'base_url' => env('SHARP_API_BASE_URL', env('SHARPAPI_BASE_URL', 'https://sharpapi.com/api/v1')),
];| Env variable | Purpose |
|---|---|
SHARP_API_KEY |
Your API key. SHARPAPI_API_KEY is read as a fallback. |
SHARP_API_BASE_URL |
Optional API base URL override, the same name every other SharpAPI package uses. SHARPAPI_BASE_URL is read as a fallback for older installs. |
A missing API key throws SharpAPI\LaravelCustomWorkflow\Exceptions\ApiKeyIsMissing the first time the client is resolved, not at boot.
This package ships Laravel Boost resources: a short guideline that is always loaded, and an on-demand sharpapi-custom-workflow skill covering the facade, file uploads, queued polling, error handling and testing. Boost 2 or newer is required.
composer require laravel/boost --dev
php artisan boost:install # first time
php artisan boost:update --discover # already using BoostSelect sharpapi/laravel-custom-workflow when Boost asks which packages to include.
Please see CHANGELOG for more information on what has changed recently.
- A2Z WEB LTD
- Dawid Makowski
- Boost your PHP AI capabilities!
The MIT License (MIT). Please see License File for more information.
🚀 For the latest news, tutorials, and case studies, don't forget to follow us on:
