Skip to content

Add GDPR data export/deletion and API rate limiting features - #1

Merged
sagnik11 merged 1 commit into
mainfrom
posthog-code/implement-gdpr-audit-logging-rate-limiting-features
May 3, 2026
Merged

Add GDPR data export/deletion and API rate limiting features#1
sagnik11 merged 1 commit into
mainfrom
posthog-code/implement-gdpr-audit-logging-rate-limiting-features

Conversation

@sagnik11

@sagnik11 sagnik11 commented May 2, 2026

Copy link
Copy Markdown
Member

TL;DR

Implements GDPR compliance features including contact data export and deletion, along with API rate limiting configuration. Users can now export individual contact data or permanently delete contacts with confirmation, and API keys support configurable rate limiting per minute.

What changed?

GDPR Data Export & Deletion

  • Added handleGdprExport() function to download contact data as JSON via /api/internal/contacts/{id}/gdpr-export endpoint
  • Added handleGdprDelete() function to permanently delete contacts and associated data via /api/internal/contacts/{id}/gdpr-delete endpoint with email confirmation requirement
  • Added dropdown menu to each contact row with "Export GDPR data" and "Delete (GDPR)" options
  • Added confirmation dialog for GDPR deletion that requires users to type the contact's email address to confirm
  • Added state management for deletion workflow (gdprDeleteContact, gdprConfirmEmail, gdprDeleting)

UI Updates

  • Imported DropdownMenu components for contact action menus
  • Added actions column to contacts table with three-dot menu button
  • Updated table colSpan values from 4 to 5 to account for new actions column
  • Updated loading and empty state messages to span correct number of columns

API & Configuration

  • Added rateLimitPerMinute field to ApiKey interface for API rate limiting configuration

Created with PostHog Code

… logging

Generated-By: PostHog Code
Task-Id: dfaae77a-b8a7-4d60-a62f-c95e5dd2815d
@sagnik11
sagnik11 merged commit 92e6e5c into main May 3, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant