Contents
On this page

Export FAQs - Plugixa FAQ

GET /plugixa-faq/v1/faqs/export

Export FAQs as a JSON or CSV file, returned inside the response.

Any signed-in user with the plugixa_faq_manage capability or WordPress’s edit_posts (Contributors and up, by default).

Note. The export includes drafts, private FAQs and every other status and visibility. Custom field values, images (other than the URL) and vote counts are not exported.

Request

GET https://your-site.example/wp-json/plugixa-faq/v1/faqs/export?format=json&category_id=3

Query parameters

Name Type Default Description
format string json json or csv.
ids string Comma-separated FAQ ids, e.g. 42,43.
category_id integer Only FAQs in this category.

Rows come in manual order, then by id.

Responses

200 OK. data.content is the file, Base64-encoded.

{
  "success": true,
  "message": "",
  "data": {
    "content": "ewogICAgInBsdWdpbiI6ICJwbHVnaXhhLWZhcSIs",
    "filename": "plugixa-faqs-export-2026-11-12.json",
    "mime": "application/json",
    "total": 1
  }
}
Field Type Meaning
data.content string The file, Base64-encoded
data.filename string A suggested file name with today’s UTC date
data.mime string application/json or text/csv
data.total integer FAQs in the file

A CSV export with no matching FAQs answers content: "" and filename: "plugixa-faqs-export.csv", without mime and total. The decoded JSON file looks like this; a CSV file has the same columns, with a UTF-8 byte order mark for Excel:

{
  "plugin": "plugixa-faq",
  "version": "1.0.1",
  "exported_at": "2026-11-12T09:30:00+00:00",
  "total": 1,
  "faqs": [
    {
      "id": 42,
      "question": "How long does shipping take?",
      "answer": "<p>Orders ship within 2 business days.</p>",
      "category_name": "Shipping",
      "image_url": "",
      "status": "published",
      "menu_order": 0,
      "slug": "how-long-does-shipping-take",
      "visibility": "public",
      "author_alias": "",
      "language_code": "",
      "translation_group": "",
      "parent_id": 0
    }
  ]
}

The file is what Import FAQs reads. See Import and export.

Errors

Status Code When
500 rest_error The database query failed.

Plus the errors every endpoint can return.

Examples

curl -s "https://your-site.example/wp-json/plugixa-faq/v1/faqs/export?format=json&category_id=3" \
  -u "admin:$WP_APP_PASSWORD"
<?php
$query = http_build_query([
    'format'      => 'json',
    'category_id' => '3',
]);
$ch = curl_init('https://your-site.example/wp-json/plugixa-faq/v1/faqs/export?' . $query);
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_USERPWD        => 'admin:' . getenv('WP_APP_PASSWORD'),
]);
$response = json_decode(curl_exec($ch), true);
curl_close($ch);
const query = new URLSearchParams({ format: 'json', category_id: '3' });
const response = await fetch(`https://your-site.example/wp-json/plugixa-faq/v1/faqs/export?${query}`, {
  headers: {
    'Authorization': 'Basic ' + btoa(`admin:${process.env.WP_APP_PASSWORD}`),
  },
});
const { data } = await response.json();

Quick Links

Share