GDPR Compliance for Lovable Applications
RuleMesh provides a REST API that classifies 118 GDPR requirements for the Lovable stack (React + Supabase on AWS). Fetch requirements, implement them, then verify for a badge.
https://api.rulemesh.comAll endpoints below are relative to this base URL. Authenticate with the X-Api-Key header using your RuleMesh API key.
What you get
Each of the 118 GDPR IT requirements is classified by what you can do about it on the Lovable stack:
94
Implement
Code changes in React / Supabase
15
Configure
Dashboard settings (RLS, MFA, regions)
2
Verify
Confirm platform handles it
7
N/A
Organisational / governance
boltQuick Start
Get your API key
Sign up at rulemesh.com/get-started and go to API Keys in your dashboard. Your key starts with rm_.
Fetch your GDPR requirements
Call the compliance profile endpoint to get all 118 requirements classified for Lovable:
Returns 7 bundles with requirements grouped by action type. Filter with ?action=implement or ?bundle=lawful-basis-consent.
Verify and get your badge
After implementing requirements, submit the IDs to get a coverage score and embeddable badge:
-H "X-Api-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"platform": "lovable", "site_url": "https://yourapp.com", "implemented_ids": ["itreq-..."]}'
If coverage is ≥ 50% of actionable requirements, you receive a badge_url and verification_url in the response.
Agent Prompt for Lovable
Paste this into Lovable chat. It includes explicit endpoint URLs so the agent doesn't guess wrong paths.
Replace <KEY> with your API key and <my-app-url> with your app's URL.
I want to make my app GDPR compliant.
Use the RuleMesh API (https://api.rulemesh.com) to get the requirements
and fix what you can. My API key is <KEY>.
Step 1: Get the GDPR requirements for Lovable apps:
GET https://api.rulemesh.com/api/v1/compliance/profile/lovable
Header: X-Api-Key: <KEY>
Step 2: Go through each requirement and check my app:
- If something is missing, fix it. For example:
- No cookie consent banner → add one
- No privacy policy page → create one
- No data export option → implement it
- Missing RLS policies → configure them
- If it's something you can't fix in code (like appointing a DPO
or signing a legal agreement), skip it.
Step 3: Report what you implemented:
POST https://api.rulemesh.com/api/v1/compliance/verify
Header: X-Api-Key: <KEY>
Content-Type: application/json
Body: {
"platform": "lovable",
"site_url": "<my-app-url>",
"implemented_ids": [<IDs of requirements you implemented or confirmed>]
}
Step 4: Show me the badge URL and coverage score from the response.The GDPR Engineered Badge
When your application meets the coverage threshold (≥ 50% of actionable requirements), RuleMesh issues an embeddable SVG badge. The badge reads “GDPR Engineered” — not “GDPR Compliant” or “GDPR Certified”.
- check_circleEmbeddable SVG served from https://api.rulemesh.com/api/v1/badge/{code}.svg
- check_circlePublic verification page at https://api.rulemesh.com/api/v1/compliance/verify/{code}
- check_circleValid for 90 days from issuance
- check_circleColour scales with coverage: green (≥ 80%), light green (≥ 50%), grey (unverified)
Embed snippet
<a href="https://rulemesh.com"><img src="https://api.rulemesh.com/api/v1/badge/{code}.svg" alt="GDPR Engineered" /></a>API Reference
/api/v1/compliance/profile/lovablehttps://api.rulemesh.com/api/v1/compliance/profile/lovableReturns 7 bundles with 118 requirements classified into implement / configure / verify / not_applicable.
Auth: X-Api-Key header
Query params: ?bundle=lawful-basis-consent ?action=implement ?include_controls=false
Responses: 200, 400 (invalid filter), 401 (missing key), 403 (wrong scope), 404 (unknown platform)
/api/v1/compliance/verifyhttps://api.rulemesh.com/api/v1/compliance/verifySubmit implemented requirement IDs + site URL. Returns coverage ratio and badge if ≥ 50%.
Auth: X-Api-Key header
Request body:
{
"platform": "lovable",
"site_url": "https://myapp.lovable.app",
"implemented_ids": ["itreq-32016R0679-art-7-para-7_1-req-1", ...]
}Example response (200):
{
"coverage": 0.75,
"matched": 82,
"total_actionable": 109,
"badge_eligible": true,
"badge_id": "a1b2c3d4e5f6",
"badge_url": "/api/v1/badge/a1b2c3d4e5f6.svg",
"verification_url": "/api/v1/compliance/verify/a1b2c3d4e5f6",
"missing_ids": ["itreq-32016R0679-art-32-para-32_1-a-req-1"]
}Coverage: matched / (implement + configure requirements) = 109 actionable total. Badge threshold: ≥ 50%.
/api/v1/badge/{code}.svghttps://api.rulemesh.com/api/v1/badge/{code}.svgPublic embeddable SVG badge. No authentication required.
Responses: 200 (image/svg+xml), 404 (badge not found). Cache-Control: public, max-age=3600.
/api/v1/compliance/verify/{code}https://api.rulemesh.com/api/v1/compliance/verify/{code}Public verification page data. No authentication required.
Example response (200):
{
"badge_id": "a1b2c3d4e5f6",
"platform": "lovable",
"site_url": "https://myapp.lovable.app",
"coverage": 0.75,
"verified": true,
"created_at": "2026-03-27T12:00:00Z",
"expires_at": "2026-06-25T12:00:00Z"
}Bundle Reference
Use the ?bundle= parameter to filter the profile response to a single bundle.
| Slug | Bundle | Reqs |
|---|---|---|
lawful-basis-consent | Lawful Basis & Consent Engineering | 11 |
data-subject-rights | Data Subject Rights Operations | 15 |
access-control-security | Access Control & Security Measures | 19 |
breach-notification | Breach & Change Notification Pipeline | 16 |
controller-governance | Controller Governance & Accountability | 32 |
international-transfers | International Transfer Governance | 16 |
codes-certifications-bcr | Codes, Certifications & BCR Compliance | 9 |
Create an account, get your API key, and start classifying your GDPR requirements.