Skip to main content

Testing & Validation

Before moving into production, use Test Mode to validate your Data Broker Compliance setup using the DROP Platform sandbox environment and synthetic data provided by CalPrivacy. Test Mode allows you to validate your DROP configuration, run the matching pipeline, review processing behavior, and optionally test your internal system integrations before using production DROP data.

Prerequisites

Before configuring Test Mode in DataGrail, confirm you have access to the DROP Platform sandbox environment:

  • Log in to your CCPA DROP data broker account
  • Confirm your data broker profile registration is complete
  • Navigate to the Sandbox Environment page and select the consumer deletion list subscription(s) that apply to your organization

Once these steps are complete, you should have your DROP sandbox API key and a synthetic dataset for testing. You'll need both to configure Test Mode below.

Create a Test Broker Registration

In the Data Broker Compliance module in DataGrail, select your company name, then select + Broker Registration.

Selecting Add Broker Registration from the company name dropdown in Data Broker Compliance

  1. In the Create Broker Registration drawer, enter your Broker ID, Legal Name, and Integration Kind.
  2. Select Test mode only. This is required to enable the testing environment for this broker registration.
  3. Select Create.

Creating a test broker registration with Test mode only selected

Once the test broker registration is created, you'll see a new Test Mode tab alongside Settings.

Broker IDs Are Unique Per Registration

The same Broker ID cannot be used across multiple broker registrations in DataGrail. If your Broker ID is already associated with your primary broker registration, temporarily remove it from that registration while completing testing.

Connect Your DROP Sandbox Credentials

To process data in Test Mode, connect the broker registration to the DROP Platform sandbox.

  1. From the test broker registration you just created, go to Settings.
  2. Under DROP Credentials, select Connect.
  3. Enter your DROP sandbox API key. Your Broker ID will already be populated based on the Broker ID entered when you created the registration.
  4. Select Use Sandbox Environment.
  5. Select Connect.

Connecting a broker registration to the DROP sandbox environment

Your test broker registration is now connected to the DROP sandbox environment.

Configure Your DROP List Selections

Select the DROP lists that apply to your organization.

  1. From the test broker registration, go to Settings.
  2. Under DROP List Selections, toggle each applicable identifier ON.
  3. Your selection automatically saves and displays as Subscribed.

Toggling DROP list selections to Subscribed

Why This Matters

Your DROP List Selections tell DataGrail which hashed identifier types to retrieve from DROP and compare against the hashed identifiers provided through your ingestion source.

Connect Your Cloud Storage Bucket

You'll need a cloud storage location containing the synthetic data you want to use for hash-matching tests.

  1. From the test broker registration, go to Settings.
  2. Under Identifier Ingest Source, select Connect New Cloud Storage Bucket.
  3. Select the cloud storage system you'll use. You'll be redirected to that system's integration page — enter the appropriate credentials.
  4. Select Configure Integration. Once complete, you'll be redirected to the Data Broker Compliance Settings page.
  5. From the Cloud Storage Integration dropdown, select the bucket you configured.

Connecting a new cloud storage bucket for the identifier ingest source

Reusing an Existing Bucket

You can use a cloud storage bucket that's already connected for DROP. If needed, use the Folder (optional) field to specify a dedicated folder within that bucket for DataGrail to pull from during testing.

Enable Test Tickets

Once your DROP sandbox credentials and cloud storage connection are configured, go to the Test Mode tab.

  1. Under Run Simulated Dispatch, toggle Show testing tickets in Request Manager / Opt Out ON.

Toggling Show testing tickets in Request Manager / Opt Out on under Run Simulated Dispatch

Enabling this setting allows matched test records to appear as testing tickets in your Data Subject Requests and Opt Out Requests queues.

Run the Test Pipeline

From the Test Mode tab, under Run Real Pipeline, run each action in the following order:

  1. Download from DROP
  2. Run Import from Ingestion Source
  3. Run Matching

Running Download from DROP, Run Import from Ingestion Source, and Run Matching under Run Real Pipeline

These actions run the primary stages of the DROP pipeline using your sandbox configuration and synthetic data.

View test requests in Data Subject Requests

  1. Navigate to Data Subject Requests.
  2. Set the Source queue filter to DROP Platform.
  3. Toggle Show Test Data ON.

Filtering Request Manager by DROP Platform intake source with Show Test Data toggled on

View test requests in Opt Out

  1. Navigate to Opt Out Requests.
  2. Set Source to DROP.
  3. Toggle Show Test Data ON.

Filtering Opt Out requests by DROP source with Show Test Data toggled on

You should then see applicable test requests generated from your matching results.

Test Your Internal System Integrations

If you also want to validate that matched DROP requests can be processed through your internal systems, use Test Mode to perform an end-to-end test of your integrations.

Before running this test:

  1. From the test broker registration, go to Settings.
  2. Connect the internal system(s) you want to test using the API Reference.
  3. Add the applicable synthetic DROP data to the internal system you're testing. The synthetic records must exist in the system so they can be located and processed when DataGrail identifies a match.
  4. Confirm the internal system integration is connected and configured for your Data Broker Compliance workflow.

Connecting a primary transport integration under DROP Integrations settings

Once the synthetic data is available in the connected system and you've run the Test Mode pipeline, matched requests will begin processing through the applicable internal system integration. Review the test requests in Data Subject Requests or Opt Out Requests to confirm requests are progressing through the expected processing steps.

Synthetic Record Not Found

If a synthetic record does not exist in the connected internal system, the integration will not be able to locate the corresponding record during processing.

Review Your Test Results

After running the test pipeline, data will begin populating across the Data Broker Compliance module. From the test broker registration, use the following tabs to validate each stage of the process:

TabWhat It Shows
DROP TrackerHigh-level overview of matching progress and processing status
DROP StatusResults and status of your synthetic data pull from the DROP sandbox
DROP RecordsIndividual hashed records and their current status
Audit LogsRecord of actions performed throughout the DROP lifecycle

Review these areas to confirm that data is being successfully retrieved, imported, matched, and processed as expected. If you're also testing internal system integrations, confirm that matched requests are successfully processing through the expected connected systems.

Once testing is complete and you've validated your configuration and processing behavior, you can proceed with your production Data Broker Compliance setup.

Common Issues

The following covers the most common issues encountered during testing:

Test identifier produces no match

Likely cause: Identifier not yet ingested, or ingested with a different format.

Resolution: Verify the identifier appears in Identifier Status and check for ingest errors.

Dispatch method not receiving the request

Likely cause: Webhook URL misconfigured.

Resolution: Verify configuration in the Quickstart.

Callback not received by DataGrail

Likely cause: Incorrect callback URL, auth token missing or expired.

Resolution: Check the callback_url value in your dispatch payload and verify your bearer token.

Audit log entry missing timestamps

Likely cause: Deletion outcome callback not yet posted.

Resolution: Confirm your system posted the outcome callback; check for errors in your dispatch logs.

 

Need help?
If you have any questions, please reach out to your dedicated Account Manager or contact us at support@datagrail.io.

Disclaimer: The information contained in this message does not constitute as legal advice. We would advise seeking professional counsel before acting on or interpreting any material.