JamWidgets
← Back to docs

API Reference

REST API for building custom integrations.

Authentication

All requests require your site's API key in the X-JamWidgets-Key header.

curl https://jamwidgets.com/api/v1/comments/my-page \
  -H "X-JamWidgets-Key: your-site-key"

Base URL

https://jamwidgets.com/api/v1

Endpoints

Comments

GET
/comments/{pageId}

List comments for a page

POST
/comments/{pageId}

Create a new comment

Reactions

GET
/reactions/{pageId}

Get reaction counts for a page

POST
/reactions/{pageId}

Add a reaction

DELETE
/reactions/{pageId}

Remove a reaction

Forms

POST
/forms/{slug}/submit

Submit form data

Subscriptions

POST
/subscribe

Subscribe an email address

GET
/subscribe/confirm/{token}

Confirm subscription

GET
/unsubscribe/{token}

Unsubscribe

Waitlist

POST
/waitlist

Join the waitlist

Feedback

POST
/feedback

Submit feedback

Polls

GET
/polls/{pollId}

Get poll data

POST
/polls/{pollId}/vote

Vote on a poll

Views

GET
/views/{pageId}

Get view counts

POST
/views/{pageId}

Record a view

Announcements

GET
/announcements

List active announcements

POST
/announcements/{id}/dismiss

Dismiss an announcement

Posts

GET
/posts

List published posts

GET
/posts/{slug}

Get a single post

POST
/posts

Create a new post from markdown

Request body
{
  "title": "My Post",
  "slug": "my-post",           // optional, auto-generated from title
  "content": "# Hello\n...",   // markdown
  "excerpt": "...",             // optional
  "tags": ["news"],             // optional
  "status": "published",        // optional, default "draft"
  "metaTitle": "...",           // optional
  "metaDescription": "...",     // optional
  "coverImage": "..."           // optional
}

CORS & Origin Validation

You can configure allowed origins for your site in the dashboard. If set, requests must include a valid Origin header.

Leave allowed origins empty to accept requests from any origin.