PHP code example of echointel / laravel-sdk
1. Go to this page and download the library: Download echointel/laravel-sdk library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
echointel / laravel-sdk example snippets
use EchoIntel\Facades\EchoIntel;
// Health check
$health = EchoIntel::health();
// Forecast revenue
$result = EchoIntel::forecastRevenue([
'forecast_period' => 12,
'data' => [
['date' => '2024-01-01', 'revenue' => 10000],
['date' => '2024-02-01', 'revenue' => 12000],
],
]);
// Customer segmentation
$segments = EchoIntel::customerSegmentation([
'data' => $customerRecords,
'max_clusters' => 5,
]);
use EchoIntel\EchoIntelClient;
class ForecastController extends Controller
{
public function __construct(
private EchoIntelClient $echointel
) {}
public function revenue(Request $request)
{
$result = $this->echointel->forecastRevenue([
'forecast_period' => $request->period,
'data' => $request->data,
]);
return response()->json($result);
}
}
$result = echointel()->forecastRevenue($data);
use EchoIntel\RouteResolver;
// Wildcard: all non-admin routes
RouteResolver::resolve(['*']);
// Entire category
RouteResolver::resolve(['forecasting']);
// Specific endpoint
RouteResolver::resolve(['forecasting.revenue', 'customer.segmentation']);
// List available categories
RouteResolver::categories();
// ['system', 'forecasting', 'inventory', 'customer', ...]
// List endpoints in a category
RouteResolver::endpoints('forecasting');
// ['revenue', 'cost', 'cost_improved', 'units', 'cost_totus']
use EchoIntel\Facades\EchoIntel;
use EchoIntel\Exceptions\EchoIntelException;
use EchoIntel\Exceptions\EchoIntelValidationException;
use EchoIntel\Exceptions\EchoIntelAuthenticationException;
try {
$result = EchoIntel::forecastRevenue($data);
} catch (EchoIntelValidationException $e) {
// HTTP 422
$errors = $e->getErrors();
} catch (EchoIntelAuthenticationException $e) {
// HTTP 401 / 403
$message = $e->getMessage();
} catch (EchoIntelException $e) {
// Other API errors
$statusCode = $e->getStatusCode();
$message = $e->getMessage();
}
return [
// Sandbox mode (default: true)
// Set to false for production
'sandbox' => filter_var(env('ECHOINTEL_SANDBOX', true), FILTER_VALIDATE_BOOLEAN),
// Production URL
'api_url' => env('ECHOINTEL_API_URL', 'https://ai.echosistema.live'),
// Sandbox URL
'sandbox_api_url' => env('ECHOINTEL_SANDBOX_API_URL', 'https://ai.echosistema.dev'),
// Credentials
'customer_api_id' => env('ECHOINTEL_CUSTOMER_API_ID'),
'secret' => env('ECHOINTEL_SECRET'),
'admin_secret' => env('ECHOINTEL_ADMIN_SECRET'),
// Request timeout (seconds)
'timeout' => env('ECHOINTEL_TIMEOUT', 30),
// Retry on failure
'retry' => [
'attempts' => 3,
'delay' => 100, // milliseconds
],
];
bash
php artisan vendor:publish --tag=echointel-config