Choice Voting API

Access our knowledge base articles programmatically through our REST API

Getting Started

Our API allows you to access and display Choice Voting knowledge base articles on your own website or application. All API endpoints are accessible via HTTPS and return data in JSON format.

Base URL

https://choiceacademy.co.uk/api

Features

  • Access to all published articles
  • Filter by category and tags
  • Full-text search capabilities
  • Pagination support
  • CORS enabled for cross-origin requests

Authentication

Currently, our API is publicly accessible for read operations. No authentication is required.

Note:

While no authentication is required now, we recommend registering for an API key to ensure uninterrupted access in the future.

Rate Limiting

To ensure fair usage and maintain service quality, we implement the following rate limits:

Per Minute

100

requests per IP address

Per Hour

1,000

requests per IP address

API Endpoints

List Articles

GET /api/articles

Query Parameters

ParameterTypeDescription
categorystringFilter articles by category name
tagstringFilter articles by tag
limitnumberNumber of articles to return (default: 10)
offsetnumberNumber of articles to skip (default: 0)
searchstringSearch articles by title or content

Get Single Article

GET /api/articles/:slug

URL Parameters

ParameterTypeDescription
slugstringThe article's unique slug

Example Usage

JavaScript

import { ChoiceVotingAPI } from '@choice-voting/api';

const api = new ChoiceVotingAPI('https://choiceacademy.co.uk');

// Get articles
const { articles, pagination } = await api.getArticles({
  category: 'Getting Started',
  limit: 10,
  offset: 0
});

// Search articles
const results = await api.getArticles({
  search: 'voting system'
});

// Get article by slug
const article = await api.getArticle('introduction-to-choice-voting');

cURL

# List articles
curl https://choiceacademy.co.uk/api/articles?category=Getting+Started&limit=10

# Get single article
curl https://choiceacademy.co.uk/api/articles/introduction-to-choice-voting

Support

Need help integrating our API? Have questions about usage? Our support team is here to help.

Contact Support