touchestate-sdk/php-sdk
Official PHP SDK for TouchEstate. Provides client classes and helpers to integrate TouchEstate services into Laravel or any PHP app, with straightforward API calls, authentication support, and reusable components for building real estate workflows.
Properties, Tenants, Payments), it can be incrementally adopted without monolithic refactoring.Events or Broadcasting systems (e.g., Pusher/Laravel Echo).config/cache for API credentials/secrets.Auth or Sanctum could manage token refreshes or scopes if the SDK lacks built-in support.App\Exceptions\Handler.failed_jobs table monitoring.ThrottleRequests) interact with it?trans()) integrate?config/app.php for easy configuration.config/touchestate.php.tenant::created).config/cache to store API credentials and avoid hardcoding.// Before
$response = Http::post('https://api.touchestate.com/properties', $data);
// After
$property = app(TouchEstate::class)->properties()->create($data);
POST /touchestate/webhook).HasApiTokens for secure endpoint validation.touchestate_id foreign keys.laravel/framework version constraints in composer.json to avoid conflicts.curl, json, mbstring) are enabled in the Laravel environment.php artisan queue:work) are running.Cache::remember) for rate-limited API responses.composer require touchestate-sdk/php-sdk.php artisan vendor:publish --provider="TouchEstate\Provider"..env with API credentials (e.g., TOUCHESTATE_API_KEY).$this->app->singleton(TouchEstate::class, function ($app) {
return new TouchEstate(config('touchestate.key'));
});
Model::saved() events).Http::fake()).laravel-debugbar to monitor SDK performance.composer why-not to assess risks before upgrading.config/touchestate.php to avoid hardcoded values across the codebase.Log facade to track API calls, errors, and performance:
Log::debug('TouchEstate API call', ['endpoint' => $endpoint, 'data' => $data]);
dd() or dump() for SDK responses. Use tap() to inspect objects:
$property->tap(fn($p) => Log::debug('Property data', $p->toArray()));
App\Exceptions\Handler:
try {
$tenant = $touchEstate->tenants()->find($id);
} catch (TouchEstateException $e) {
throw new \App\Exceptions\TenantNotFoundException($e);
}
queue:delay for payment processing").How can I help you explore Laravel packages today?