sequenceDiagram
participant Admin as Admin Web
participant API as Widget API
participant DB as DynamoDB
Admin->>API: DELETE /admin/sites/{site_id}<br/>Bearer Token
API->>API: Verify JWT token
API->>DB: Delete item từ sites table<br/>(site_id)
DB-->>API: Success
API->>DB: Query reviews table<br/>(site_id)
DB-->>API: Reviews list
API->>DB: Batch delete reviews<br/>(site_id, review_id)
API->>DB: Query widget_setting table<br/>(GSI: SiteIdIndex, site_id)
DB-->>API: Widgets list
API->>DB: Batch delete widgets<br/>(id, type)
API-->>Admin: Site deleted (204)