---
title: Get Recipient Info Salesforce Transform Data Block
description: The Get Recipient Info Salesforce Transform(GetRecipientInfoSalesforceTransform) Data Block processes and filters contact data retrieved from Salesforce through the Get Recipient Info Salesforce Transform Data Block. It applies dynamic filtering based on input parameters and maps selected Salesforce fields to a…
url: "https://learn.assette.com/docs/get-recipient-info-salesforce-transform-data-block/"
updated: "2025-05-13"
category: Developers / Data Blocks / Data Blocks by Category / System Data Blocks
---

# Get Recipient Info Salesforce Transform Data Block

The Get Recipient Info Salesforce Transform(GetRecipientInfoSalesforceTransform) Data Block processes and filters contact data retrieved from Salesforce through the Get Recipient Info Salesforce Transform Data Block. It applies dynamic filtering based on input parameters and maps selected Salesforce fields to a standardized internal data schema required by Assette content or downstream processes.

This block facilitates the transformation of raw Salesforce contact records into a structured data table that includes personal identifiers, address fields, and communication details. It supports parameter-based filtering by AccountCode, FirstName, LastName, and OrganizationCode, enabling refined data views for customized outputs. This Data Block cannot be edited.

## General Info

| Name | GetRecipientInfoSalesforceTransform |
| --- | --- |
| Block Category | Transform |
| Block Type | Python |
| Output Type | Data Table |
| Public Block | True |
| Editable | False |

## Dependencies

| Data Block | Description |
| --- | --- |
| GetRecipientInfoSalesforce | Retrieves contact information from the Salesforce leveraging Salesforce Object Query Language (SOQL) [[Link](https://learn.assette.com/docs/get-recipient-info-salesforce-data-blocks/)] |

## Input Parameters

This block accepts the following optional input parameters:

| Parameter | Type | Description |
| --- | --- | --- |
| AccountCode | String | One or more Account Numbers to filter by |
| FirstName | String | Contact's first name to match exactly |
| LastName | String | Contact's last name to match exactly |
| Country | String | *(Not currently used)* Contact's country (commented in script) |
| OrganizationCode | String | Alternate match against Account Number |

If no parameters are passed, the block returns all contacts from the source.

## Logic and Transformation Details

1. **Data Source**:
   Reads data using `read("GetRecipientInfoSalesforce", {})`, which pulls records from the Salesforce `Contact` object.
2. **Filtering Logic**:
   - If any of the input parameters are specified, the block filters data accordingly.
   - `AccountCode` and `OrganizationCode` are matched against `Account.AccountNumber`.
   - `FirstName` and `LastName` are checked for exact match.
   - The `Country` parameter is declared but **not currently used** in the filtering logic (commented out).
3. **Field Mapping**:
   Maps Salesforce contact fields into the following internal schema:

| Output Field | Source Field | Description |
| --- | --- | --- |
| RecipientCode | `Id` | Unique identifier from Salesforce |
| Country | `MailingAddress.country` | Country extracted from mailing address |
| Organization | *(static empty)* | Placeholder, not populated |
| OrganizationCode | `Account.AccountNumber` | External identifier from the account |
| AccountCode | `Account.AccountNumber` | Duplicates `OrganizationCode` |
| FirstName | `FirstName` | Contact's first name |
| LastName | `LastName` | Contact's last name |
| MiddleName | *(static empty)* | Placeholder |
| Email | `Email` | Primary email address |
| Suffix | *(static empty)* | Placeholder |
| Designation | `Title` | Contact’s professional title |
| Telephone | `MobilePhone` | Contact’s mobile number |
| EnvelopSalutation | *(static empty)* | Placeholder |
| LetterSalutation | *(static empty)* | Placeholder |
| Title | `Salutation` | Salutation (e.g., Mr., Ms.) |
| Address1 | `MailingAddress.street` | Street component of mailing address |
| Address2 | *(static empty)* | Placeholder |
| City | `MailingAddress.city` | City component of mailing address |
| State | `MailingAddress.state` | State or province |
| Company | *(static empty)* | Placeholder |
| Zip | `MailingAddress.postalCode` | Postal/ZIP code from mailing address |
| Code | `Id` | Duplicate of `RecipientCode` |
| Person | `None` | Placeholder for object reference |
| EmailTO | `Email` | Duplicate of primary email |
