Skip to content

Configuration reference

Full reference for config/integrations.php. Publish with:

bash
php artisan vendor:publish --tag=integrations-config

General

KeyTypeDefaultDescription
table_prefixstring'integration'Prefix for all database tables
cache_prefixstring'integrations'Prefix for all cache keys

Webhook

KeyTypeDefaultDescription
webhook.prefixstring'integrations'URL prefix: POST /{prefix}/{provider}/webhook
webhook.queuestring'default'Queue for ProcessWebhook jobs
webhook.max_payload_bytesint1048576Reject payloads larger than this (1MB)
webhook.processing_timeoutint1800Seconds before a processing webhook is stale (30 min)
webhook.middlewarearray[]Additional middleware for webhook routes

OAuth

KeyTypeDefaultDescription
oauth.route_prefixstring'integrations'URL prefix for OAuth routes
oauth.middlewarearray['web']Middleware for authorize + revoke routes
oauth.callback_middlewarearray['web']Middleware for callback route
oauth.success_redirectstring'/integrations'Redirect after OAuth completes
oauth.state_ttlint600State token validity in seconds (10 min)
oauth.refresh_lock_ttlint30Cache lock TTL for token refresh
oauth.refresh_lock_waitint15Max wait for refresh lock in seconds

Sync

KeyTypeDefaultDescription
sync.queuestring'default'Default queue for sync jobs
sync.queuesarray[]Per-provider queue overrides (key = provider, value = queue)
sync.lock_ttlint600WithoutOverlapping lock TTL in seconds

Retry

KeyTypeDefaultDescription
retry.retry_after_max_secondsint600Cap Retry-After header values (10 min)

Rate Limiting

KeyTypeDefaultDescription
rate_limiting.max_wait_secondsint10Wait for capacity before throwing (0 = immediate)

Health

KeyTypeDefaultDescription
health.degraded_afterint5Consecutive failures before degraded
health.failing_afterint20Consecutive failures before failing
health.disabled_after?int50Consecutive failures before disabled (null = never)
health.degraded_backoffint2Sync interval multiplier when degraded
health.failing_backoffint10Sync interval multiplier when failing

Pruning

KeyTypeDefaultDescription
pruning.requests_daysint90Retention for integration_requests
pruning.logs_daysint365Retention for integration_logs
pruning.chunk_sizeint1000Rows per delete batch

Providers

php
'providers' => [
    'zendesk' => App\Integrations\ZendeskProvider::class,
    'github'  => App\Integrations\GitHubProvider::class,
],

Keys are provider identifiers (stored in the Integration model's provider column). Values are fully-qualified class names implementing IntegrationProvider. Can also be registered programmatically via Integrations::register().