{
 "openapi": "3.1.0",
 "info": {
  "title": "Slop Score API",
  "version": "1.0.0",
  "description": "Slop Score checks a website against 19 design habits that make a page look AI-made, scores it from 0 to 100, shows what to fix, and makes a card you can share. 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://slopscore.clawhard.com"
  }
 ],
 "paths": {
  "/api/v1/check": {
   "get": {
    "operationId": "check",
    "summary": "Score a website for AI-made design habits",
    "description": "Fetches a public web page and its main stylesheets and scripts once, then scores it from 0 (hand-made feel) to 100 (certified slop) against 19 design and copy habits that make a site look AI-made (purple gradients, gradient headlines, glow blobs, glassmorphism, default fonts, untouched component kits, icon card grids, buzzwords, template headlines, vague social proof, placeholder testimonials, app-builder leftovers, em dashes and more). Returns each tell found with how to fix it. Returns: {url, score, verdict, tells_found:[{name,what,how_to_fix,points,evidence}], tells_not_found, 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."
     }
    },
    "parameters": [
     {
      "name": "url",
      "in": "query",
      "required": true,
      "description": "Public website address, for example example.com or https://example.com/pricing",
      "schema": {
       "type": "string"
      }
     }
    ]
   },
   "post": {
    "operationId": "check_post",
    "summary": "Score a website for AI-made design habits",
    "description": "Fetches a public web page and its main stylesheets and scripts once, then scores it from 0 (hand-made feel) to 100 (certified slop) against 19 design and copy habits that make a site look AI-made (purple gradients, gradient headlines, glow blobs, glassmorphism, default fonts, untouched component kits, icon card grids, buzzwords, template headlines, vague social proof, placeholder testimonials, app-builder leftovers, em dashes and more). Returns each tell found with how to fix it. Returns: {url, score, verdict, tells_found:[{name,what,how_to_fix,points,evidence}], tells_not_found, 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": {
         "url": {
          "type": "string",
          "description": "Public website address, for example example.com or https://example.com/pricing"
         }
        },
        "required": [
         "url"
        ]
       }
      }
     }
    }
   }
  }
 },
 "externalDocs": {
  "description": "llms.txt",
  "url": "https://slopscore.clawhard.com/llms.txt"
 }
}