Using this integration, you can use TD query jobs to

Learn more about:

Prerequisites

Obtaining the Custom Data Object Name from Oracle Eloqua Console


In your web browser, go to https://login.eloqua.com.
Log in to the Oracle Eloqua Console using the same Company Name, Username, and Password you used when specifying the CSF authentication keys in Oracle JDeveloper and Oracle Enterprise Manager Fusion Middleware Control.

After logging in, select Audience > Custom Objects.


Make note of the custom object name and the field names. 

Optionally, you can navigate to Custom Object Record Reporting and select the desired report:

Use the TD Console to Create a Connection

In Treasure Data, you must create and configure the data connection before running your query. As part of the data connection, you provide authentication to access the integration.

Create a New Authentication

Open TD Console.
Navigate to Integrations Hub Catalog.
Search for Eloqua in the Catalog; hover your mouse over the icon and select Create Authentication.


Type the credentials to authenticate:
ParameterDescription
Authentication MethodBasic (Default)
Site NameURL for the Oracle Eloqua site
UsernameThe username of your Oracle Eloqua account
PasswordThe password for your account


Select Continue.
Enter a name for your authentication, and select Done. 

About Eloqua Query Constraints

The following constraints apply to your queries:

Define your Query

Integration Parameters for Eloqua 


Parameters

Value

Description

DestinationContactThe Eloqua object to export data (contact list or custom object or account)

Custom Object DataThe Eloqua object to export data (contact list or custom object or account)

AccountThe Eloqua object to export data (contact list or custom object or account)
Add a prefix to the identifier
Check if you want to modify the identifier value by adding a prefix value to the identifier column. This option is supported for an identifier column with a data type of string type
Prefixstring valueThis option is supported for an identifier column with a data type of string. The prefix value will be added to identify the column value. 
List/Object name to import

Custom object names can be case-insensitive.

Group account name that can be case insensitive (optional)

The contact list name or object name for the exported data.

The custom object name that you want to export data into.

Group account name for the exported data

Identifier Field Name

For destination Contact

- Contact's email address (c_emailaddress)
- Contact's external ID (c_externalid)
- Contact's ID (c_id)

The field name is used to identify the contact entity.

If you chose a Contact's email address, you must have the  c_emailaddress field in your query with the Contact's external ID as c_externalid field and the Contact's ID as a c_id field.

For destination Custom Object Data or Account

It is one of the field names from your custom object or account data query.

For example, if your query is:

SELECT col_a, col_b, col_c FROM your_table;

then the value should be col_a or col_b or col_c.

The field name is used to identify the custom object or account row. 
Update Rule
  • Always update
  • Update if the new value is not blank
  • Update if the existing value is blank
  • Use the rule defined at the field level
The rule is used when doing updates on existing data. For more information about this parameter, see the Oracle Eloqua Developer Help Center.
Skip invalid records
If checked, Eloqua will return success even if it encounters data row errors. Otherwise, the job will fail if there are invalid records.
Map custom object to contact
If you checked, the job tries to map a custom object to a contact.
Perform case-sensitive search when mapping custom object to contact
Perform a case-sensitive search when mapping a custom object to a contact.
CDO source fieldColumn name of the field Input the column name of the field to be mapped, as used in the export schema. Required when Map custom object to contact is enabled.
Contact map fieldColumn name of the field Input the contact field for mapping. Required when Map custom object to contact is enabled.
Auto Delete DurationintegerThe length of time (in seconds) before the import definition will be automatically deleted, 0 or greater than 3600

Example Query

Your query requires each resource type to have specific columns and exact column names (case sensitive) and data types. 


SELECT col_a, col_b, col_b 
FROM your_table;

 For example, to export a contact, you could use queries similar to these:

SELECT c_emailaddress, c_firstname, c_lastname 
FROM contact;


SELECT identifier_type, identifier
FROM table my_table


Optionally Schedule the Query Export Jobs

You can use Scheduled Jobs with Result Export to periodically write the output result to a target destination that you specify.

Optionally Configure Export Results in Workflow



Example Workflow for Exporting Contacts

The identifier_field_name accepts the following values:

The update_rule accepts the following values:

_export:
  td:
    database: eloqua_db

+eloqua_custom_object_export_task:
  td>: export_contact.sql
  database: ${td.database}
  result_connection: new_created_eloqua_auth
  result_settings:
    type: eloqua
    target: contact
    identifier_field_name: C_EmailAddress
    list_name: td_shared_list2
    update_rule: always     
    skip_invalid_records: true     
    auto_delete_duration: 3600

Example Workflow for Exporting Custom Object

The custom_object_identifier_field is one of the fields named in the export_custom_object.sql query.

The update_rule accepts the following values:

You can get custom_object_name from the Oracle Eloqua Console.

_export:
  td:
    database: eloqua_db
 
+eloqua_custom_object_export_task:
  td>: export_custom_object.sql
  database: ${td.database}
  result_connection: new_created_eloqua_auth
  result_settings:
    type: eloqua
    target: custom_object
    custom_object_identifier_field: {xxxxx}
    list_name: {custom_object_name}
    update_rule: always
    skip_invalid_records: true
    map_custom_object_to_contact: true,
    perform_case_sensitive_search: false,
    cdo_source_field: Email_Address,
    contact_map_field: C_EmailAddress
    auto_delete_duration: 0


Example Workflow for Exporting Account

The account_identifier_field is one of the fields named in the export_account.sql query.

The update_rule accepts the following values:

You can get the group_account_name from the Oracle Eloqua Console.

_export:
  td:
    database: eloqua_db
 
+eloqua_account_export_task:
  td>: export_account.sql
  database: ${td.database}
  result_connection: new_created_eloqua_auth
  result_settings:
    type: eloqua
    target: account     
    account_identifier_field: {xxxxx}
    list_name: {group_account_name}
    custom_identifier: true
    prefix_identifier: prefix_value
    update_rule: always
    skip_invalid_records: true
    auto_delete_duration: 0