π Overview
The DomainBlockAppeal model represents appeals for domain unblocking requests. It stores appeal submissions, their status, and associated metadata including screenshots and account information for Google Search Console appeals. Appeals are automatically sent by the system via Playwright scripts, with error tracking for failed submissions.
π Fields
| Field | Type | Description |
|---|---|---|
owner | Foreign Key User Model | Reference to the user who owns the domain for which the appeal was submitted. |
domain | str | The domain name being appealed (max 255 characters). |
created_at | datetime | Timestamp when the appeal was created. |
appeal_text | text | Optional text content of the appeal. |
is_sent | bool | Whether the appeal has been sent. |
is_safe | bool | Whether the domain is marked as safe by Google Search Console. |
account | str | Google account email. |
screenshot | FileField | Screenshot file associated with the appeal. |
error_message | text | Optional error message if automatic appeal submission failed. |
π§© Methods
| Method | Description |
|---|---|
can_send_appeal(domain, owner_id) | Checks if itβs possible to send an appeal according to business rules (classmethod). |
π‘ Business Rules
- Appeal Cooldown: The system cannot send multiple appeals for the same domain within 12 hours if a previous appeal was already sent (
is_sent=True) or the domain is marked as safe (is_safe=True). - File Storage: Screenshots are stored using random filenames in Hetzner storage.
- Error Tracking: Failed automatic appeal submissions are logged in the
error_messagefield.
β Additional Context
For more details on the appeal submission process see the Send Appeals Tasks and Appeal Sender Controller documentation.