Hi, I'm Ask INFA!
What would you like to know?
ASK INFAPreview
Please to access Ask INFA.

Table of Contents

Search

  1. Preface
  2. IDMC REST API
  3. REST API resource quick references
  4. Platform REST API version 2 resources
  5. Platform REST API version 3 resources
  6. Data Integration REST API
  7. Cloud Data Integration for PowerCenter (CDI-PC) REST API
  8. Data Ingestion and Replication REST API
  9. Customer Managed REST API
  10. RunAJob utility
  11. ParamSetCli utility
  12. REST API codes

REST API Reference

REST API Reference

Example: Create a Salesforce to Snowflake task

Example: Create a Salesforce to Snowflake task

In this example, you create application ingestion and replication tasks that load Salesforce data to Snowflake using initial, incremental, and combined initial and incremental loads.
The request bodies include only the properties that each task needs. For a complete request body, see Sample request body for creating a task.
For descriptions of all properties, see Source attributes, Target attributes, and Runtime attributes.

Request body

Send each request body in a POST request to the following resource:
POST https://qa-pod1-ing.rel.infaqa.com/dbmi/public/api/v2/task/create

Initial load

The following request body creates an initial load task named sf_to_snowflake_initial. The task uses the Salesforce Bulk API 2.0 to read the Custom_all__c object, splits the data into partitions of 10,000 records with up to five partitions read in parallel, and loads the data to the ADOBE_PB schema in Snowflake one time:
{ "type": "appmi", "general": { "name": "sf_to_snowflake_initial", "description": null, "location": "Default", "runtimeEnvironment": "invyaminirh01.informatica.com", "type": "initial" }, "source": { "connection": "AIN_Salesforce", "salesforceAPI": "bulkv2", "fetchSize": "50000", "salesforceBulkV2Partitioning": "true", "salesforceBulkV2RecordsPerPartition": "10000", "salesforceBulkV2MaxParallelPartitions": "5", "selectionRules": [ { "include": "Custom_all__c" } ] }, "target": { "connection": "Snowflake_pat_sp", "schema": "ADOBE_PB", "stage": "gkn" }, "runtimeOptions": { "executeInTaskflow": "false", "enableAutoTuning": "false" }, "replicationRules": { "source": "SALESFORCE", "target": "ADOBE_PB", "overrides": { "tableRules": [], "fieldRules": [] }, "sourceSet": [ { "schema": "", "include": "Custom_all__c" } ], "columnTransformations": [] } }
The following table describes the properties in the initial load request body:
Property
Description
type
Use appmi to create an application ingestion and replication task.
general.name
Name of the task.
general.location
Project or folder that contains the task.
general.runtimeEnvironment
Runtime environment that runs the task.
general.type
Load type. The value
initial
loads a snapshot of the source data one time.
source.connection
Name of the Salesforce source connection.
source.salesforceAPI
The API that the task uses to read source data. The value
bulkv2
selects the Salesforce Bulk API 2.0.
source.fetchSize
Number of records that the task reads at a time from the source.
source.salesforceBulkV2Partitioning
Partitions the source data when the task reads it with the Bulk API 2.0.
source.salesforceBulkV2RecordsPerPartition
Number of records in each partition.
source.salesforceBulkV2MaxParallelPartitions
Maximum number of partitions that the task reads in parallel.
source.selectionRules
Rules that select the source objects.
target.connection
Name of the Snowflake target connection.
target.schema
Snowflake schema where the task creates the target tables.
target.stage
Name of the internal staging area that holds data before the task writes it to the target tables.
runtimeOptions.executeInTaskflow
Indicates whether a taskflow runs the task.
runtimeOptions.enableAutoTuning
Indicates whether automatic performance tuning is enabled for the task.
replicationRules
Source and target selection rules for the task. The sourceSet list repeats the include rule for the source objects.
A successful request returns HTTP status code 201. The response is similar to the following example:
{ "location": "Default", "taskId": "56", "frsId": "9vnP9IpLx8BlmWL3LYNW8jk", "name": "sf_to_snowflake_initial", "createdBy": "4fxvSaESiMPjf8jIFKsYiY", "documentType": "APPMI_TASK", "parentInfo": [ { "parentId": "7cCn5thwWFLhiZoSosphKL", "parentName": "REG", "parentType": "Space" }, { "parentId": "3uDIOqah80qbMK3cXAceIp", "parentName": "Default", "parentType": "Project" } ] }

Incremental load

The following request body creates an incremental load task named sf_to_snowflake_incremental. The task checks the Period object for changes every five minutes, starting from the restart point 2026-10-12 10:25:56 AM. The task renames the target table to Period_O12C:
{ "type": "appmi", "general": { "name": "sf_to_snowflake_incremental", "description": null, "location": "Default", "runtimeEnvironment": "invyaminirh01.informatica.com", "type": "cdc" }, "source": { "connection": "AIN_Salesforce", "restartPointForIncrementalLoadTimestamp": "2026-10-12 10:25:56 AM", "fetchSize": "2000", "cdcIntervalDays": null, "cdcIntervalHours": null, "cdcIntervalMins": "5", "selectionRules": [ { "include": "Period" } ] }, "target": { "connection": "Snowflake_pat_sp", "schema": "SNOW_PB", "renamingRules": [ { "source": "Period", "target": "Period_O12C" } ], "stage": "gkn", "addLastReplicatedTime": "false", "cycleId": "false", "caseTransformation": "none" }, "runtimeOptions": { "executeInTaskflow": false, "enableAutoTuning": false, "schemaDriftOptions": { "modifyField": "replicate", "dropField": "ignore", "addField": "replicate", "renameField": "ignore" }, "customProperties": {} }, "replicationRules": { "source": "SALESFORCE", "target": "SNOW_PB", "overrides": { "tableRules": [ { "source": "Period", "target": "Period_O12C" } ], "fieldRules": [] }, "sourceSet": [ { "schema": "", "include": "Period" } ], "columnTransformations": [] } }
The following table describes the properties in the combined load request body:
Property
Description
general.type
Load type. The value
cdc
creates an incremental load task. The task replicates only the changes that occur in the source after the restart point.
source.restartPointForIncrementalLoadTimestamp
Date and time from which the task starts to replicate changes from the source.
source.fetchSize
Number of records that the task reads at a time from the source.
source.cdcIntervalDays, cdcIntervalHours, cdcIntervalMins
Interval at which the task checks the source for changes. In the example, the task checks every 5 minutes.
target.renamingRules
Renames the target table. In the example, the task renames the Period source object to Period_O12C.
target.addLastReplicatedTime, cycleId, caseTransformation
Optional target properties. In the example, the task doesn't add the last replicated time or the cycle ID to the target tables, and it doesn't change the case of the target table and column names.
runtimeOptions.schemaDriftOptions
Replicates modified and added fields and ignores dropped and renamed fields.
replicationRules.overrides
Repeats the renaming rule for the replication.
A successful request returns HTTP status code 201. The response is similar to the following example:
{ "location": "Default", "taskId": "759371", "frsId": "6s0Hym672sobmP2s17gME0", "name": "sf_to_snowflake_incremental", "createdBy": "5wHseC9ObJ2cvB6eHikRe3", "documentType": "APPMI_TASK", "parentInfo": [ { "parentId": "7cCn5thwWFLhiZoSosphKL", "parentName": "REG", "parentType": "Space" }, { "parentId": "3uDIOqah80qbMK3cXAceIp", "parentName": "Default", "parentType": "Project" } ] }

Combined load

The following request body creates a combined load task named sf_to_snowflake_combined. The task loads the cli_sf__c object to the cli_sf__c3 table in Snowflake and then checks for changes every five minutes:
{ "type": "appmi", "general": { "name": "sf_to_snowflake_combined", "description": null, "location": "Oracle", "runtimeEnvironment": "invyaminirh01.informatica.com", "type": "combined" }, "source": { "connection": "AIN_Salesforce", "salesforceAPI": "bulkv2", "fetchSize": "50000", "fetchSizeForIncrementalLoad": "2000", "cdcIntervalDays": "0", "cdcIntervalHours": "0", "cdcIntervalMins": "5", "includeArchivedAndDeletedRows": "false", "salesforceBulkV2Partitioning": "true", "salesforceBulkV2RecordsPerPartition": "2000", "salesforceBulkV2MaxParallelPartitions": "5", "selectionRules": [ { "include": "cli_sf__c" }, { "exclude": "Period" } ] }, "target": { "connection": "Snowflake_pat_sp", "schema": "ADOBE_PB", "renamingRules": [ { "source": "cli_sf__c", "target": "cli_sf__c3" } ], "stage": "gkn" }, "runtimeOptions": { "executeInTaskflow": false, "enableAutoTuning": false, "schemaDriftOptions": { "modifyField": "replicate", "dropField": "ignore", "addField": "ignore", "renameField": "replicate" } }, "replicationRules": { "source": "SALESFORCE", "target": "ADOBE_PB", "overrides": { "tableRules": [ { "source": "cli_sf__c", "target": "cli_sf__c3" } ], "fieldRules": [] }, "sourceSet": [ { "schema": "", "include": "cli_sf__c" }, { "schema": "", "exclude": "Period" } ], "columnTransformations": [] } }
The following table describes the properties in the combined load request body:
Property
Description
general.type
Load type. The value
combined
loads a snapshot of the source data and then replicates changes.
source.fetchSizeForIncrementalLoad
Number of records that the task reads at a time from the source during the change replication phase.
source.cdcIntervalDays, cdcIntervalHours, cdcIntervalMins
Interval at which the task checks the source for changes. In the example, the task checks every 5 minutes.
source.includeArchivedAndDeletedRows
Indicates whether the task includes archived and deleted rows.
target.renamingRules
Renames the target table.
runtimeOptions.schemaDriftOptions
Replicates modified and renamed fields and ignores added and dropped fields.
replicationRules.overrides
Repeats the renaming rule for the replication.
A successful request returns HTTP status code 201. The response is similar to the following example:
{ "location": "Default", "taskId": "55", "frsId": "9vnP9IpLx8BlmWL3LYNW8j", "name": "sf_to_snowflake_combined", "createdBy": "4fxvSaESiMPjf8jIFKsYiY", "documentType": "APPMI_TASK", "parentInfo": [ { "parentId": "7cCn5thwWFLhiZoSosphKL", "parentName": "REG", "parentType": "Space" }, { "parentId": "3uDIOqah80qbMK3cXAceIp", "parentName": "Default", "parentType": "Project" } ] }

0 COMMENTS

We’d like to hear from you!