# Report a Problem

The admin panel sends a report — a bug, an idea or a question — straight to the WHost team at WISECP. **Report a problem** sits at the right of the page footer, beside the version, and the command palette (`Ctrl+K`) offers the same action under its quick actions (search "feedback", "bug" or "report"). Both appear only while the server can send: the licence is active or in its grace period, the whitelabel brand is off, and WISECP accepts reports from this installation. The agent asks wisecp.com about the last point once a day, together with its update check, and again when its answer is more than a day old; wisecp.com matches the licence key to a service bound to the server's IPv4 address. The client panel (resellers and hosting customers) has no report window.

The window asks for:

- **Type** — Bug, Idea or Question.
- **Description** — 20 to 5,000 characters; **Send report** stays disabled outside that range.
- **Screenshot** (optional) — **Take a screenshot** asks the browser to share a screen, a window or a tab (the window steps aside while the picture is taken; a shared tab gets its address, without the query part, drawn above it), or **Upload an image** loads a PNG, JPEG, GIF or WebP from disk. **Mark up** adds up to 20 marks — arrow, frame, pixelate — that are burned into the picture that is sent; pixelate hides what is under it. The picture travels as a PNG of at most 3 MB (a JPEG when the PNG would be larger).
- **Files** (optional) — up to 5 files, 10 MB each and 16 MB together: 7z, csv, gif, gz, jpeg, jpg, json, log, mov, mp4, pdf, png, rar, sql, tar, tgz, txt, webm, webp, zip. The agent checks each file's content against its extension and refuses an image above 24 megapixels.
- **Links** (optional) — up to 5 full `http(s)` addresses without a user name or password, for example a screen recording.
- **Error records** — on by default: the agent's own ERROR and CRITICAL records of the last 72 hours from `agent.log` (the rotated files included), grouped by fingerprint, at most 10. Account names, domain names, the server's host name, e-mail and IP addresses, home paths and anything that looks like a credential or the licence key are masked before the list is shown; **Leave out** drops a record from this report. The agent reads the chosen records from its log again when it sends, so a record cannot be altered in the browser.

**What is sent** (the window says it before you send): the page address without its query part, the panel and server versions (PHP versions, operating system, web server), the browser, this tab's last script and network errors, and only the files, links and error records added here. Your admin user name and e-mail address go with the report so that WISECP can answer you. Passwords, account data and `agent.conf` are never collected. The agent sends the report to the receiver in `product_feedback.receiver_url` (default `https://wisecp.com`, see Configuration) with the licence key as the installation's identity; each sent report writes a `product_feedback_sent` audit row (reference, type and counts — not the text or the files), listed on the Audit Logs page under the Settings filter.

After sending, the window shows the report's reference (`#FB-…`, with a copy button) and offers **Send another**. When WISECP refuses, the window says why: feedback is not open for this server (`FEEDBACK_DISABLED`), WISECP does not recognise this server's licence (`FEEDBACK_NOT_RECOGNISED`), too many reports in a short time (`FEEDBACK_TOO_MANY`), a size, file-type or link limit (`FEEDBACK_TOO_LARGE`, `FEEDBACK_ATTACHMENT_REJECTED`, `FEEDBACK_LINK_REJECTED`), the report or its text was refused (`FEEDBACK_REJECTED`, `FEEDBACK_SPAM`), WISECP's service could not be reached (`FEEDBACK_UNAVAILABLE`), or it refused for a reason this version does not know (`FEEDBACK_FAILED`, the reason is in `details.reason`).

**Endpoints used:** `GET /feedback/status`, `GET /feedback/error-logs`, `POST /feedback` (admin session only; an HMAC key or a client session is refused with `401`).

---
