Skip to main content
The content field in Create Post and Update Post accepts HTML. To add a FAQ section, embed the following block anywhere within the HTML body.
contributors and primary_category are required fields when creating or updating a post that contains a FAQ block.

FAQ HTML Structure

<div class="faq-block-html noneditable" itemscope="" itemtype="https://schema.org/FAQPage">
  <h3>FAQ</h3>
  <div class="faq-section">
    <div class="faq-pair-html" itemscope="" itemprop="mainEntity" itemtype="https://schema.org/Question">
      <div class="question-html"><label> Q. </label>
        <div itemprop="name">Question Placeholder</div>
      </div>
      <div class="answer-html" itemscope="" itemprop="acceptedAnswer" itemtype="https://schema.org/Answer"><label> A. </label>
        <div class="noneditable" itemprop="text">Answer Placeholder</div>
      </div>
    </div>
  </div>
</div>
Replace Question Placeholder and Answer Placeholder with your content. Add more faq-pair-html divs inside faq-section for additional Q&A pairs.

Multiple Questions

<div class="faq-block-html noneditable" itemscope="" itemtype="https://schema.org/FAQPage">
  <h3>FAQ</h3>
  <div class="faq-section">

    <div class="faq-pair-html" itemscope="" itemprop="mainEntity" itemtype="https://schema.org/Question">
      <div class="question-html"><label> Q. </label>
        <div itemprop="name">What is Publive?</div>
      </div>
      <div class="answer-html" itemscope="" itemprop="acceptedAnswer" itemtype="https://schema.org/Answer"><label> A. </label>
        <div class="noneditable" itemprop="text">Publive is a headless CMS built for digital publishers.</div>
      </div>
    </div>

    <div class="faq-pair-html" itemscope="" itemprop="mainEntity" itemtype="https://schema.org/Question">
      <div class="question-html"><label> Q. </label>
        <div itemprop="name">How do I authenticate API requests?</div>
      </div>
      <div class="answer-html" itemscope="" itemprop="acceptedAnswer" itemtype="https://schema.org/Answer"><label> A. </label>
        <div class="noneditable" itemprop="text">Pass a Base64-encoded credential in the Authorization header using HTTP Basic Auth.</div>
      </div>
    </div>

  </div>
</div>

Example API Request

curl -X POST \
  'https://cms.thepublive.com/publisher/123/post/' \
  -H 'Authorization: Basic <BASE64_AUTH_TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{
    "title": "Common Questions About Our Service",
    "english_title": "Common Questions About Our Service",
    "type": "Article",
    "status": "Draft",
    "primary_category": 100,
    "contributors": "1",
    "content": "<div class=\"faq-block-html noneditable\" itemscope=\"\" itemtype=\"https://schema.org/FAQPage\"><h3>FAQ</h3><div class=\"faq-section\"><div class=\"faq-pair-html\" itemscope=\"\" itemprop=\"mainEntity\" itemtype=\"https://schema.org/Question\"><div class=\"question-html\"><label> Q. </label><div itemprop=\"name\">What is Publive?</div></div><div class=\"answer-html\" itemscope=\"\" itemprop=\"acceptedAnswer\" itemtype=\"https://schema.org/Answer\"><label> A. </label><div class=\"noneditable\" itemprop=\"text\">Publive is a headless CMS built for digital publishers.</div></div></div></div></div>"
  }'

Schema.org Markup

The FAQ block uses Schema.org FAQPage structured data, which enables rich results in Google Search.
ClassPropertyPurpose
FAQPageMarks the block as a FAQ page
QuestionmainEntityEach Q&A pair
QuestionnameThe question text
AnsweracceptedAnswerThe answer container
AnswertextThe answer text
Last modified on April 21, 2026