Reuse content blocks across multiple flows
The content library only available in the Enterprise tier
The content library allows for adding groups, steps, or questions to a central content library as prototypes. Instances of those prototypes can then be inserted into other flows. Changes to the prototype will be automatically reflected in the instances once they are re-deployed.
Oftentimes, an organization's form flows will have many variations that share much of their content.
As an example, a hypothetical veterinary practice might have multiple form flows for new patients depending on the pet's species -- asking, for example, questions about fish tanks if the patient is a fish, but questions about litter boxes for cats -- but those flows might share much of their structure, such as basic information, insurance, mailing address.
This approach becomes hard to scale once the number of permutations grows large, or the differences between flows start becoming larger and larger. Using conditions to choose between two paths is straightforward, but can be much easier to manager content using multiple flows if you have a dozen different branches.
To add a group, step, or question to the content library, right click it, and choose Add to library...
Adding a step to the content library
You will be asked to provide some metadata, to make it easier to find the content later.
At this point, the item will be in the library, and you will see that the source step (the prototype) will have a small In library badge on it. It's possible to update the metadata in the settings sidebar, as well as to view the instances of this library item in other flows. Since we just added this item to the library, there are no instances of it in use yet.
What is included in content library item instances? Content library instances will contain everything that is in the original item, including the text, logic, and all settings associated with the group, step, or question. It is not currently possible to override any settings inside of the item on an instance basis.
Once there is content in the content library, it can be used in other flows.
You will see that the Add button corresponding to the content type will now be a dropdown, and provide a From library... action.
From here, you can search for the content library item you'd like to add:
Most content items will either depend on variables, or set answer variables. When inserting a content library item you will need to decide how to map those inputs and outputs to the rest of the flow, similarly to the mapping that happens in copy and paste.
Once added, the content library item will be shown with a From library badge. It is no longer editable, as its content is defined in the prototype that is referenced in the content library.
Detach can be used to remove the association between this instance and the prototype. After being detached, the content (and any child content, like steps or questions within) will behave exactly like normally-created content will, and will no longer receive updates from the prototype.
To change the mapping of input and output variables, you can press Edit.
The power of the content library comes from the ability to not just share content, but to update it from a single place across many flows.
To update a content library item, first we must go to its prototype.
You can find a prototype for any content library item by:
- 1.Accessing the Content library section from the main page and finding the item in question.
- 2.Clicking View prototype from any content library instance.
Content library items are not immediately updated when the prototype is updated.
To update the instances,
- 1.Once you are complete making changes, you must deploy the flow containing the prototype to production.
- 2.At this point, the instances will indicate which flows have not been redeployed since the prototype was updated.
- 3.You can click through to each of the flows and re-deploy them so that they pick up the latest changes.
- Where should I keep my prototype items?
- We recommend creating a "Shared content" or "Item library" flow that contains your most frequently used items.
- Can I have variants of content library items, or define "settings" for content library items?
- Not directly, but you can take advantage of conditional logic within the content library item to create a "settings"-like behavior.
- When you insert a content library item, they will have to map the input variables -- which can be set as constants.
- Can I nest library items inside of one another?
- We do not support nesting of library items because versioning becomes quite difficult to understand, both from a technical and user perspective.
- Can I bulk re-publish flows using content library items?
- It is not currently possible to bulk re-publish flows, primarily because there may also be other pending changes within those flows unrelated to the updated content library item.