Skip to content

Handle user rights

Privacy regulations give users the right to raise complaints, designate representatives, and contact the responsible party for data processing. truConsent provides dedicated endpoints for each of these workflows: a grievance ticketing system for rights requests, a nominee registry for designating authorized representatives, and a DPO information endpoint for surfacing your organization’s Data Protection Officer details.

All endpoints in this guide require the X-API-Key header.


Grievance tickets

Users can submit data rights requests or complaints as grievance tickets. Each ticket is assigned a human-readable ID (for example, GRV-ABC12345) and starts in open status.

Create a ticket

Terminal window
curl -X POST https://api.truConsent.io/grievance \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"client_user_id": "user_123",
"subject": "Request to delete my data",
"description": "I would like all personal data associated with my account to be deleted under DPDP Article 13.",
"category": "erasure",
"attachment_url": null
}'
FieldTypeRequiredDescription
client_user_idstringYesYour application’s user ID for the person raising the ticket
subjectstringYesShort summary of the request
descriptionstringYesFull details of the request or complaint
categorystringYesCategory of the rights request (for example, erasure, access, correction)
attachment_urlstringNoURL to any supporting document
{
"id": "9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d",
"ticket_id": "GRV-ABC12345",
"client_user_id": "user_123",
"subject": "Request to delete my data",
"description": "I would like all personal data associated with my account to be deleted under DPDP Article 13.",
"category": "erasure",
"status": "open",
"attachment_url": null,
"created_at": "2026-04-21T10:30:00",
"updated_at": "2026-04-21T10:30:00"
}

List a user’s tickets

Terminal window
curl https://api.truConsent.io/grievance/user/user_123 \
-H "X-API-Key: YOUR_API_KEY"

Returns an array of ticket objects for the given user, ordered by creation date descending.

Update a ticket

Use this endpoint to change the ticket status or add an attachment after the initial submission.

Terminal window
curl -X PUT https://api.truConsent.io/grievance/GRV-ABC12345 \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"status": "resolved",
"attachment_url": "https://cdn.example.com/response-letter.pdf"
}'

Both status and attachment_url are optional — include only the fields you want to change.


Nominees

A nominee is a person authorized to act on a user’s data rights on their behalf. Users can register nominees, update their details, and remove them at any time.

Register a nominee

Terminal window
curl -X POST https://api.truConsent.io/nominee \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"user_id": "user_123",
"nominee_name": "Jane Doe",
"nominee_email": "jane.doe@example.com",
"nominee_mobile": "+919876543210",
"relationship": "spouse",
"purpose_of_appointment": "To exercise data rights on my behalf in case of incapacitation"
}'
FieldTypeRequiredDescription
user_idstringYesThe user registering the nominee
nominee_namestringYesFull name of the nominee
nominee_emailstringYesEmail address of the nominee
nominee_mobilestringYesMobile number of the nominee
relationshipstringYesRelationship of the nominee to the user
purpose_of_appointmentstringNoWhy this person is being designated

New nominees start with status: "pending".

List a user’s nominees

Terminal window
curl https://api.truConsent.io/nominee/user/user_123 \
-H "X-API-Key: YOUR_API_KEY"

Returns an array of nominee objects for the given user.

Update a nominee

Terminal window
curl -X PUT https://api.truConsent.io/nominee/2c624232-cdd9-4b86-8e4b-ceecc17d69a4 \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"nominee_email": "jane.newemail@example.com",
"status": "active"
}'

You can update any combination of: nominee_name, nominee_email, nominee_mobile, relationship, purpose_of_appointment, and status.

Remove a nominee

Terminal window
curl -X DELETE https://api.truConsent.io/nominee/2c624232-cdd9-4b86-8e4b-ceecc17d69a4 \
-H "X-API-Key: YOUR_API_KEY"
{ "message": "Nominee deleted successfully" }

Data Protection Officer

Retrieve the DPO information configured for your organization. Display this to users who need to know who is responsible for their data, as required by many privacy regulations.

Terminal window
curl https://api.truConsent.io/dpo \
-H "X-API-Key: YOUR_API_KEY"
{
"id": "1a2b3c4d-0000-0000-0000-000000000001",
"full_name": "Alex Singh",
"email": "dpo@acmecorp.com",
"appointment_date": null,
"qualifications": null,
"responsibilities": null,
"created_at": "2026-01-15T09:00:00",
"updated_at": "2026-04-01T12:00:00"
}