You can add fields that are not part of fields API to the custom objects. Perform the following steps to add the fields:
1Edit the Eloqua Bulk connection.
2In the Activities or Custom fields Configuration connection attribute, add the following JSON element to the JSON template available in the connection attribute:
"CustomObjects" :{
"CO_CustomObject1": ["MappedEntityId","UniqueId"],
"CO_CustomObject2": ["MappedEntityId","UniqueId"]
}
where CO_CustomObject1 and CO_CustomObject2 are the names of custom objects and MappedEntityId and UniqueId are the fields.
3Now add the following field details to the JSON template:
These are the details of the fields that you defined in the CustomObjects element added in the previous step.
"CustomItem": [
{
"name": "MappedEntityId",
"internalName": "MappedEntityId",
"dataType": "integer",
"hasReadOnlyConstraint": true,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": true,
"statement": "{{CustomObject[id].MappedEntityId}}"
},
{
"name": "UniqueId",
"internalName": "UniqueId",
"dataType": "integer",
"hasReadOnlyConstraint": true,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": true,
"statement": "{{CustomObject[id].UniqueId}}"
}
]
After adding the above details, confirm that the JSON structure is valid.
4Click Test Connection.
5Click Save.
When you use the connection in a new mapping, the fields that you defined in the JSON template appear in the mapping. For an existing mapping from an earlier release, you must refresh the field mapping and map to the target.
6For an existing mapping, if the above defined fields are required, then refresh the field mapping, and map to the target.
The following example shows a sample Activities or Custom fields configuration:
{
"Activities": {
"EmailOpen": ["ActivityId", "ActivityType", "ActivityDate", "EmailAddress", "ContactId", "IpAddress", "VisitorId", "EmailRecipientId", "AssetType", "AssetName", "AssetId", "SubjectLine", "EmailWebLink", "VisitorExternalId", "CampaignId", "ExternalId", "DeploymentId", "EmailSendType"],
"EmailClickthrough": ["ActivityId", "ActivityType", "ActivityDate", "EmailAddress", "ContactId", "IpAddress", "VisitorId", "EmailRecipientId", "AssetType", "AssetName", "AssetId", "SubjectLine", "EmailWebLink", "EmailClickedThruLink", "VisitorExternalId", "CampaignId", "ExternalId", "DeploymentId", "EmailSendType"],
"EmailSend": ["ActivityId", "ActivityType", "ActivityDate", "EmailAddress", "ContactId", "EmailRecipientId", "AssetType", "AssetId", "AssetName", "SubjectLine", "EmailWebLink", "CampaignId", "ExternalId", "DeploymentId", "EmailSendType"],
"Subscribe": ["ActivityId", "ActivityType", "AssetId", "ActivityDate", "EmailAddress", "EmailRecipientId", "AssetType", "AssetName", "CampaignId", "ExternalId"],
"Unsubscribe": ["ActivityId", "ActivityType", "AssetId", "ActivityDate", "EmailAddress", "EmailRecipientId", "AssetType", "AssetName", "CampaignId", "ExternalId"],
"Bounceback": ["ActivityId", "ActivityType", "AssetId", "ActivityDate", "EmailAddress", "AssetType", "AssetName", "CampaignId", "ExternalId"],
"WebVisit": ["ActivityId", "ActivityType", "ActivityDate", "ContactId", "VisitorId", "VisitorExternalId", "ReferrerUrl", "IpAddress", "NumberOfPages", "FirstPageViewUrl", "Duration", "ExternalId"],
"PageView": ["ActivityId", "ActivityType", "ActivityDate", "ContactId", "CampaignId", "VisitorId", "VisitorExternalId", "WebVisitId", "Url", "ReferrerUrl", "IpAddress", "IsWebTrackingOptedIn", "ExternalId"],
"FormSubmit": ["ActivityId", "ActivityType", "ActivityDate", "ContactId", "VisitorId", "VisitorExternalId", "AssetType", "AssetId", "AssetName", "RawData", "CampaignId", "ExternalId"],
"ExternalActivity": ["ActivityId", "ActivityType", "ActivityDate","EmailAddress","ContactId","CampaignId","ExternalId","ExternalCampaignId","CampaignName","CampaignResponseDate","CampaignResponseMemberStatus","ExternalAssetType","ExternalActivityType","ExternalAssetName"]
},
"ActivityItem": [
{
"name": "ActivityId",
"internalName": "ActivityId",
"dataType": "integer",
"hasReadOnlyConstraint": true,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": true,
"statement": "{{Activity.Id}}"
},
{
"name": "ActivityType",
"internalName": "ActivityType",
"dataType": "string",
"maxLength": 100,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Type}}"
},
{
"name": "ActivityDate",
"internalName": "ActivityDate",
"dataType": "date",
"hasReadOnlyConstraint": true,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.CreatedAt}}"
},
{
"name": "EmailAddress",
"internalName": "EmailAddress",
"dataType": "emailAddress",
"maxLength": 400,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Field(EmailAddress)}}"
},
{
"name": "ContactId",
"internalName": "ContactId",
"dataType": "integer",
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Contact.Id}}"
},
{
"name": "IpAddress",
"internalName": "IpAddress",
"dataType": "string",
"maxLength": 50,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Field(IpAddress)}}"
},
{
"name": "VisitorId",
"internalName": "VisitorId",
"dataType": "integer",
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Visitor.Id}}"
},
{
"name": "EmailRecipientId",
"internalName": "EmailRecipientId",
"dataType": "string",
"maxLength": 38,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Field(EmailRecipientId)}}"
},
{
"name": "AssetType",
"internalName": "AssetType",
"dataType": "string",
"maxLength": 100,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Asset.Type}}"
},
{
"name": "AssetName",
"internalName": "AssetName",
"dataType": "string",
"maxLength": 100,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Asset.Name}}"
},
{
"name": "AssetId",
"internalName": "AssetId",
"dataType": "integer",
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Asset.Id}}"
},
{
"name": "SubjectLine",
"internalName": "SubjectLine",
"dataType": "string",
"maxLength": 500,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Field(SubjectLine)}}"
},
{
"name": "EmailWebLink",
"internalName": "EmailWebLink",
"dataType": "string",
"maxLength": 8192,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Field(EmailWebLink)}}"
},
{
"name": "VisitorExternalId",
"internalName": "VisitorExternalId",
"dataType": "string",
"maxLength": 38,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Visitor.ExternalId}}"
},
{
"name": "CampaignId",
"internalName": "CampaignId",
"dataType": "integer",
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Campaign.Id}}"
},
{
"name": "ExternalId",
"internalName": "ExternalId",
"dataType": "string",
"maxLength": 20,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.ExternalId}}"
},
{
"name": "DeploymentId",
"internalName": "DeploymentId",
"dataType": "integer",
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Field(EmailDeploymentId)}}"
},
{
"name": "EmailSendType",
"internalName": "EmailSendType",
"dataType": "string",
"maxLength": 100,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Field(EmailSendType)}}"
},
{
"name": "EmailClickedThruLink",
"internalName": "EmailClickedThruLink",
"dataType": "string",
"maxLength": 8192,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Field(EmailClickedThruLink)}}"
},
{
"name": "RawData",
"internalName": "RawData",
"dataType": "string",
"maxLength": 64000,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Field(RawData)}}"
},
{
"name": "ReferrerUrl",
"internalName": "ReferrerUrl",
"dataType": "string",
"maxLength": 8192,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Field(ReferrerUrl)}}"
},
{
"name": "WebVisitId",
"internalName": "WebVisitId",
"dataType": "integer",
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Field(WebVisitId)}}"
},
{
"name": "Url",
"internalName": "Url",
"dataType": "string",
"maxLength": 8192,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Field(Url)}}"
},
{
"name": "IsWebTrackingOptedIn",
"internalName": "IsWebTrackingOptedIn",
"dataType": "boolean",
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Field(IsWebTrackingOptedIn)}}"
},
{
"name": "NumberOfPages",
"internalName": "NumberOfPages",
"dataType": "integer",
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Field(NumberOfPages)}}"
},
{
"name": "FirstPageViewUrl",
"internalName": "FirstPageViewUrl",
"dataType": "string",
"maxLength": 8192,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Field(FirstPageViewUrl)}}"
},
{
"name": "Duration",
"internalName": "Duration",
"dataType": "string",
"maxLength": 100,
"hasReadOnlyConstraint": false,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Field(Duration)}}"
},
{
"name": "ExternalCampaignId",
"internalName": "ExternalCampaignId",
"dataType": "string",
"maxLength": 100,
"hasReadOnlyConstraint": true,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Campaign.Field(CRMCampaignId)}}"
},
{
"name": "CampaignName",
"internalName": "CampaignName",
"dataType": "string",
"maxLength": 100,
"hasReadOnlyConstraint": true,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.Campaign.Field(CampaignName)}}"
},
{
"name": "CampaignResponseDate",
"internalName": "CreatedAt",
"dataType": "date",
"hasReadOnlyConstraint": true,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.CampaignResponse.CreatedAt}}"
},
{
"name": "CampaignResponseMemberStatus",
"internalName": "MemberStatus",
"dataType": "string",
"maxLength": 100,
"hasReadOnlyConstraint": true,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.CampaignResponse.Field(MemberStatus)}}"
},
{
"name": "ExternalAssetType",
"internalName": "ExternalAssetType",
"dataType": "string",
"maxLength": 100,
"hasReadOnlyConstraint": true,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.ExternalAssetType}}"
},
{
"name": "ExternalActivityType",
"internalName": "ExternalActivityType",
"dataType": "string",
"maxLength": 100,
"hasReadOnlyConstraint": true,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.ExternalActivityType}}"
},
{
"name": "ExternalAssetName",
"internalName": "ExternalAssetName",
"dataType": "string",
"maxLength": 100,
"hasReadOnlyConstraint": true,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": false,
"statement": "{{Activity.ExternalAssetName}}"
}
],
"ContactItem": [
{
"name": "ContactId",
"internalName": "ContactId",
"dataType": "integer",
"hasReadOnlyConstraint": true,
"hasNotNullConstraint": false,
"hasUniquenessConstraint": true,
"statement": "{{Contact.Id}}"
}
],
"AccountItem": [
]
}