BusinessSpew 🔥 — API Reference

All endpoints return JSON. No authentication required.

← Back to home

Base URL https://api.leveragedsynergies.com

Status & Discovery

GET /api Service status and available topics

Returns the service name, version, operational status, loaded vocabulary topics, and available route list. Useful for checking whether the vocabulary loaded successfully from S3.

Example response
{
  "name": "Business Spew",
  "version": "1.0.0",
  "status": "running",
  "categories": ["tech"],
  "services": ["/spew", "/api"]
}
GET /health Liveness check

Lightweight health check for load balancers and uptime monitors. Returns 200 ok when vocabulary is loaded, 503 degraded if S3 vocabulary is unavailable.

Example response (healthy)
{ "status": "ok" }
Example response (degraded)
{ "status": "degraded", "reason": "vocabulary not loaded" }

Generation

GET /api/:topic/:sentences?/:paragraphs?/:title? Generate spew for a specific topic

Generates corporate jargon sentences scoped to the named vocabulary topic. All parameters after :topic are optional and positional.

SegmentTypeDefaultDescription
:topicStringVocabulary category (e.g. tech). Returns 404 with available topics if not found.
:sentencesInteger3Sentences per paragraph.
:paragraphsInteger1Number of paragraphs to generate.
:titleStringgeneratedDocument title. Auto-generated from topic vocabulary if omitted.
Examples
GET /api/tech
GET /api/tech/2
GET /api/tech/2/4
GET /api/tech/2/4/My%20Title
Example response
{
  "title": "Stakeholder Maps Initiative",
  "topic": "tech",
  "paragraphs": [
    "We will endeavor to leverage synergy playbooks. ..."
  ]
}
GET /api/:sentences?/:paragraphs?/:title? Generate spew from a random topic

Identical to the topic route above but selects a vocabulary topic at random. All segments are optional.

Examples
GET /api
GET /api/3
GET /api/3/2
POST /spew Generate spew via JSON body

Accepts a JSON body. All fields are optional — omit any to use the default.

FieldTypeDefaultDescription
sentencesInteger3Sentences per paragraph.
paragraphsInteger1Number of paragraphs.
categoryStringrandomVocabulary topic. Falls back to random if omitted or unrecognised.
Example request
POST /spew
Content-Type: application/json

{ "sentences": 2, "paragraphs": 3, "category": "tech" }
Example response
{
  "paragraphs": [
    "We must seize the moment and optimize ROIs. ...",
    "Take the customer's temperature and then you can ...",
    "Success is not a crap-shoot if we leverage ..."
  ]
}

Admin

POST /admin/reload Reload vocabulary from S3

Forces a re-fetch of all vocabulary JSON files from S3 without restarting the process. Returns the refreshed category list on success. ⚠️ Authentication not yet enforced — do not expose publicly.

Example response (success)
{ "status": "ok", "categories": ["tech"] }
Example response (S3 unreachable)
{ "status": "error", "reason": "S3 Error: ..." }