> This page is for Workforce.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.merge.dev/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.merge.dev/_mcp/server.

# Salesforce Data 360

**Authentication:** OAuth or server-to-server credentials. See [Magic Link](/merge-agent-handler/features/magic-link) for the runtime auth flow, or [Application credentials](/merge-agent-handler/admin-setup/add-oauth-credentials) to bring your own OAuth app.

## Sample use cases

* List every calculated insight that is currently disabled and when each last ran.
* Show the fields on the Individual data model object and which data streams feed it.
* Run the `customer_lifetime_value` calculated insight and report its status when it completes.

## Available Tools

#### list_activation_targets

List activation targets (destinations segments are published to) with limit/offset paging. Returns each target's ID a...

#### get_activation_target

Get one activation target's configuration by ID. Use list_activation_targets to find target IDs.

#### create_activation_target

Create an activation target. External targets must reference an existing connection: use list_connections to find its...

#### update_activation_target

Update an activation target by ID (PATCH; only given keys change). Changes can affect downstream delivery. Use list_a...

#### list_activations

List activations (segment-to-target publications) with limit/offset paging, optionally in one data space. Returns eac...

#### get_activation

Get one activation's full definition by ID. Use list_activations to find activation IDs.

#### create_activation

Create an activation that publishes a published segment's members to an activation target, by name (segmentApiName, a...

#### update_activation

Replace an activation's definition (PUT: full replace, so omitted fields are cleared). Call get_activation first and ...

#### delete_activation

Permanently delete an activation so the segment stops publishing to its target. The segment and target are kept. Use ...

#### list_calculated_insights

List calculated insights (CIs) with limit/offset paging, optionally in one data space. Returns each CI's apiName and ...

#### get_calculated_insight

Get one calculated insight's definition: SQL expression, status, schedule, and derived dimensions and measures. Use l...

#### create_calculated_insight

Create a calculated insight from ANSI SQL over DMOs. api_name must end with \_\_cio, and COUNT(DISTINCT) is not support...

#### validate_calculated_insight

Check a calculated insight's SQL expression without saving it. Call this before create_calculated_insight or update_c...

#### update_calculated_insight

Update a calculated insight's display name, description, SQL expression, or schedule (PATCH; only given fields change...

#### delete_calculated_insight

Permanently delete a calculated insight. Segments and activations that use it will break, so check list_segments firs...

#### enable_calculated_insight

Enable a calculated insight so it refreshes and can be used by segments and activations. Inverse of disable_calculate...

#### disable_calculated_insight

Disable a calculated insight so it stops refreshing; dependent segments and activations may be affected. Inverse of e...

#### run_calculated_insight

Start a calculation run of a calculated insight now, consuming compute and updating downstream results. Check progres...

#### get_calculated_insight_status

Get the current run status of a calculated insight (POST refresh-status; changes nothing). Use after run_calculated_i...

#### list_connectors

List the connector types in the org's Data 360 catalog (e.g. SalesforceDotCom, SNOWFLAKE). Call this first to get the...

#### get_connector

Get one connector type's metadata, including the parameter and credential names its connections use. Use list_connect...

#### list_connections

List configured connections of one connector type (required; use list_connectors), filterable by dev_name, label, org...

#### get_connection

Get one connection by ID. Requires its connector_type. Use list_connections to find connection IDs and list_connector...

#### list_connection_schemas

List database schemas available through a database connection (e.g. Snowflake), scoped by advanced_attributes such as...

#### list_connection_objects

List source objects (tables) available through a connection. Read-only. For database connectors scope with advanced_a...

#### get_connection_object_fields

Describe the fields (columns, types, keys) of one source object in a connection. Read-only. Use list_connections for ...

#### list_data_action_targets

List data action targets (event destinations such as webhooks) with offset pagination. Returns each target's api_name...

#### get_data_action_target

Get one data action target by ID, including its type, status and config. Use list_data_action_targets to find target ...

#### create_data_action_target

Create a data action target, the destination (e.g. a WebHook endpoint) that data actions send events to. Returns stat...

#### update_data_action_target

Update a data action target's label and/or config. Only the fields you pass change: the tool reads the target and sen...

#### delete_data_action_target

Permanently delete a data action target. First call delete_data_action for every action using it. Confirm removal wit...

#### list_data_actions

List data actions (event-triggered rules that send DMO changes to data action targets) with offset pagination. Return...

#### get_data_action

Get one data action by developer name, including its sources, conditions and targets. Use list_data_actions to find d...

#### create_data_action

Create a data action that sends events when source DMO records change. It must reference an existing target: use list...

#### delete_data_action

Permanently and irreversibly delete a data action by developer name. Delete a data action before the data action targ...

#### list_data_model_objects

List data model objects (DMOs, API names ending \_\_dlm) with offset paging, filtered by category and data space and so...

#### get_data_model_object

Get one DMO's full schema (fields, category, data space) by its \_\_dlm API name. Use list_data_model_objects to find n...

#### create_data_model_object

Create a custom DMO. Pass name WITHOUT the \_\_dlm suffix (the platform appends it; the result's name ends \_\_dlm). Need...

#### update_data_model_object

Update a DMO (PATCH, partial): label, description, or ADD fields (additive; fields cannot be removed this way). Chang...

#### delete_data_model_object

Permanently delete a DMO. Cascades to dependent objects, including its DMO mappings. Use list_data_model_objects to f...

#### list_data_lake_objects

List data lake objects (DLOs, API names ending \_\_dll) with offset paging, filtered by category and data space. Items ...

#### get_data_lake_object

Get one DLO's fields and metadata by its \_\_dll API name. Use list_data_lake_objects to find names. Use this before cr...

#### create_data_lake_object

Create a DLO directly (data streams usually create their DLO automatically; prefer create_data_stream). Needs name (u...

#### update_data_lake_object

Add fields to a DLO (PATCH). The API does not support relabeling a DLO. Schema changes can affect data streams, mappi...

#### delete_data_lake_object

Permanently delete a DLO and its stored data. Use list_data_lake_objects to find the \_\_dll name. To remove a stream t...

#### list_data_spaces

List the org's data spaces with limit/offset paging. Each item's `name` (e.g. 'default') is the value every other too...

#### get_data_space

Get one data space's details by API name. Use list_data_spaces to find names.

#### create_data_space

Create a data space (an isolated admin workspace) from a label; the platform derives its API name, returned as `name`...

#### update_data_space

Update a data space's label or description (PATCH; only given fields change). Use list_data_spaces to find the name. ...

#### list_data_space_members

List the data objects that belong to a data space, with their row filters. Use list_data_spaces to find the data spac...

#### add_data_space_members

Add data objects (DLO/DMO API names from list_data_lake_objects or list_data_model_objects) to a data space, optional...

#### remove_data_space_members

Remove up to 10 members from a data space by name. Use list_data_space_members to find member names. The objects them...

#### delete_data_space

Permanently delete a data space and its contents; this cannot be undone. Remove its members first (list_data_space_me...

#### list_data_streams

List data streams (ingestion pipelines into DLOs) with offset paging, filtered by category and data space. Each item'...

#### get_data_stream

Get a data stream's full configuration (connector, DLO, refresh settings) by name. Use list_data_streams to find names.

#### create_data_stream

Create a data stream and its DLO. Sources: Salesforce CRM (datastream_type SFDC, connectorType SalesforceDotCom), AWS...

#### update_data_stream

Update a data stream (PATCH; only given fields are sent): label, refresh_config, or other keys. Changes apply to futu...

#### delete_data_stream

Delete a data stream. should_delete_data_lake_object chooses whether its DLO and data are deleted too. Use list_data\_...

#### run_data_stream

Manually trigger ingestion for a data stream. Works for S3, Snowflake, file upload and other non-CRM streams; Salesfo...

#### list_data_transforms

List data transforms (batch or streaming DLO-to-DLO transforms) with offset pagination. Definitions are omitted to ke...

#### get_data_transform

Get one data transform by ID or API name, including its full definition and status. Use list_data_transforms to find ...

#### validate_data_transform

Validate (and enrich) a data transform definition without creating it; reports issues such as TARGET_DLO_NOT_FOUND. C...

#### create_data_transform

Create a data transform from a definition (STL graph or SQL) that writes to a target DLO. Validate first with validat...

#### update_data_transform

Replace a data transform (PUT: a full replace, so send the complete name, label, type and definition; omitted optiona...

#### delete_data_transform

Permanently delete a data transform. Its output DLO is not deleted. Use list_data_transforms to find the transform ID.

#### run_data_transform

Run a batch data transform now, rewriting its output DLO; consumes org resources. Use list_data_transforms to find th...

#### get_data_transform_schedule

Get a data transform's run schedule (frequency, interval, time). Use list_data_transforms to find the transform ID; c...

#### set_data_transform_schedule

Set (replace) a data transform's run schedule, e.g. frequency 'Daily', interval 1, 03:00 in a time zone. Pass frequen...

#### list_identity_resolutions

List identity resolution rulesets with limit/offset paging, optionally in one data space. Returns each ruleset's ID, ...

#### get_identity_resolution

Get one identity resolution ruleset with its match rules (priority order) and reconciliation rules. Use list_identity...

#### create_identity_resolution

Create an identity resolution ruleset that merges source profiles into unified profiles. Match rules run in priority ...

#### update_identity_resolution

Update an identity resolution ruleset (PATCH; only given fields change, but match_rules and reconciliation_rules repl...

#### delete_identity_resolution

Permanently delete an identity resolution ruleset; unified profiles it produced may be affected. Use list_identity_re...

#### publish_identity_resolution

Retry publishing an identity resolution ruleset whose status is Error (rulesets publish automatically on create/updat...

#### run_identity_resolution

Run an identity resolution ruleset now, consuming compute and updating unified profiles. Use list_identity_resolution...

#### list_dmo_mappings

List DLO-to-DMO object mappings. Requires at least one filter (an unfiltered list can fail): dmo_developer_name (from...

#### get_dmo_mapping

Get one object mapping's configuration, including its field mappings and their developer names (for delete_field_mapp...

#### create_dmo_mapping

Map a DLO to a DMO with field pairs. Call get_data_lake_object and get_data_model_object first for exact field API na...

#### add_field_mappings

Add field pairs to an existing object mapping (PATCH). Call get_dmo_mapping first and add only verified field names. ...

#### delete_dmo_mapping

Delete an object mapping. Use list_dmo_mappings to find the name. Fails when the DMO is mapped to only one DLO (orpha...

#### delete_field_mapping

Delete one field mapping from an object mapping. Use get_dmo_mapping to find the field mapping's developer name. Do n...

#### search_metadata

Natural-language search over Data 360 metadata (DMOs, DLOs, calculated insights), optionally filtered by metadata_typ...

#### get_metadata

Describe one DMO, DLO, or calculated insight by API name: fields, primary keys, relationships. Use before query_sql t...

#### list_metadata_entities

List metadata entities, optionally of one type (DataModelObject, DataLakeObject, CalculatedInsight), in one response....

#### get_profile_metadata

List profile-enabled DMOs (e.g. ssot\_\_Individual\_\_dlm) with their fields and relationships. Call this first to find t...

#### query_profile

Read records from a profile DMO (Individual, Account, or custom) with bracketed filters, a field projection, and limi...

#### get_data_graph_metadata

List the org's data graphs and their schema. Call this first to find the data_graph_name for lookup_data_graph and ge...

#### lookup_data_graph

Look up data graph records by natural key (lookup_keys), bounded by limit; set live=true for a real-time graph. Use g...

#### get_data_graph_record

Get one data graph record by its root record ID, with related records (limit/offset); set live=true for real time. Us...

#### get_insight_metadata

List calculated insights with their dimensions and measures. Call this first to find the ci_name for query_calculated...

#### query_calculated_insight

Read rows (dimensions and measures) of an existing calculated insight with limit/offset pagination. Use get_insight_m...

#### query_sql

Run a Data 360 SQL SELECT query (not SOQL) and return up to row_limit rows inline. For SELECT queries only. If done i...

#### get_query_status

Get the status of a query started by query_sql: completion_status, row_count, and chunk_count. Poll until completion\_...

#### get_query_rows

Fetch a page of result rows (limit up to 1000, offset) from a query started by query_sql. Use when query_sql reported...

#### cancel_query

Cancel a running query started by query_sql; its results are discarded. Use the query_id returned by query_sql. The A...

#### list_segments

List segments with limit/offset paging, optionally in one data space. Returns each segment's ID, developer name, and ...

#### get_segment

Get one segment by record ID or API name, including its type, DMO, schedule, and segmentStatus (check for ACTIVE befo...

#### create_segment

Create a segment on a segmentable DMO. Any calculated insights it uses must be ACTIVE: check with list_calculated_ins...

#### update_segment

Update a segment's display name, description, or publish schedule (PATCH). Pass the current segment_type from get_seg...

#### delete_segment

Permanently delete a segment by its API (developer) name, not its record ID. Irreversible; activations using it stop....

#### publish_segment

Publish a segment, starting an asynchronous membership calculation. Wait for get_segment to show the segment is no lo...

#### deactivate_segment

Deactivate a segment by its API (developer) name, not its record ID, so it stops publishing. Inverse of publish_segme...