{
  "openapi": "3.1.0",
  "info": {
    "title": "nsfw-classifier — Chutes API",
    "description": "NSFW check for images and text",
    "version": "d164e43e-0f5d-589d-84cd-92586b89a806",
    "contact": {
      "name": "Chutes",
      "url": "https://chutes.ai"
    },
    "x-chutes": {
      "chuteId": "49e41e9c-275e-5877-bd61-30c7bef0cf47",
      "slug": "vonkaiser-nsfw-classifier",
      "modelName": "nsfw-classifier",
      "standardTemplate": null,
      "openaiCompatible": false,
      "confidentialCompute": true,
      "modelPage": "https://chutes.ai/app/chute/vonkaiser-nsfw-classifier",
      "llmsTxt": "https://chutes.ai/app/chute/vonkaiser-nsfw-classifier/llms.txt",
      "pricing": {
        "usdPerHour": 1.8
      }
    }
  },
  "servers": [
    {
      "url": "https://vonkaiser-nsfw-classifier.chutes.ai"
    }
  ],
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "components": {
    "securitySchemes": {
      "bearerAuth": {
        "type": "http",
        "scheme": "bearer",
        "description": "Chutes API key. Send as `Authorization: Bearer $CHUTES_API_KEY`."
      }
    }
  },
  "paths": {
    "/image": {
      "post": {
        "operationId": "classify_image",
        "summary": "POST /image",
        "responses": {
          "200": {
            "description": "Successful response.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "image_b64": {
                    "type": "string"
                  }
                },
                "required": [
                  "image_b64"
                ]
              },
              "example": {
                "image_b64": "<base64-encoded image>"
              }
            }
          }
        }
      }
    },
    "/text": {
      "post": {
        "operationId": "classify_text",
        "summary": "POST /text",
        "responses": {
          "200": {
            "description": "Successful response.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        },
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "text": {
                    "type": "string"
                  }
                },
                "required": [
                  "text"
                ]
              },
              "example": {
                "text": "Your text here"
              }
            }
          }
        }
      }
    }
  }
}