Portal Community

contact/delete

Delete a Contact record from Salesforce. Records are soft-deleted to the Recycle Bin for 15 days.

Destructive Operation: Contact deletion is soft-deleted and remains in the Recycle Bin for 15 days. After that period, it is permanently removed. Consider using a custom IsInactive field or updating the contact's email to a placeholder as a non-destructive alternative for audit scenarios.

When to Use

Configuration

Connection

FieldTypeRequiredDescription
InstanceUrlstringrequiredSalesforce org URL.
AccessTokenstringrequiredValid OAuth2 access token.

Operation Fields

FieldTypeRequiredDescription
ContactIdstringrequired18-character Salesforce Contact ID of the record to delete.

Sample Configuration

{
  "Resource": "contact",
  "Operation": "delete",
  "InstanceUrl": "https://myorg.my.salesforce.com",
  "AccessToken": "{{credentials.salesforce.accessToken}}",
  "ContactId": "{{nodes.FindDuplicateContact.Id}}"
}

Validation Errors

Error CodeCondition
CFG_MISSING_INSTANCEInstanceUrl is missing.
CFG_MISSING_TOKENAccessToken is missing.
VAL_MISSING_FIELDContactId is missing.
UNEXPECTED_ERRORUnexpected exception.

Output

Success Port

FieldTypeDescription
statusstringAlways deleted.
resourcestringAlways contact.
operationstringAlways delete.

Error Port

FieldTypeDescription
errorCodestringMachine-readable error code.
messagestringError description.

Sample Output

{ "status": "deleted", "resource": "contact", "operation": "delete" }

Expression Reference

ExpressionDescription
{{nodes.DeleteContact.status}}Deletion result.
{{nodes.DeleteContact.errorCode}}Error code from error port.

Node Policies & GuardRails

PolicyDetail
Recycle BinDeleted contacts remain recoverable for 15 days.
Prefer deactivationFor contacts you want to suppress but not remove permanently, use a custom field or update their email to a placeholder address.
GDPR complianceConfirm identity verification before processing erasure. Log deletion in your compliance system.
Permission requiredAuthenticated user must have Delete permission on Contact.
Error port wiringAlways wire the error port.

Examples

Remove Duplicate After Merge

{ "ContactId": "{{nodes.DedupeCheck.duplicateContactId}}" }

GDPR Erasure for Contact

// SOQL find: SELECT Id FROM Contact WHERE Email = '{{trigger.subjectEmail}}'
{ "ContactId": "{{nodes.FindContact.records[0].Id}}" }
// Log: write to compliance audit table

Cleanup QA Test Contacts

// GetAll: Query = "LastName = 'QA_TEST_DELETE'"
// Loop: contact/delete each
{ "ContactId": "{{loop.current.Id}}" }