Dynamic Assets

Placeholders and Sources

Here are a few words about the supported formats, file sizes and details about how to use placeholders with the tags from your source file.

Curious about Dynamic Assets? Read more about Creating an Asset and Working with Assets!


In this article


Supported Sources

Dynamic Assets support JSON, XML and RSS sources up to 2.5MB or under

....Is your source file too large?

The server that hosts your file source must accept HEAD requests. You can check if your server accepts them by using a REST & SOAP API testing tool, like this one.

We support the following Content-Type in GET and HEAD requests:

application/json 
application/xml
application/rss+xml
text/xml

When fetching the Dynamic Asset's content from your source/remote server, APSIS One will wait for up to 5 seconds for the server to respond. If the server doesn't respond, APSIS One will cancel the request and display an error message.


Source Filtering

Source files over 2.5MB are not supported, and will need to be reduced before being filtered.

If your source file exceeds 50 items, you can use a filtered version of that feed in APSIS One instead of creating another one. Without source filtering, only the first 50 items will be fetched and displayed in the Dynamic Asset when using Fetch all.

To insert more items, you can add the Asset again.This solution requires that your source has a script that can accept specific parameters in the URL, so that it can return content based on your parameters. For example:

http://myfeed.com/?filter-category=tv&sort-by=newest&max-number=25

Afterwards, you can apply any additional filtering in APSIS One and adjust your Dynamic Asset setup. Read more about working with Assets...


About Placeholders

When creating a Dynamic Asset, you must add placeholders in your Asset so that they're replaced with the data from your source (JSON, XML or RSS, 2.5MB max).

Although you won't be able to see this data when creating the Asset, it will be visible once you add the Asset into the Canvas in an Email draft. Read more about Working with Assets.

Placeholders can only be edited when editing the Asset directly from the Assets tab. Any changes made in the Email draft after adding the Asset will only affect that specific Email activity.

Placeholders must be formatted as: {{placeholder}}

For example: {{title}}, {{description}}, {{imageUrl}}.

The maximum file size for sources is 2.5MB, and the server that hosts your file must accept HEAD requests. The maximum number of items inserted in an Email activity is 50. To insert more items, you can add the Asset again. Filter them either by ID or by number of items.

The text or name of the placeholder depends entirely on your source. If your source file looks something like the one below, the placeholder in your Asset will be replaced with its content when using this Asset in an Email draft.

So, {{title}} will be replaced with the hotel's name, {{description}} with the hotel's description, and {{imageUrl}} will become the Image Element's image URL.

Jump to Placeholders and Tags in XML and RSS below...


Placeholder Types

These are the types of placeholders you can use in your Dynamic Assets:

Type

Examples

Description

Simple

{{name}}
{{imageURL}}

A standard placeholder that points to a specific item in your source file.

Sequence

{{seq:1.name}}
{{seq:2.name}}

{{seq:1.imageURL}}
{{seq:2.imageURL}}

A number of placeholders that result in a sequence of items in your source file. Can point to root items as well as nested items.

About Sequence Placeholders

The first thing to have in mind when working with Sequence placeholders is whether you wish to work with root or nested items.

In Loop Settings you can read more about the available options.

All Sequence placeholders must come with a number that indicates the progression of items in your file (e.g. {{seq:1.name}} and {{seq:2.name}}). It is not necessary that you add as many placeholders as items in your file, as two will suffice. You can limit how many items should be fetched in the Loop settings.


Placeholders as Links

As mentioned above, placeholders can be used anywhere in the Email Canvas, including links.

While in the Element Options or the Inline Text Editor, simply expand the Link type and choose Feed Property.

In the example Asset above, the BOOK NOW Button Element has been set up with {{url}} as a link! So, when this Asset is added into a draft, the placeholder is replaced with the URL from your source.

assets23.jpg


Placeholders and Tags in XML and RSS

If you intend to use XML or RSS source in your Dynamic Asset, like this one:

<items>   
<item>
<title>One</title>
<img src=“http://www.apsis.com/items/one.png”/>
<description header=“One”>Description of One</description>
</item>
<item>
<title>Two</title>
<img src=“http://www.apsis.com/items/two.png” />
<description header=“Two”>Description of Two</description>
</item>
<items>

You must pay special attention at how you use placeholders to target the tags in your source.

To use a tag like the item's title (<title>), simply use {{title}} as a placeholder.

To use a tag with attributes, like the item's image (<img src="(...)" />), you must use {{img.@src}}.

Meaning that, for tags with attributes you must specify the attribute in your placeholder as {{tag.@attributeName}}

However, when it comes to tags with attributes and text, like the item's description (<description header="One">Description of One</description>) you must use {{description.#text}} to target the tag's text (Description of One).

To target the same tag's attribute (header="One"), follow the example above and use {{description.@header}}.


Fetching Source Data at Send Out

When using your Dynamic Asset in an Email draft, you will be asked whether you'd like to fetch the data from your source immediately or if you would like to fetch the data when the email is sent.

Here are some aspects to consider if you choose to fetch at send out...


Any Row Segmentation in the Dynamic Asset will be ignored in Preview and Test.


When fetching content on send-out, Google Analytics settings applied in the Bottom bar will be used in all links in the Asset.


If your email is created and sent with the Email tool:

When you add the Dynamic Asset into your email, the Dynamic Asset will fetch the existing content and create a cache copy. If the email is sent within the next five (5) minutes, the cache copy will be sent.

If any changes are made in the Row Settings, or those five minutes pass, the Dynamic Asset will fetch the latest data for a new cache copy. This also applies if the Email activity is cloned.

If your email is sent through a Marketing Automation flow (Email node):

Your content will be fetched every five (5) minutes. In other words, the Dynamic Asset will update the content of the email every five minutes, and Profiles will receive the version that contains the latest version within those five minutes.

The content will only be updated if there are new Profiles entering the flow; if there aren't any new Profiles in the flow, content will not be fetched until a Profile enters your flow.


Something Wrong?

If we encounter any of the following errors, either at the time of sending or anytime the Dynamic Asset fetches new content:

  • The source file is not found.

  • The source server returns an unexpected error.

  • The source file is too big (over 2.5MB).

  • The source file is in the wrong format (Anything other than JSON, XML or RSS).

  • The source's server takes more than 5 seconds to respond.

The Row containing the Dynamic Asset will be ignored, and the email will be sent without it. The Row will be removed completely from the email.

If you do happen to receive any of the above error messages, try the following:

  • If your source file is XML, ensure that there are no g: tags.

  • If your source file is JSON, ensure that it is a JSON with an array directly in the root.

  • Check if your source file is the correct format and size. To check if this is the case, we suggest you paste your source link into the URL prompt on this website.

  • Check to see if your server accepts HEAD requests (here).

If none of the troubleshooting advice above works, contact APSIS One Support.

Did this answer your question?