Feedlytic API Documentation

1. Authentication

To interact with our APIs, you must include your API key in the Authorization header as a Bearer token. Your API key can be found in your Feedlytic dashboard.

Authorization: Bearer your_api_key

2. Create a New Project

Create a new project to start collecting feedback.

const fetch = require('node-fetch');
  const apiKey = 'your_api_key';
  const url = 'https://feedlytic.ai/api/public/projects';
  const body = JSON.strin3gify({
    name: 'My First Project',
    description: 'Description of the project',
    url: 'https://www.example.com'
  });
  const headers = {
    'Authorization': `Bearer ${apiKey}`,
    'Content-Type': 'application/json'
  };
  fetch(url, { method: 'POST', headers, body })
    .then(response => response.json())
    .then(data => console.log(data))
    .catch(error => console.error(error));

3. Submit Feedback

Submit customer feedback for your project.

Custom Fields

If you have configured custom fields in the Form Builder, you can pass their values in the optional customFields object. Use any string key — field label or your own identifier. Values can be strings, numbers, or arrays of strings (for multi-select / checkbox fields). These values are stored alongside the standard fields, shown in your dashboard table, and included in AI analysis.

const fetch = require('node-fetch');
  const apiKey = 'your_api_key';
  const url = 'https://feedlytic.ai/api/public/feedbacks';
  const body = JSON.stringify({
    projectId: 12345,
    rating: 5,
    message: 'Great experience!',
    userName: 'Jane Doe',
    userEmail: 'jane@example.com',
    // Optional: include values for any custom fields you configured
    // in the Form Builder. Use the field label or field ID as the key.
    customFields: {
      'Work Role': 'Engineer',
      'How did you hear about us': 'Twitter',
      'Feature requests': ['Dark mode', 'Export to CSV']
    }
  });
  const headers = {
    'Authorization': `Bearer ${apiKey}`,
    'Content-Type': 'application/json'
  };
  fetch(url, { method: 'POST', headers, body })
    .then(response => response.json())
    .then(data => console.log(data))
    .catch(error => console.error(error));

4. Get Projects

Retrieve a list of all projects associated with your account.

const fetch = require('node-fetch');
  const apiKey = 'your_api_key';
  const url = 'https://feedlytic.ai/api/public/projects';
  const headers = {
    'Authorization': `Bearer ${apiKey}`,
    'Content-Type': 'application/json'
  };
  fetch(url, { method: 'GET', headers })
    .then(response => response.json())
    .then(data => console.log(data))
    .catch(error => console.error(error));

5. Get Feedbacks

Retrieve feedbacks for a specific project.

const fetch = require('node-fetch');
  const apiKey = 'your_api_key';
  const projectId = '12345';
  const url = `https://feedlytic.ai/api/public/feedbacks?projectId=${projectId}`;
  const headers = {
    'Authorization': `Bearer ${apiKey}`,
    'Content-Type': 'application/json'
  };
  fetch(url, { method: 'GET', headers })
    .then(response => response.json())
    .then(data => console.log(data))
    .catch(error => console.error(error));

6. Get Feedback Result

Retrieve the AI-generated insights from the feedbacks collected for a specific project.

const fetch = require('node-fetch');
  const apiKey = 'your_api_key';
  const projectId = '12345';
  const url = `https://feedlytic.ai/api/public/feedbacks/result?projectId=${projectId}`;
  const headers = {
    'Authorization': `Bearer ${apiKey}`,
    'Content-Type': 'application/json'
  };
  fetch(url, { method: 'GET', headers })
    .then(response => response.json())
    .then(data => console.log(data))
    .catch(error => console.error(error));

Note: Your usage and results may be limited based on your subscription. Please refer to our Terms of Service for more details.