Documentation
¶
Overview ¶
Package evidence builds the per-profile evidence report (every removal request and reply, deadlines, the supervisory authority) shared by `eraser export` and the web UI's export download.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RenderHTML ¶
func RenderHTML(report EvidenceReport) ([]byte, error)
RenderHTML renders the printable report.
Types ¶
type BrokerEvidence ¶
type BrokerEvidence struct {
BrokerID string `json:"broker_id"`
BrokerName string `json:"broker_name"`
BrokerEmail string `json:"broker_email,omitempty"`
BrokerWebsite string `json:"broker_website,omitempty"`
PipelineStatus string `json:"pipeline_status,omitempty"`
PastDeadline bool `json:"past_deadline"`
DeadlineDate *time.Time `json:"deadline_date,omitempty"`
Requests []RequestEvidence `json:"requests"`
Responses []ResponseEvidence `json:"responses"`
}
type DataSubject ¶
type DataSubject struct {
FullName string `json:"full_name"`
Email string `json:"email"`
DateOfBirth string `json:"date_of_birth,omitempty"`
Phone string `json:"phone,omitempty"`
Address string `json:"address,omitempty"`
NameVariants []string `json:"name_variants,omitempty"`
AdditionalEmails []string `json:"additional_emails,omitempty"`
AdditionalPhones []string `json:"additional_phones,omitempty"`
PreviousAddresses []string `json:"previous_addresses,omitempty"`
}
type EvidenceReport ¶
type EvidenceReport struct {
GeneratedAt time.Time `json:"generated_at"`
ProfileID string `json:"profile_id"`
Subject DataSubject `json:"data_subject"`
Brokers []BrokerEvidence `json:"brokers"`
Summary EvidenceSummary `json:"summary"`
// Authority is the supervisory authority for the data subject's country,
// when it could be resolved - the place to lodge an Art. 77 complaint.
Authority *dpa.Authority `json:"supervisory_authority,omitempty"`
}
type EvidenceSummary ¶
type RequestEvidence ¶
type RequestEvidence struct {
SentAt time.Time `json:"sent_at"`
Recipient string `json:"recipient"`
Template string `json:"template"`
LegalBasis string `json:"legal_basis"`
MessageID string `json:"message_id,omitempty"`
Status string `json:"status"`
Manual bool `json:"sent_manually"`
Error string `json:"error,omitempty"`
RenderedSubject string `json:"reconstructed_subject,omitempty"`
RenderedBody string `json:"reconstructed_body,omitempty"`
}
type ResponseEvidence ¶
type ResponseEvidence struct {
ReceivedAt time.Time `json:"received_at"`
Type string `json:"type"`
From string `json:"from,omitempty"`
Subject string `json:"subject,omitempty"`
Confidence float64 `json:"confidence"`
Body string `json:"body,omitempty"`
FormURL string `json:"form_url,omitempty"`
ConfirmURL string `json:"confirm_url,omitempty"`
NeedsReview bool `json:"needs_review"`
}
Click to show internal directories.
Click to hide internal directories.