{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/isgenai/json-schema/isgenai-multipart-check-input-schema.json",
  "title": "MultipartCheckInput",
  "description": "Send one content field. Multipart precedence is nonempty file, nonblank url, nonblank code, then nonblank text. The full multipart body is limited to 21,037,056 bytes, including boundaries and fields. Multipart kind/language hints are not supported.",
  "x-generated": "2026-11-02",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/isgenai-openapi.json#/components/schemas/MultipartCheckInput",
  "type": "object",
  "properties": {
    "file": {
      "type": "string",
      "description": "One nonempty file, at most 20,971,520 bytes (20 MiB). Supported image diagnostics: PNG, JPEG, WebP, AVIF and single-page classic TIFF. TIFF files must decode within 40 megapixels; invalid TIFF, multipage TIFF, TIFF subimages/pyramids and BigTIFF return HTTP 400. TIFF statistical detection and prompt reconstruction are unsupported. Other media may yield unavailable/unsupported adapters rather than an HTTP rejection. File bytes are uploaded to isGenAI; this is not a browser-local image tool.",
      "format": "binary",
      "contentMediaType": "application/octet-stream",
      "x-maxSizeBytes": 20971520
    },
    "url": {
      "type": "string",
      "description": "Public HTTP or HTTPS URL. A missing scheme is normalized to HTTPS. Local/private network destinations are blocked. Authentication, paywalls and CAPTCHAs are not bypassed.",
      "minLength": 1
    },
    "text": {
      "type": "string",
      "description": "Nonblank text. The server trims surrounding whitespace, then accepts at most 16,000 UTF-16 code units (some characters occupy two units).",
      "minLength": 1,
      "maxLength": 16000
    },
    "code": {
      "type": "string",
      "description": "Nonblank text. The server trims surrounding whitespace, then accepts at most 16,000 UTF-16 code units (some characters occupy two units).",
      "minLength": 1,
      "maxLength": 16000
    },
    "privacy": {
      "type": "string",
      "description": "Files, text and code default to private unless public_receipt=true. URL and article checks default to public. Explicit privacy overrides that choice. Use privacy=private to keep the result out of public records, even when checking a URL; public_receipt=false alone does not make a URL check private.",
      "enum": [
        "private",
        "public"
      ]
    },
    "public_receipt": {
      "type": "string",
      "description": "Private checks never publish receipts. For public file/text/code checks, a receipt requires public_receipt=true. Public URL/article checks publish receipts unless public_receipt=false. A public result may be stored without a receipt. Send true or false as a form field. The server also recognizes 1, yes and on (case-insensitive) as true; other strings are false.",
      "enum": [
        "true",
        "false"
      ]
    },
    "source_context": {
      "type": "string",
      "description": "Optional caller-supplied context. Do not include information you do not want processed or, for public checks, published."
    },
    "force_refresh": {
      "type": "string",
      "description": "Requests refresh where supported. It does not bypass provider availability, safety limits, budgets or all provider caches. Send true or false as a form field. The server also recognizes 1, yes and on (case-insensitive) as true; other strings are false.",
      "enum": [
        "true",
        "false"
      ]
    },
    "deep": {
      "type": "string",
      "description": "Accepted for compatibility. It currently does not select a separate deep-analysis path or guarantee additional checks. Send true or false as a form field. The server also recognizes 1, yes and on (case-insensitive) as true; other strings are false.",
      "enum": [
        "true",
        "false"
      ]
    }
  },
  "anyOf": [
    {
      "required": [
        "file"
      ]
    },
    {
      "required": [
        "url"
      ]
    },
    {
      "required": [
        "text"
      ]
    },
    {
      "required": [
        "code"
      ]
    }
  ]
}