---
title: Personal Data
description: >-
  Personal data management endpoints allow you to retrieve and delete user data
  across all services for GDPR compliance and data privacy requirements.
source_url:
  html: 'https://developers.survicate.com/data-export/personal-data/'
  md: 'https://developers.survicate.com/data-export/personal-data.md'
---
# Personal Data

Personal data management endpoints allow you to retrieve and delete user data across all services for GDPR compliance and data privacy requirements. These endpoints work with email addresses to identify and manage user data.

## Get personal data counters

GET /personal-data

Retrieves the count of personal data associated with a specific email address across all services. This includes local survey data (respondents, responses) and data from connected services (Insights Hub). This endpoint helps assess the scope of data before deletion for GDPR compliance.

### Required parameters

Name: email
Type: string
Description: The email address to search for across all data sources. The search is case-insensitive and handles whitespace.

### Response 200

Successfully retrieved personal data counters from all sources.

#### Response properties

Name: responses
Type: integer
Description: Total number of survey responses associated with this email address.

Name: respondents
Type: integer
Description: Total number of unique respondents records associated with this email address.

Name: insights_hub.authors
Type: integer
Description: Number of author records.

Name: insights_hub.author_attributes
Type: integer
Description: Number of author attribute records.

Name: insights_hub.notes
Type: integer
Description: Number of note records.

Name: insights_hub.notes_attributes
Type: integer
Description: Number of note attribute records.

Name: insights_hub.total
Type: integer
Description: Total number of records in Insights Hub.

```json
{
  "responses": {
    "value": 15,
    "description": "Total number of survey responses associated with this email address."
  },
  "respondents": {
    "value": 3,
    "description": "Total number of unique respondents records associated with this email address."
  },
  "insights_hub": {
    "value": {
      "authors": {
        "value": 2,
        "description": "Number of author records."
      },
      "author_attributes": {
        "value": 3,
        "description": "Number of author attribute records."
      },
      "notes": {
        "value": 1,
        "description": "Number of note records."
      },
      "notes_attributes": {
        "value": 4,
        "description": "Number of note attribute records."
      },
      "total": {
        "value": 10,
        "description": "Total number of records in Insights Hub."
      }
    },
    "description": "Data from Insights Hub service. Contains detailed information about records in the Insights Hub system."
  }
}
```

### Response 400

Invalid email format provided.

### Response 403

Access denied. Check your API credentials and permissions.

### Response 429

Rate limit exceeded. Maximum 100 requests per minute, 5 parallel requests allowed.

---

## Delete personal data by email

DELETE /personal-data

Permanently deletes all personal data associated with the specified email address across all services. This includes survey responses, respondent records, custom attributes, and data in connected services like Insights Hub. This endpoint is designed for GDPR compliance and data deletion requests.

### Required parameters

Name: email
Type: string
Description: The email address for which to delete all associated data. The search is case-insensitive and handles whitespace.

### Response 200

Successfully processed data deletion request. Returns summary of deleted records from each service.

#### Response properties

Name: message
Type: string
Description: Confirmation message about the deletion process completion.

Name: result.deleted_respondents
Type: integer
Description: Number of records deleted from survicate database (responses, respondents, attributes).

Name: result.deleted_insights_hub
Type: integer
Description: Number of records deleted from Insights Hub service.

Name: result.total_deleted
Type: integer
Description: Total number of records deleted across all services.

```json
{
  "message": {
    "value": "Personal data deletion completed",
    "description": "Confirmation message about the deletion process completion."
  },
  "result": {
    "value": {
      "deleted_respondents": {
        "value": 150,
        "description": "Number of records deleted from survicate database (responses, respondents, attributes)."
      },
      "deleted_insights_hub": {
        "value": 2,
        "description": "Number of records deleted from Insights Hub service."
      },
      "total_deleted": {
        "value": 152,
        "description": "Total number of records deleted across all services."
      }
    },
    "description": "Detailed results of the deletion operation across all services."
  }
}
```

### Response 400

Invalid email format provided.

### Response 403

Access denied. Check your API credentials and permissions.

### Response 429

Rate limit exceeded. Maximum 50 requests per minute, 3 parallel requests allowed.

### Response 500

Internal server error during deletion process. Some data may have been partially deleted.

