Files
igny8/backend/igny8_core/modules/integration/urls.py

45 lines
1.5 KiB
Python

"""
Integration URLs
Phase 6: Site Integration & Multi-Destination Publishing
"""
from django.urls import path, include
from rest_framework.routers import DefaultRouter
from igny8_core.modules.integration.views import IntegrationViewSet, PublishingSettingsViewSet
from igny8_core.modules.integration.webhooks import (
wordpress_status_webhook,
wordpress_metadata_webhook,
)
from igny8_core.api.unified_settings import UnifiedSiteSettingsViewSet
router = DefaultRouter()
router.register(r'integrations', IntegrationViewSet, basename='integration')
# Create PublishingSettings ViewSet instance
publishing_settings_viewset = PublishingSettingsViewSet.as_view({
'get': 'retrieve',
'put': 'update',
'patch': 'partial_update',
})
# Create Unified Settings ViewSet instance
unified_settings_viewset = UnifiedSiteSettingsViewSet.as_view({
'get': 'retrieve',
'put': 'update',
})
urlpatterns = [
path('', include(router.urls)),
# Site-level publishing settings
path('sites/<int:site_id>/publishing-settings/', publishing_settings_viewset, name='publishing-settings'),
# Unified site settings (AI & Automation consolidated)
path('sites/<int:site_id>/unified-settings/', unified_settings_viewset, name='unified-settings'),
# Webhook endpoints
path('webhooks/wordpress/status/', wordpress_status_webhook, name='wordpress-status-webhook'),
path('webhooks/wordpress/metadata/', wordpress_metadata_webhook, name='wordpress-metadata-webhook'),
]