object fileUploadInfoUnknownStatus
{
  "type": "object",
  "properties": {
    "status": {
      "enum": [
        "unknown"
      ],
      "type": "string",
      "default": "unknown",
      "description": "The system does not have information about the task.\n\nNote: Uploadcare stores information about the `/from_url/` tasks for a limited\nperiod of time only. The endpoint can return the status `unknown` for the tasks\nthat are tool old (or that have not been created at all).\n"
    }
  }
}
object fileUploadInfoWaitingStatus
{
  "type": "object",
  "properties": {
    "status": {
      "enum": [
        "waiting"
      ],
      "type": "string",
      "default": "waiting",
      "description": "The system is preparing to handle the request.\n"
    }
  }
}
string filesRequiredError
{
  "type": "string",
  "default": "Request does not contain files.",
  "example": "#/components/examples/filesRequiredError/value"
}
object fromURLUploadResponseSchema
{
  "type": "object",
  "properties": {
    "type": {
      "enum": [
        "token"
      ],
      "type": "string",
      "example": "token"
    },
    "token": {
      "type": "string",
      "format": "uuid",
      "example": "945ebb27-1fd6-46c6-a859-b9893712d650",
      "description": "Token to identify a `/from_url/` request."
    }
  },
  "description": "`/from_url/` upload response."
}
string groupFileURLParsingFailedError
{
  "type": "string",
  "default": "No files[N] parameters found.",
  "example": "#/components/examples/groupFileURLParsingFailedError/value"
}
string groupFilesInvalidError
{
  "type": "string",
  "default": "This is not valid file url: %s.",
  "example": "#/components/examples/groupFilesInvalidError/value"
}
string groupFilesNotFoundError
{
  "type": "string",
  "default": "Some files not found.",
  "example": "#/components/examples/groupFilesNotFoundError/value"
}
string groupIdRequiredError
{
  "type": "string",
  "default": "group_id is required.",
  "example": "#/components/examples/groupIdRequiredError/value"
}
object groupInfo
{
  "type": "object",
  "example": {
    "id": "0d712319-b970-4602-850c-bae1ced521a6~1",
    "url": "https://api.uploadcare.com/groups/0d712319-b970-4602-850c-bae1ced521a6~1/",
    "files": [
      {
        "done": 2667636,
        "size": 2667636,
        "uuid": "be3b4d5e-179d-460e-8a5d-69112ac86cbb",
        "total": 2667636,
        "file_id": "be3b4d5e-179d-460e-8a5d-69112ac86cbb",
        "filename": "IMG0412_123.JPG",
        "is_image": true,
        "is_ready": true,
        "metadata": {
          "pet": "cat",
          "subsystem": "uploader"
        },
        "is_stored": true,
        "mime_type": "image/jpeg",
        "image_info": {
          "dpi": [
            72,
            72
          ],
          "width": 3024,
          "format": "JPEG",
          "height": 4032,
          "sequence": false,
          "color_mode": "RGB",
          "orientation": 6,
          "geo_location": {
            "latitude": 55.62013611111111,
            "longitude": 37.66299166666666
          },
          "datetime_original": "2018-08-20T08:59:50"
        },
        "video_info": null,
        "content_info": {
          "mime": {
            "mime": "image/jpeg",
            "type": "image",
            "subtype": "jpeg"
          },
          "image": {
            "dpi": [
              72,
              72
            ],
            "width": 3024,
            "format": "JPEG",
            "height": 4032,
            "sequence": false,
            "color_mode": "RGB",
            "orientation": 6,
            "geo_location": {
              "latitude": 55.62013611111111,
              "longitude": 37.66299166666666
            },
            "datetime_original": "2018-08-20T08:59:50"
          }
        },
        "default_effects": "resize/x800/",
        "original_filename": "IMG-0412_123.JPG"
      }
    ],
    "cdn_url": "https://ucarecdn.com/0d712319-b970-4602-850c-bae1ced521a6~1/",
    "files_count": 1,
    "datetime_stored": null,
    "datetime_created": "2018-09-12T10:03:38.686710Z"
  },
  "properties": {
    "id": {
      "type": "string",
      "example": "d52d7136-a2e5-4338-9f45-affbf83b857d~2",
      "description": "Group's unique ID."
    },
    "url": {
      "type": "string",
      "format": "uri",
      "example": "https://api.uploadcare.com/groups/d52d7136-a2e5-4338-9f45-affbf83b857d~2/",
      "description": "Group's API resource URL. See the [REST API](https://uploadcare.com/api-refs/upload-api/) documentation for details."
    },
    "files": {
      "type": "array",
      "allOf": [
        {
          "type": "object",
          "properties": {
            "default_effects": {
              "type": "string",
              "format": "uri",
              "example": "resize/x800/",
              "description": "The field contains a set of processing operations applied to the file when the group was created. This set is applied by default when the file is reffered via a group CDN URL and `/nth/N/` operator."
            }
          }
        },
        {
          "$ref": "#/components/schemas/fileUploadInfo"
        }
      ],
      "items": {
        "description": "WARNING: Missing items property in array schema. Missing items property has been filled with this AnyType schema."
      },
      "nullable": true,
      "description": "The list of files in the group. An array may contain null values if a file has been removed.\n"
    },
    "cdn_url": {
      "type": "string",
      "format": "uri",
      "example": "http://www.ucarecdn.com/d52d7136-a2e5-4338-9f45-affbf83b857d~2/",
      "description": "Group's CDN URL."
    },
    "files_count": {
      "type": "number",
      "example": 2,
      "description": "Number of the files in the group."
    },
    "datetime_stored": {
      "type": "string",
      "format": "date-time",
      "example": "2015-09-21T12:39:13.953757Z",
      "nullable": true,
      "deprecated": true,
      "description": "ISO-8601 date and time when the group was marked as stored."
    },
    "datetime_created": {
      "type": "string",
      "format": "date-time",
      "example": "2015-09-21T12:39:13.743754Z",
      "description": "ISO-8601 date and time when the group was created."
    }
  },
  "description": "File group information object."
}
string groupNotFoundError
{
  "type": "string",
  "default": "group_id is invalid.",
  "example": "#/components/examples/groupNotFoundError/value"
}
string hostnameNotFoundError
{
  "type": "string",
  "default": "Host does not exist.",
  "example": "#/components/examples/hostnameNotFoundError/value"
}
object imageInfo
{
  "type": "object",
  "nullable": true,
  "required": [
    "color_mode",
    "orientation",
    "format",
    "height",
    "width",
    "geo_location",
    "datetime_original",
    "dpi",
    "sequence"
  ],
  "properties": {
    "dpi": {
      "type": "array",
      "items": {
        "type": "number",
        "example": 72
      },
      "example": [
        72,
        72
      ],
      "nullable": true,
      "description": "Image DPI for two dimensions."
    },
    "width": {
      "type": "integer",
      "example": 2935,
      "description": "Image width in pixels."
    },
    "format": {
      "type": "string",
      "example": "JPEG",
      "description": "Image format."
    },
    "height": {
      "type": "integer",
      "example": 2352,
      "description": "Image height in pixels."
    },
    "sequence": {
      "type": "boolean",
      "example": false,
      "description": "Set to true if a file contains a sequence of images (GIF for example)."
    },
    "color_mode": {
      "enum": [
        "RGB",
        "RGBA",
        "RGBa",
        "RGBX",
        "L",
        "LA",
        "La",
        "P",
        "PA",
        "CMYK",
        "YCbCr",
        "HSV",
        "LAB"
      ],
      "type": "string",
      "example": "RGBA",
      "description": "Image color mode."
    },
    "orientation": {
      "type": "integer",
      "example": 6,
      "maximum": 8,
      "minimum": 0,
      "nullable": true,
      "description": "Image orientation from EXIF."
    },
    "geo_location": {
      "type": "object",
      "nullable": true,
      "required": [
        "latitude",
        "longitude"
      ],
      "properties": {
        "latitude": {
          "type": "number",
          "example": -1.1884555555555556,
          "description": "Location latitude."
        },
        "longitude": {
          "type": "number",
          "example": 52.66996666666667,
          "description": "Location longitude."
        }
      },
      "description": "Geo-location of image from EXIF."
    },
    "datetime_original": {
      "type": "string",
      "format": "date-time",
      "example": "2018-09-13T16:23:40",
      "nullable": true,
      "description": "Image date and time from EXIF. Please be aware that this data is not always formatted and displayed exactly as it appears in the EXIF."
    }
  },
  "description": "Image metadata."
}
object legacyVideoInfo
{
  "type": "object",
  "nullable": true,
  "properties": {
    "audio": {
      "type": "object",
      "nullable": true,
      "properties": {
        "codec": {
          "type": "string",
          "example": "aac",
          "nullable": true,
          "description": "Audio stream's codec."
        },
        "bitrate": {
          "type": "number",
          "example": 78,
          "nullable": true,
          "description": "Audio stream's bitrate."
        },
        "channels": {
          "type": "string",
          "example": "2",
          "nullable": true,
          "description": "Audio stream's number of channels."
        },
        "sample_rate": {
          "type": "number",
          "example": 44100,
          "nullable": true,
          "description": "Audio stream's sample rate."
        }
      },
      "description": "Audio stream's metadata."
    },
    "video": {
      "type": "object",
      "properties": {
        "codec": {
          "type": "string",
          "example": "h264",
          "description": "Video stream codec."
        },
        "width": {
          "type": "number",
          "example": 640,
          "description": "Video stream's image width."
        },
        "height": {
          "type": "number",
          "example": 360,
          "description": "Video stream's image height."
        },
        "bitrate": {
          "type": "number",
          "example": 315,
          "description": "Video stream's bitrate."
        },
        "frame_rate": {
          "type": "number",
          "example": 30,
          "description": "Video stream's frame rate."
        }
      },
      "description": "Video stream's metadata."
    },
    "format": {
      "type": "string",
      "example": "mp4",
      "description": "Video file's format."
    },
    "bitrate": {
      "type": "number",
      "example": 393,
      "description": "Video file's bitrate."
    },
    "duration": {
      "type": "number",
      "example": 261827,
      "description": "Video file's duration in milliseconds."
    }
  },
  "description": "Video metadata."
}
object metadata
{
  "type": "object",
  "nullable": true,
  "description": "Arbitrary metadata associated with a file."
}
string metadataValue
{
  "type": "string",
  "example": "#/components/examples/metadataValue/value",
  "maxLength": 512,
  "minLength": 1,
  "description": "Arbitrary metadata associated with the file.\nSee [docs](https://uploadcare.com/docs/file-metadata/) and [REST API v0.7](https://uploadcare.com/api-refs/upload-api/) for more information.\n"
}
string multipartFileAlreadyUploadedError
{
  "type": "string",
  "default": "File is already uploaded.",
  "example": "#/components/examples/multipartFileAlreadyUploadedError/value"
}
string multipartFileCompletionFailedError
{
  "type": "string",
  "default": "Can not complete upload. Wrong parts size?",
  "example": "#/components/examples/multipartFileCompletionFailedError/value"
}
string multipartFileIdRequiredError
{
  "type": "string",
  "default": "uuid is required.",
  "example": "#/components/examples/multipartFileIdRequiredError/value"
}
string multipartFileSizeLimitExceededError
{
  "type": "string",
  "default": "File size exceeds project limit.",
  "example": "#/components/examples/multipartFileSizeLimitExceededError/value"
}
string multipartFileSizeTooSmallError
{
  "type": "string",
  "default": "File size can not be less than <SIZE> bytes. Please use direct upload instead of multipart.",
  "example": "#/components/examples/multipartFileSizeTooSmallError/value"
}
string multipartPartSizeInvalidError
{
  "type": "string",
  "default": "Multipart Upload Part Size should be an integer.",
  "example": "#/components/examples/multipartPartSizeInvalidError/value"
}
string multipartPartSizeTooBigError
{
  "type": "string",
  "default": "Multipart Upload Part Size can not be more than <SIZE> bytes.",
  "example": "#/components/examples/multipartPartSizeTooBigError/value"
}
string multipartPartSizeTooSmallError
{
  "type": "string",
  "default": "Multipart Upload Part Size can not be less than <SIZE> bytes.",
  "example": "#/components/examples/multipartPartSizeTooSmallError/value"
}
string multipartSizeInvalidError
{
  "type": "string",
  "default": "size should be integer.",
  "example": "#/components/examples/multipartSizeInvalidError/value"
}
string multipartUploadSizeTooLargeError
{
  "type": "string",
  "default": "Uploaded size is more than expected.",
  "example": "#/components/examples/multipartUploadSizeTooLargeError/value"
}
string multipartUploadSizeTooSmallError
{
  "type": "string",
  "default": "File size mismatch. Not all parts uploaded?",
  "example": "#/components/examples/multipartUploadSizeTooSmallError/value"
}
string nullCharactersForbiddenError
{
  "type": "string",
  "default": "Null characters are not allowed.",
  "example": "#/components/examples/nullCharactersForbiddenError/value"
}
string postRequestParserFailedError
{
  "type": "string",
  "default": "HTTP POST request parsing failed.",
  "example": "#/components/examples/postRequestParserFailedError/value"
}
string projectPublicKeyRemovedError
{
  "type": "string",
  "default": "Project <PUB-KEY> is marked as removed.",
  "example": "#/components/examples/projectPublicKeyRemovedError/value"
}
string projectPublicKeyType
{
  "type": "string",
  "example": "caa9d29da887ee88ffe6",
  "description": "Public key identifying an Uploadcare project your uploads will go to."
}
string publicKeyInvalidError
{
  "type": "string",
  "default": "pub_key is invalid.",
  "example": "#/components/examples/publicKeyInvalidError/value"
}
string publicKeyRequiredError
{
  "type": "string",
  "default": "pub_key is required.",
  "example": "#/components/examples/publicKeyRequiredError/value"
}
string requestFiledsNumberLimitExceededError
{
  "type": "string",
  "default": "The request contains too many HTTP POST fields.",
  "example": "#/components/examples/requestFiledsNumberLimitExceededError/value"
}
string requestParamRequiredError
{
  "type": "string",
  "default": "<PARAMETER-NAME> is required.",
  "example": "#/components/examples/requestParamRequiredError/value"
}
object schemas-imageInfo
{
  "type": "object",
  "required": [
    "color_mode",
    "orientation",
    "format",
    "height",
    "width",
    "geo_location",
    "datetime_original",
    "dpi",
    "sequence"
  ],
  "properties": {
    "dpi": {
      "type": "array",
      "items": {
        "type": "number",
        "example": 72
      },
      "example": [
        72,
        72
      ],
      "maxItems": 2,
      "minItems": 2,
      "nullable": true,
      "description": "Image DPI for two dimensions."
    },
    "width": {
      "type": "integer",
      "example": 2935,
      "description": "Image width in pixels."
    },
    "format": {
      "type": "string",
      "example": "JPEG",
      "description": "Image format."
    },
    "height": {
      "type": "integer",
      "example": 2352,
      "description": "Image height in pixels."
    },
    "sequence": {
      "type": "boolean",
      "example": false,
      "description": "Set to true if a file contains a sequence of images (GIF for example)."
    },
    "color_mode": {
      "enum": [
        "RGB",
        "RGBA",
        "RGBa",
        "RGBX",
        "L",
        "LA",
        "La",
        "P",
        "PA",
        "CMYK",
        "YCbCr",
        "HSV",
        "LAB"
      ],
      "type": "string",
      "example": "RGBA",
      "description": "Image color mode."
    },
    "orientation": {
      "type": "integer",
      "example": 6,
      "maximum": 8,
      "minimum": 0,
      "nullable": true,
      "description": "Image orientation from EXIF."
    },
    "geo_location": {
      "type": "object",
      "nullable": true,
      "required": [
        "latitude",
        "longitude"
      ],
      "properties": {
        "latitude": {
          "type": "number",
          "example": -1.1884555555555556,
          "description": "Location latitude."
        },
        "longitude": {
          "type": "number",
          "example": 52.66996666666667,
          "description": "Location longitude."
        }
      },
      "description": "Geo-location of image from EXIF."
    },
    "datetime_original": {
      "type": "string",
      "format": "date-time",
      "example": "2018-09-13T16:23:40",
      "nullable": true,
      "description": "Image date and time from EXIF. Please be aware that this data is not always formatted and displayed exactly as it appears in the EXIF."
    }
  },
  "description": "Image metadata."
}
string signatureExpirationError
{
  "type": "string",
  "default": "Expired signature.",
  "example": "#/components/examples/signatureExpirationError/value"
}
string signatureExpirationInvalidError
{
  "type": "string",
  "default": "`expire` must be a UNIX timestamp.",
  "example": "#/components/examples/signatureExpirationInvalidError/value"
}
string signatureExpirationRequiredError
{
  "type": "string",
  "default": "`expire` is required.",
  "example": "#/components/examples/signatureExpirationRequiredError/value"
}
string signatureInvalidError
{
  "type": "string",
  "default": "Invalid signature.",
  "example": "#/components/examples/signatureInvalidError/value"
}
string signatureRequiredError
{
  "type": "string",
  "default": "`signature` is required.",
  "example": "#/components/examples/signatureRequiredError/value"
}
string signatureType
{
  "type": "string",
  "example": "04b29480233f4def5c875875b6bdc3b1",
  "description": "`signature` must be sent along with your upload request if you would like to use signed uploads.\nThe signature should be generated on your backend.\n**Note**: the process requires knowledge of your Uploadcare Project's Secret key.\nSee [signed uploads](https://uploadcare.com/docs/security/secure-uploads/) for details.\n"
}
string sourceURLRequiredError
{
  "type": "string",
  "default": "source_url is required.",
  "example": "#/components/examples/sourceURLRequiredError/value"
}
string storeType
{
  "enum": [
    "0",
    "1",
    "auto"
  ],
  "type": "string",
  "default": "auto",
  "example": "1",
  "description": "Determines if an uploaded file should be marked as temporary or permanent.\n\nThe parameter can have the following values:\n- `0` - do not mark an uploaded file as stored and remove it after 24 hours\n- `1` - mark the uploaded file as stored\n- `auto` - delegate the choice of the file-storing behavior to a project-wide setting called\n  [auto-store](https://app.uploadcare.com/projects/-/settings/#storage).\n\nThe default value depends on the user registration date.\n\nFor all users registered after February 12, 2024 (UTC 13:30), the default value is `auto`. \nFile-storing behavior depends entirely on what is set in the \n[storage settings](https://app.uploadcare.com/projects/-/settings/#storage) in the Dashboard.\n\nFor users registered before February 12, 2024, the default value is `0`. \nTo ensure that file storage in the project matches the settings in the Dashboard,\nchange the value to `auto`.\n"
}
string tokenRequiredError
{
  "type": "string",
  "default": "token is required.",
  "example": "#/components/examples/tokenRequiredError/value"
}
string uploadFailedError
{
  "type": "string",
  "default": "Upload failed.",
  "example": "#/components/examples/uploadFailedError/value"
}
string uploadcarePublicKeyInvalidError
{
  "type": "string",
  "default": "UPLOADCARE_PUB_KEY is invalid.",
  "example": "#/components/examples/uploadcarePublicKeyInvalidError/value"
}
string uploadcarePublicKeyRequiredError
{
  "type": "string",
  "default": "UPLOADCARE_PUB_KEY is required.",
  "example": "#/components/examples/uploadcarePublicKeyRequiredError/value"
}
string urlBlacklistedError
{
  "type": "string",
  "default": "Source is blacklisted.",
  "example": "#/components/examples/urlBlacklistedError/value"
}
string urlHostMalformedError
{
  "type": "string",
  "default": "URL host is malformed.",
  "example": "#/components/examples/urlHostMalformedError/value"
}
string urlHostPrivateIPForbiddenError
{
  "type": "string",
  "default": "Only public IPs are allowed.",
  "example": "#/components/examples/urlHostPrivateIPForbiddenError/value"
}
Load more schemas