{
  "source": "middleware.js",
  "method": "multipart",
  "input-schema": {
    "description": "Parse http requests with content-type multipart/form-data, also known as file uploads. Will set the fields if found to output.body and files to the output.files.",
    "type": "object",
    "additionalProperties": false,
    "displayOptions": {
      "showCollapsed": true
    },
    "properties": {
      "encoding": {
        "type": "string",
        "enum": ["utf8", "utf-8", "ascii", "binary", "latin1", "hex", "base64", "base64url", "ucs2", "ucs-2", "utf16le", "utf-16le"],
        "description": "Sets encoding for the incoming form fields. Defaults to utf8."
      },
      "maxFieldsSize": {
        "type": "string",
        "description": "Limits the amount of memory all fields (not files) can allocate in bytes. The default size is 2MB."
      },
      "maxFields": {
        "type": "string",
        "description": "Limits the number of fields that will be parsed. Defaults to 1000."
      },
      "maxFilesSize": {
        "type": "string",
        "description": "Limits the total bytes accepted for all files combined. The default is Infinity."
      },
      "uploadDir": {
        "type": "string",
        "format": "filechooser",
         "formatOptions": {
            "type": "folder"
        },
        "description": "The directory for placing file uploads in. Defaults to temporary directory returned by the operation system."
      }
    }
  },
  "output-schema": {
    "type": "any"
  },
  "meta": {
    "name": "multipart",
    "isInterface": true,
    "description": "Parse request body when Content-Type is multipart/form-data",
    "inherits": "core/http/middleware/interface"
  }
}