Skip to main content
Matik Help Center home page Help Center
Matik Blog Case Studies
  1. Matik
  2. Building Templates
  3. Matik Overview for Building Templates

Find & Replace (within Dynamic Content, Inputs)

Find & Replace is currently in beta. Contact your Technical Account Manager for access.

Find & Replace allows you to search for a piece of text across your Dynamic Content or Inputs. Identify anywhere the text occurs, and even update it if desired. For example, you could:

  • Find all queries that reference a given database table. Search for production.usage to find all Dynamic Content or Input queries that reference this table.
  • Rename a database table or column. Your data team renames analytics.accounts to warehouse.accounts. Search for analytics.accounts, replace with warehouse.accounts, select all matches, and every affected Dynamic Content is updated in one pass.
  • Swap one Input reference for another. You've consolidated two Inputs and want every Dynamic Content that referenced &:old_region to reference &:region instead. Search for &:old_region, replace with &:region, and replace across all matches.
  • Update a SQL snippet. You're redefining how revenue is calculated and want to swap SUM(amount) for SUM(amount_usd) wherever it appears. Find & Replace finds every Dynamic Content using the old formulation, and you can preview each before applying.

Find & Replace currently supports searching Dynamic Content or Inputs. (It is not currently supported for templates or conditions).

Entering Find & Replace

You can enter the find & replace interface via the search bars.

To search within Dynamic Content, click the Find & Replace icon in the Dynamic Content search bar.

To search within Inputs, click the Find & Replace icon in the Dynamic Content search bar.

You cannot currently search within Dynamic Content and Inputs at the same time.

Finding Matches

In the Find & Replace interface, enter your desired search term. Find & Replace will check for the provided search term within Dynamic Content or Inputs. 

It uses a case-insensitive substring search. The search term has to be at least two characters long. There's no support for regex, wildcards, or whole-word matching — the term is treated literally, so characters like %, _, ., and ( match themselves.

The interface will show you the list of matching Dynamic Content or Inputs. Each row shows the Dynamic Content or Input name, a match count, and — for description and query body matches — a short snippet of context around the first match, with the matched text highlighted.

Clicking a result opens a preview in the right panel. The preview shows the full content with the search term highlighted in yellow. At the bottom of the preview, the Connected Items section lists how many Templates, Inputs, and Dynamic Content reference this item.

Matching Search Terms within Dynamic Content

The search will return all DC that include the search term within:

  • Name
  • Display name
  • Description
  • Query body — the SQL, SOQL, API request, formula, or other query text that defines the Dynamic Content

Static image Dynamic Content is excluded from query body search because its underlying value is binary image data, not text.

Matching Search Terms within Inputs

The search will return all Inputs where the search term appears within:

  • Name
  • Display name
  • Description
  • Default value
  • List values (for list-type Inputs)
  • Query body (for query- and API-based Inputs)

Refining the Search

You can refine what is searched using filters.

  • Select Name to search only within:
    • Name
    • Display Name (Inputs only)
    • Description
  • Select Query String to search only within the actual body of the DC or input. 
    • For Query-based DC, this is the actual SQL/SOQL query
    • For Form-based DC, this includes selections made within the form (such as return field names or filter values)

Examples

  • Searching inside a SQL query body. 
    • Searching table.sometable returns DC with SQL queries that reference that table name.
    • Searching region = returns DC with SQL queries that include this snippet
  • Searching inside a Form-based Dynamic Content
    • Searching for users.email returns DC that have the users.email field selected in Fields to Return
    • Searching for StageName = 'Closed Won' returns DC that use that filter. 
    • Searching for Amount returns Salesforce DC that return the Amount field or filter on it.
    • Searching for Opportunity returns Salesforce DC built on the Opportunity object. 
    • Searching for Look ID or Explore name returns Looker DC built on that Explore. 
  • Searching across an Input reference. Searching for &:region finds every Dynamic Content whose query body references that Input.

Replace a String across Dynamic Content or Inputs

If desired, you can replace a search term across Dynamic Content or Inputs. This makes it easier to manage content within Matik. Starting by typing your replacement text in the Replace with field. You have two ways to apply it:

  • Replace one item: From the right panel preview, click Replace in This Item. The replacement is applied to every matching field on that item — name, description, query body, and so on.
  • Replace in bulk: Use the checkboxes in the left panel to select items, then click Replace. You can also:
    • Select all on this page using the checkbox in the header.

    • Select all matches across all pages using the banner that appears once every item on the current page is selected.

A confirmation dialog shows how many items will be changed before you commit.

For each item, Matik finds your search term in every searched field and replaces it. The updated item is saved as a new version; the previous version is preserved in the item's history. 

Important: Replace is case-sensitive, even though search is case-insensitive. If you search for mytable and the actual text is MyTable, the result will appear, but no replacement will be made. Match the case of the text you want to change exactly.

Best practices

  • Preview before bulk replacing. Click into a few results in the right panel to confirm Matik is matching what you expect, especially when your search term is short or generic. While Matik does retain a version history for Dynamic Content and Inputs, there is no way to restore from previous versions in bulk.
  • Make your search term specific. A short, generic term like id will match almost everything. Add enough context — a table name, a function call, a full Input reference — to narrow results to the items you actually want to change.
  • Check Connected Items first. Make sure you understand the impact of the change you will make before you apply it. 

Limitations

  • Search is case-insensitive but replace is case-sensitive. A hit may produce zero changes if the case doesn't match.
  • No regex or wildcards. The search term is matched literally as a substring.
  • No whole-word matching. A search for arr matches arr, arrival, and narrate.
  • Search terms must be at least two characters.
  • Static image Dynamic Content is excluded from query body search. Its name, display name, and description are still searched.
  • Name character restrictions still apply. Dynamic Content and Input names cannot contain spaces or the characters ., :, |, {, }, (, ), or ,. A replacement that would introduce one of these into a name is rejected for that item.
  • Names must be unique within your enterprise. A replacement that would create a duplicate name is rejected for that item.
  • Replace operates on the current version only. Historical versions of an item are not modified.

Troubleshooting

Error Cause Resolution
Results appear but the replace reports "Replaced in 0 items" Replace is case-sensitive. Your search term matched in a case-insensitive way, but the exact text in the item uses different casing. Re-run the search using the exact casing of the text you want to change.
"Replacement would create invalid name" Your replacement would introduce a space or one of the disallowed characters (. : | { } ( ) ,) into a name field. Choose a replacement that does not include any of those characters in a name. You can still replace text in the description or query body if you exclude the affected items.
"An input already exists with that name" The replacement would create a duplicate Input name within your enterprise. Choose a unique name, or first rename the existing Input that would collide.
"Not authorized to update this entity" You don't have edit permission on the item. Ask the item's owner or an admin to perform the replace, or have them grant you edit access.
A bulk replace finishes with "Replaced in N items. M failed." Some items succeeded but others failed individual validation — typically due to permissions, invalid name characters, or duplicate names. Re-open Find & Replace, narrow to the failed items, and address them individually using the per-item replace.

Was this article helpful?

Have more questions? Submit a request

Related articles

  • Using Salesforce (SFDC) in Dynamic Content

Articles in this section

  • Find & Replace (within Dynamic Content, Inputs)
  • Overview of Building Templates
  • Using Office 365 with Matik

Comments

0 comments

Article is closed for comments.

Personalize data-driven content in minutes

Product

  • How it Works
  • Integrations
  • AI Features
  • Security

Solutions

  • Sales
  • Customer Success
  • Ops & Strategy
  • Data

Resources

  • Blog
  • Templates
  • AI + CS Resource Hub
  • Case Studies
  • Help Center

Company

  • About Us
  • Careers
  • Terms of Service
  • Privacy Policy

© 2024 Matik, Inc.