Skip to main content
POST
Add batch DNC entries

Overview

Bulk import multiple LinkedIn URLs to your team’s Do Not Contact (DNC) list in a single operation. This endpoint efficiently processes large lists of opt-outs, providing detailed reports on successes, duplicates, and errors.

Use Cases

  • CSV Import: Bulk import DNC lists from CSV files or spreadsheets
  • CRM Sync: Synchronize opt-outs from external CRM systems
  • Compliance Migration: Import historical opt-out lists from legacy systems
  • Mass Opt-Outs: Process multiple opt-out requests simultaneously
  • System Integration: Batch sync DNC entries from other platforms

Key Features

  • Bulk Processing: Add hundreds of URLs in a single request
  • Duplicate Handling: Automatically skips existing entries without errors
  • Error Resilience: Continues processing even if individual URLs fail
  • Detailed Reporting: Returns comprehensive stats (added, duplicates, errors)
  • Automatic Normalization: All URLs standardized before storage
  • Rate Limited: 10 requests per minute for bulk operations
  • Team Isolation: All entries scoped to your team

Testing Example

Request Body

Required Fields

Entry Object Structure

Example Request Body

Response Format

Success Response (201 Created)

Error Responses

400 Bad Request - Missing Entries Array

400 Bad Request - Empty Entries Array

400 Bad Request - Invalid Entry Format

429 Too Many Requests - Rate Limit Exceeded

401 Unauthorized - Invalid API Key

500 Internal Server Error

Response Fields

Summary Statistics

Details Array

Each entry in the details array contains:

Bulk Processing Behavior

Error Handling

  • Resilient Processing: Continues processing even if individual entries fail
  • Duplicate Skipping: Existing URLs marked as duplicate, not errors
  • Individual Errors: Each error tracked separately in details array
  • Partial Success: Returns 201 even if some entries fail

Processing Order

  1. Validate Request: Check entries array format
  2. Loop Through Entries: Process each URL sequentially
  3. Normalize URL: Standardize LinkedIn URL format
  4. Check Duplicate: Query existing DNC entries
  5. Add or Skip: Insert new entry or mark as duplicate
  6. Track Stats: Update counters for added/duplicates/errors
  7. Invalidate Cache: Clear team cache after all processing

Rate Limiting

  • Limit: 10 requests per minute per team
  • Window: Rolling 60-second window
  • Reason: Bulk operations require more resources
  • Exceeded: Returns 429 status with resetTime timestamp

Rate Limit Best Practices

  1. Batch Size: Process 100-500 URLs per request for optimal performance
  2. Wait Between Batches: Add 6+ second delay between bulk requests
  3. Handle 429: Implement exponential backoff with resetTime
  4. Queue System: Use a queue for very large imports (1000+ URLs)

Integration Examples

CSV Import

CRM Synchronization

Migration from Legacy System

Webhook Batch Processing

Export and Re-Import

Best Practices

  1. Batch Size: Use 100-500 URLs per request for optimal performance
  2. Rate Limiting: Wait 6+ seconds between batch requests
  3. Error Handling: Review details array for failed entries
  4. Validation: Pre-validate URLs before sending to API
  5. Progress Tracking: Log batch results for large imports
  6. Duplicate Handling: Expect duplicates, don’t treat as errors
  7. Retry Logic: Retry failed batches with exponential backoff
  8. Audit Trail: Log all bulk operations with timestamps

URL Format Support

The endpoint accepts various LinkedIn URL formats per entry:
  • https://linkedin.com/in/username
  • https://www.linkedin.com/in/username/
  • linkedin.com/in/username
  • in/username
All formats are automatically normalized to: https://linkedin.com/in/username

Performance Considerations

  • Sequential Processing: Entries processed one at a time within batch
  • Duplicate Check: Each URL checked against database (indexed query)
  • Cache Invalidation: Team cache cleared once after all processing
  • Typical Speed: ~10-20 entries per second
  • Large Batches: 500 URLs typically processes in 25-50 seconds

Status Codes

Compliance Considerations

GDPR

  • Batch Processing: Process bulk opt-out requests within 24-48 hours
  • Audit Trail: Maintain logs of all bulk imports
  • Data Source: Document source of bulk DNC entries
  • Verification: Verify consent withdrawal before bulk import

CAN-SPAM

  • Opt-Out Lists: Accept and process bulk unsubscribe lists
  • Third-Party Lists: Honor opt-outs from third-party sources
  • Suppression Lists: Maintain and respect suppression lists
  • Processing Time: Process within 10 business days

Common Use Cases

Daily CRM Sync

Large-Scale Migration

Next Steps

After bulk importing DNC entries:
  1. Verify Import: Use List DNC to review entries
  2. Check Specific URLs: Use Check DNC to validate
  3. Review Errors: Investigate and retry failed entries
  4. Monitor Campaigns: Ensure affected contacts are paused
  5. Audit Compliance: Document import for compliance records

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
entries
object[]
required
Minimum array length: 1

Response

Bulk import completed

error
null
data
object
message
string
Example:

"Bulk import completed: 3 added, 1 duplicates, 0 errors"

Last modified on November 18, 2025