{
 "openapi": "3.1.0",
 "info": {
  "title": "Fluff API",
  "version": "1.0.0",
  "description": "Fluff scores how much of a text says nothing (filler, buzzwords, throat-clearing, repeats), marks every fluffy line, and hands back the gist: only the lines that say something. Runs in your browser, no account. Public, no API key. Rate limited per client. Made by Clawhard Studio, an AI-powered studio. Support: support@clawhard.com.",
  "contact": {
   "name": "Clawhard Studio",
   "url": "https://clawhard.com",
   "email": "support@clawhard.com"
  }
 },
 "servers": [
  {
   "url": "https://fluff.clawhard.com"
  }
 ],
 "paths": {
  "/api/v1/check": {
   "post": {
    "operationId": "check",
    "summary": "Score how much of a text is fluff",
    "description": "Checks a memo, email, post, report or AI-written draft for fluff: pleasantries and throat-clearing, stock openers (\"in today's fast-paced world\"), padding (\"it's important to note that\"), buzzwords (leverage, synergy, robust), hedges, vague claims and sentences that repeat an earlier one. Returns a 0-100 fluff percentage, a verdict, every flagged sentence with the reason, the most used filler phrases, and the gist (only the lines that say something, with padding phrases trimmed). Rule-based wording check, not a fact check; it never invents text. Returns: {fluff_percent (0-100 or null if empty), verdict, verdict_detail, words, sentences, says, gist, gist_words, cut_words, seconds_saved, counts, top_phrases:[{text,kind,count}], flagged:[{sentence,label,why,phrases}], open_url (only for short texts)}",
    "responses": {
     "200": {
      "description": "Result. Always has \"ok\": true.",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "properties": {
          "ok": {
           "type": "boolean"
          }
         },
         "additionalProperties": true
        }
       }
      }
     },
     "400": {
      "description": "Bad input. {\"ok\":false,\"error\":\"...\"}"
     },
     "429": {
      "description": "Rate limited. Retry after the Retry-After header."
     }
    },
    "requestBody": {
     "required": true,
     "content": {
      "application/json": {
       "schema": {
        "type": "object",
        "properties": {
         "text": {
          "type": "string",
          "description": "The text to check (up to 60,000 characters)."
         }
        },
        "required": [
         "text"
        ]
       }
      }
     }
    }
   }
  },
  "/api/v1/gist": {
   "post": {
    "operationId": "gist",
    "summary": "Cut a text down to the lines that say something",
    "description": "Returns the gist of a text: drops sentences that are pure filler, buzzwords, pleasantries or repeats, and trims padding phrases (\"in order to\" becomes \"to\", \"it's important to note that\" is removed) from the rest. Keeps the author's own words and order, invents nothing. Also returns the fluff percentage and how many words were cut. Returns: {gist, gist_words, words, cut_words, fluff_percent, verdict, open_url}",
    "responses": {
     "200": {
      "description": "Result. Always has \"ok\": true.",
      "content": {
       "application/json": {
        "schema": {
         "type": "object",
         "properties": {
          "ok": {
           "type": "boolean"
          }
         },
         "additionalProperties": true
        }
       }
      }
     },
     "400": {
      "description": "Bad input. {\"ok\":false,\"error\":\"...\"}"
     },
     "429": {
      "description": "Rate limited. Retry after the Retry-After header."
     }
    },
    "requestBody": {
     "required": true,
     "content": {
      "application/json": {
       "schema": {
        "type": "object",
        "properties": {
         "text": {
          "type": "string",
          "description": "The text to cut down (up to 60,000 characters)."
         }
        },
        "required": [
         "text"
        ]
       }
      }
     }
    }
   }
  }
 },
 "externalDocs": {
  "description": "llms.txt",
  "url": "https://fluff.clawhard.com/llms.txt"
 }
}