Skip to content

Allowed HTML for Articles

To provide the most flexibility possible, when creating or updating an article you can use HTML and CSS to construct the article body. Whilst we allow a wide range of tags, we do not allow all of them. This is to ensure that we can render the article in all of our supported channels. You can find a list of supported tags below.

Over time we may add support for new HTML elements and attributes. This will not constitute a breaking change, we advise any client code to support the full HTML specification when reading article content. Removing element support, or otherwise changing the API in a way that causes previously supported HTML to become unsupported will be considered a breaking change.

Supported HTML

TagWhat does it do?Additional Details
<p>ParagraphAll text must be placed within paragraph tags.
<br>Line breakSupported in-line.
<hr>Horizontal ruleNA
<h1> <h2>HeadingOnly these two header tags are supported. All others will be replaced with <h2>.
<a>LinkAn image can be placed in-between the link tags.
<img>ImageImages will be uploaded to Intercom and we'll use an Intercom link to display these.
If these fail to upload then we'll hard fail and return 400 Bad Request.
<ul> <ol> <li>ListLists must contain at least one non-empty <li> element.

<li> elements can contain plain text, or any other supported HTML tags, except <table>.

If these criteria aren't met, then the article will hard fail and return 400 Bad request.
<table>TableNeeds to have at least one row and one cell.
Can contain any other supported HTML tags, except another <table> within.
If these criteria aren't met then it will hard fail and return 400 Bad request.
<iframe>Videosrc must be for a supported video embed link.
Only works for Youtube, Wistia, Vimeo, Loom, Vidyard or StreamIO.
<pre> <code>Pre-formatted code
<b> <strong>Bold
<i> <em>Italic

Supported CSS

ClassWhat does it do?Where does it work?
intercom-align-centerCenter AlignmentOn tag level: Headers, Paragraphs.On wrapping div: Images, Buttons.
intercom-h2b-buttonButtonOn tag level: Links

Unsupported HTML

TagWhat does it do?What do we do?
<dl>Definition ListHard fail - 400 Bad Request
<ul> or <ol>Nested listsHard fail - 400 Bad Request
<iframe>iFrameUnsupported videoHard fail - 400 Bad Request
<div> <span>Content divisionReplace with <p>
<h3> to <h6>HeadingReplace with <h2>
<form>FormRemove from content
<input> <textarea>InputRemove from content
<script>Javascript ScriptRemove from content
<head> <html> <footer> etc.All other tagsRemove from contentInternals replaced with <p>