Salesforce Data 360
Authentication: OAuth or server-to-server credentials. See Magic Link for the runtime auth flow, or Application 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_valuecalculated insight and report its status when it completes.
Available Tools
List activation targets (destinations segments are published to) with limit/offset paging. Returns each target’s ID a…
Get one activation target’s configuration by ID. Use list_activation_targets to find target IDs.
Create an activation target. External targets must reference an existing connection: use list_connections to find its…
Update an activation target by ID (PATCH; only given keys change). Changes can affect downstream delivery. Use list_a…
List activations (segment-to-target publications) with limit/offset paging, optionally in one data space. Returns eac…
Get one activation’s full definition by ID. Use list_activations to find activation IDs.
Create an activation that publishes a published segment’s members to an activation target, by name (segmentApiName, a…
Replace an activation’s definition (PUT: full replace, so omitted fields are cleared). Call get_activation first and …
Permanently delete an activation so the segment stops publishing to its target. The segment and target are kept. Use …
List calculated insights (CIs) with limit/offset paging, optionally in one data space. Returns each CI’s apiName and …
Get one calculated insight’s definition: SQL expression, status, schedule, and derived dimensions and measures. Use l…
Create a calculated insight from ANSI SQL over DMOs. api_name must end with __cio, and COUNT(DISTINCT) is not support…
Check a calculated insight’s SQL expression without saving it. Call this before create_calculated_insight or update_c…
Update a calculated insight’s display name, description, SQL expression, or schedule (PATCH; only given fields change…
Permanently delete a calculated insight. Segments and activations that use it will break, so check list_segments firs…
Enable a calculated insight so it refreshes and can be used by segments and activations. Inverse of disable_calculate…
Disable a calculated insight so it stops refreshing; dependent segments and activations may be affected. Inverse of e…
Start a calculation run of a calculated insight now, consuming compute and updating downstream results. Check progres…
Get the current run status of a calculated insight (POST refresh-status; changes nothing). Use after run_calculated_i…
List the connector types in the org’s Data 360 catalog (e.g. SalesforceDotCom, SNOWFLAKE). Call this first to get the…
Get one connector type’s metadata, including the parameter and credential names its connections use. Use list_connect…
List configured connections of one connector type (required; use list_connectors), filterable by dev_name, label, org…
Get one connection by ID. Requires its connector_type. Use list_connections to find connection IDs and list_connector…
List database schemas available through a database connection (e.g. Snowflake), scoped by advanced_attributes such as…
List source objects (tables) available through a connection. Read-only. For database connectors scope with advanced_a…
Describe the fields (columns, types, keys) of one source object in a connection. Read-only. Use list_connections for …
List data action targets (event destinations such as webhooks) with offset pagination. Returns each target’s api_name…
Get one data action target by ID, including its type, status and config. Use list_data_action_targets to find target …
Create a data action target, the destination (e.g. a WebHook endpoint) that data actions send events to. Returns stat…
Update a data action target’s label and/or config. Only the fields you pass change: the tool reads the target and sen…
Permanently delete a data action target. First call delete_data_action for every action using it. Confirm removal wit…
List data actions (event-triggered rules that send DMO changes to data action targets) with offset pagination. Return…
Get one data action by developer name, including its sources, conditions and targets. Use list_data_actions to find d…
Create a data action that sends events when source DMO records change. It must reference an existing target: use list…
Permanently and irreversibly delete a data action by developer name. Delete a data action before the data action targ…
List data model objects (DMOs, API names ending __dlm) with offset paging, filtered by category and data space and so…
Get one DMO’s full schema (fields, category, data space) by its __dlm API name. Use list_data_model_objects to find n…
Create a custom DMO. Pass name WITHOUT the __dlm suffix (the platform appends it; the result’s name ends __dlm). Need…
Update a DMO (PATCH, partial): label, description, or ADD fields (additive; fields cannot be removed this way). Chang…
Permanently delete a DMO. Cascades to dependent objects, including its DMO mappings. Use list_data_model_objects to f…
List data lake objects (DLOs, API names ending __dll) with offset paging, filtered by category and data space. Items …
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 a DLO directly (data streams usually create their DLO automatically; prefer create_data_stream). Needs name (u…
Add fields to a DLO (PATCH). The API does not support relabeling a DLO. Schema changes can affect data streams, mappi…
Permanently delete a DLO and its stored data. Use list_data_lake_objects to find the __dll name. To remove a stream t…
List the org’s data spaces with limit/offset paging. Each item’s name (e.g. ‘default’) is the value every other too…
Get one data space’s details by API name. Use list_data_spaces to find names.
Create a data space (an isolated admin workspace) from a label; the platform derives its API name, returned as name…
Update a data space’s label or description (PATCH; only given fields change). Use list_data_spaces to find the name. …
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 objects (DLO/DMO API names from list_data_lake_objects or list_data_model_objects) to a data space, optional…
Remove up to 10 members from a data space by name. Use list_data_space_members to find member names. The objects them…
Permanently delete a data space and its contents; this cannot be undone. Remove its members first (list_data_space_me…
List data streams (ingestion pipelines into DLOs) with offset paging, filtered by category and data space. Each item’…
Get a data stream’s full configuration (connector, DLO, refresh settings) by name. Use list_data_streams to find names.
Create a data stream and its DLO. Sources: Salesforce CRM (datastream_type SFDC, connectorType SalesforceDotCom), AWS…
Update a data stream (PATCH; only given fields are sent): label, refresh_config, or other keys. Changes apply to futu…
Delete a data stream. should_delete_data_lake_object chooses whether its DLO and data are deleted too. Use list_data_…
Manually trigger ingestion for a data stream. Works for S3, Snowflake, file upload and other non-CRM streams; Salesfo…
List data transforms (batch or streaming DLO-to-DLO transforms) with offset pagination. Definitions are omitted to ke…
Get one data transform by ID or API name, including its full definition and status. Use list_data_transforms to find …
Validate (and enrich) a data transform definition without creating it; reports issues such as TARGET_DLO_NOT_FOUND. C…
Create a data transform from a definition (STL graph or SQL) that writes to a target DLO. Validate first with validat…
Replace a data transform (PUT: a full replace, so send the complete name, label, type and definition; omitted optiona…
Permanently delete a data transform. Its output DLO is not deleted. Use list_data_transforms to find the transform ID.
Run a batch data transform now, rewriting its output DLO; consumes org resources. Use list_data_transforms to find th…
Get a data transform’s run schedule (frequency, interval, time). Use list_data_transforms to find the transform ID; c…
Set (replace) a data transform’s run schedule, e.g. frequency ‘Daily’, interval 1, 03:00 in a time zone. Pass frequen…
List identity resolution rulesets with limit/offset paging, optionally in one data space. Returns each ruleset’s ID, …
Get one identity resolution ruleset with its match rules (priority order) and reconciliation rules. Use list_identity…
Create an identity resolution ruleset that merges source profiles into unified profiles. Match rules run in priority …
Update an identity resolution ruleset (PATCH; only given fields change, but match_rules and reconciliation_rules repl…
Permanently delete an identity resolution ruleset; unified profiles it produced may be affected. Use list_identity_re…
Retry publishing an identity resolution ruleset whose status is Error (rulesets publish automatically on create/updat…
Run an identity resolution ruleset now, consuming compute and updating unified profiles. Use list_identity_resolution…
List DLO-to-DMO object mappings. Requires at least one filter (an unfiltered list can fail): dmo_developer_name (from…
Get one object mapping’s configuration, including its field mappings and their developer names (for delete_field_mapp…
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 pairs to an existing object mapping (PATCH). Call get_dmo_mapping first and add only verified field names. …
Delete an object mapping. Use list_dmo_mappings to find the name. Fails when the DMO is mapped to only one DLO (orpha…
Delete one field mapping from an object mapping. Use get_dmo_mapping to find the field mapping’s developer name. Do n…
Natural-language search over Data 360 metadata (DMOs, DLOs, calculated insights), optionally filtered by metadata_typ…
Describe one DMO, DLO, or calculated insight by API name: fields, primary keys, relationships. Use before query_sql t…
List metadata entities, optionally of one type (DataModelObject, DataLakeObject, CalculatedInsight), in one response…
List profile-enabled DMOs (e.g. ssot__Individual__dlm) with their fields and relationships. Call this first to find t…
Read records from a profile DMO (Individual, Account, or custom) with bracketed filters, a field projection, and limi…
List the org’s data graphs and their schema. Call this first to find the data_graph_name for lookup_data_graph and ge…
Look up data graph records by natural key (lookup_keys), bounded by limit; set live=true for a real-time graph. Use g…
Get one data graph record by its root record ID, with related records (limit/offset); set live=true for real time. Us…
List calculated insights with their dimensions and measures. Call this first to find the ci_name for query_calculated…
Read rows (dimensions and measures) of an existing calculated insight with limit/offset pagination. Use get_insight_m…
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 the status of a query started by query_sql: completion_status, row_count, and chunk_count. Poll until completion_…
Fetch a page of result rows (limit up to 1000, offset) from a query started by query_sql. Use when query_sql reported…
Cancel a running query started by query_sql; its results are discarded. Use the query_id returned by query_sql. The A…
List segments with limit/offset paging, optionally in one data space. Returns each segment’s ID, developer name, and …
Get one segment by record ID or API name, including its type, DMO, schedule, and segmentStatus (check for ACTIVE befo…
Create a segment on a segmentable DMO. Any calculated insights it uses must be ACTIVE: check with list_calculated_ins…
Update a segment’s display name, description, or publish schedule (PATCH). Pass the current segment_type from get_seg…
Permanently delete a segment by its API (developer) name, not its record ID. Irreversible; activations using it stop…
Publish a segment, starting an asynchronous membership calculation. Wait for get_segment to show the segment is no lo…
Deactivate a segment by its API (developer) name, not its record ID, so it stops publishing. Inverse of publish_segme…