Skip to main content

Projects and Campaigns

Your DNCScrub account is organized into a hierarchy of Projects and Campaigns. This structure allows you to organize your account into meaningful units so you can apply different compliance settings to each one as well as have reporting on each one. For example, you might create separate projects for Customer Service, Lead Generation, or Winbacks. You can also organize projects based on the type of scrub you wish to perform, such as having projects for Full Scrub, Litigator Only, or Wireless Only. Using Projects and Campaigns is optional — if you choose not to use them, all scrubs are processed under the Master Project and Default Campaign.

TLS Requirement

All API calls must be made with TLS 1.2 or above. Requests using older TLS versions will be denied.

Atomic Operations

All operations are atomic by default, meaning that either all parts of a request complete successfully or none of them do. The default behavior can be overridden by passing the parameter ignoreInvalid=1 to the API call.
For example, if you attempt to add multiple phone numbers to your Internal DNC database and one phone number is invalid (e.g., “AAA” instead of a 10-digit number), the entire request will fail and no numbers will be added. This is why it’s important to pass clean, well-structured data to the API.

Best Practices for Atomic Operations

  • Pass clean data to the API. Ensure all phone numbers are exactly 10 digits.
  • Handle error responses appropriately in your code
  • Consider batching requests to isolate potential failures

Phone Number Format

All phone numbers must be:
  • 10 digits (no country code)
  • Numeric only (no dashes, spaces, or special characters)

Response Formats

JSON Output

For the Full Scrub APIs, request JSON by adding output=json to your request:

CSV Output

For legacy reasons CSV is the default output format, or request it explicitly with `output=csv’:

HTTP Methods

If you will process more than 10 phone numbers, you must use HTTP POST instead of HTTP GET. If you don’t know how many phone numbers you will process, use HTTP POST to be safe. we very large batches, consider automating with

Error Handling

Successful requests return HTTP status code 200. Failed requests return 4xx status codes with an error message in the response body. 502 can occur under heavy load and the recommendation is to retry these requests with exponential backoff.