{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/artashippinginc/json-schema/artashippinginc-upload-create-schema.json",
  "title": "UploadCreate",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/artashippinginc-uploads-api-openapi.yml#/components/schemas/UploadCreate",
  "additionalProperties": false,
  "properties": {
    "upload": {
      "properties": {
        "document_type": {
          "description": "The document type of the file being uploaded",
          "enum": [
            "bill_of_lading",
            "certificate_of_insurance",
            "certificate_of_insurance_template",
            "condition_report",
            "condition_check",
            "image",
            "instructions",
            "airway_bill",
            "commercial_invoice",
            "power_of_attorney",
            "proof_of_export",
            "proof_of_delivery",
            "quote",
            "shipping_label",
            "other"
          ],
          "type": "string",
          "x-struct": null,
          "x-validate": null
        },
        "document_type_label": {
          "description": "A brief label providing additional context about the document_type. Required when \"other\" is the \"document_type\"",
          "type": [
            "string",
            "null"
          ],
          "x-struct": null,
          "x-validate": null
        },
        "file_name": {
          "description": "The name of the file being uploaded",
          "type": "string",
          "x-struct": null,
          "x-validate": null
        },
        "mime_type": {
          "description": "The mime-type for the file being uploaded",
          "enum": [
            "application/pdf",
            "application/vnd.ms-excel",
            "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
            "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
            "image/jpeg",
            "image/png",
            "text/csv",
            "video/mp4",
            "video/quicktime",
            "application/msword"
          ],
          "type": "string",
          "x-struct": null,
          "x-validate": null
        },
        "size": {
          "description": "The size of the file being uploaded in bytes",
          "type": "integer",
          "x-struct": null,
          "x-validate": null
        }
      },
      "required": [
        "document_type",
        "file_name",
        "mime_type",
        "size"
      ],
      "type": "object",
      "x-struct": null,
      "x-validate": null
    }
  },
  "required": [
    "upload"
  ],
  "type": "object",
  "x-struct": "Elixir.DocsWeb.Schemas.RequestBody.UploadCreate",
  "x-validate": null
}