24 lines
647 B
PHP
24 lines
647 B
PHP
<?php
|
|
|
|
namespace App\Actions;
|
|
|
|
use App\Models\WebhookEndpoint;
|
|
|
|
class CreateAnonymousEndpointAction
|
|
{
|
|
public function handle(): WebhookEndpoint
|
|
{
|
|
$token = WebhookEndpoint::generateToken();
|
|
|
|
return WebhookEndpoint::create([
|
|
'name' => 'Anonymous test endpoint',
|
|
'token' => $token,
|
|
'token_hash' => WebhookEndpoint::tokenHash($token),
|
|
'is_public' => true,
|
|
'expires_at' => now()->addDays((int) config('webhooks.anonymous_ttl_days', 7)),
|
|
'response_headers' => ['Content-Type' => 'application/json'],
|
|
'response_body' => '{}',
|
|
]);
|
|
}
|
|
}
|