{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/getsmileapi/json-schema/getsmileapi-file-type-list-response-schema.json",
  "title": "FileType List Response",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/getsmileapi-file-types-api-openapi.yml#/components/schemas/FileTypeListResponse",
  "type": "object",
  "properties": {
    "code": {
      "$ref": "#/$defs/ObjectMetadataRefCode"
    },
    "message": {
      "$ref": "#/$defs/ObjectMetadataRefMessage"
    },
    "requestId": {
      "$ref": "#/$defs/ObjectMetadataRefRequestID"
    },
    "data": {
      "type": "object",
      "properties": {
        "nextCursor": {
          "$ref": "#/$defs/ObjectNextCursor"
        },
        "items": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/FileType"
          }
        }
      }
    }
  },
  "$defs": {
    "FileType": {
      "title": "FileType",
      "type": "object",
      "description": "File types that are available for upload.",
      "x-tags": [
        "File Types"
      ],
      "properties": {
        "logoUrl": {
          "type": "string",
          "description": "URL to the file type image"
        },
        "type": {
          "$ref": "#/$defs/FileTypeId"
        },
        "typeLabel": {
          "type": "string",
          "description": "Upload file type label"
        },
        "active": {
          "type": "boolean",
          "description": "Indicates whether upload for file type is working"
        },
        "enabled": {
          "type": "boolean",
          "description": "Indicates whether whether upload of file type is enabled or access is allowed for the client"
        },
        "ocr": {
          "type": "boolean",
          "description": "Whether OCR for file type is supported"
        },
        "supported": {
          "type": "array",
          "description": "The datapoints that the provider could support",
          "items": {
            "type": "string",
            "description": "Datapoint",
            "enum": [
              "IDENTITIES",
              "TRANSACTIONS",
              "RATINGS",
              "EMPLOYMENTS",
              "DOCUMENTS",
              "INCOMES",
              "CONTRIBUTIONS",
              "EINCOMES",
              "LIABILITIES",
              "NONE"
            ]
          }
        }
      },
      "required": [
        "logoUrl",
        "type",
        "typeLabel",
        "active",
        "enabled",
        "ocr",
        "supported"
      ]
    },
    "FileTypeId": {
      "title": "FileTypeId",
      "type": "string",
      "description": "Upload file type. You can get all types from `/fileTypes` api"
    },
    "ObjectMetadataRefCode": {
      "type": "string",
      "title": "ObjectMetadataRefCode",
      "description": "Request status code",
      "enum": [
        "OK",
        "CREATED",
        "INVALID_CREDENTIALS",
        "INVALID_PARAMETERS",
        "INVALID_TOKEN",
        "UNAUTHORIZED_ACCESS",
        "MISSING_RESOURCE",
        "REQUEST_LIMIT_EXCEEDED",
        "SERVER_ERROR",
        "UNSUPPORTED_METHOD",
        "SERVER_UNAVAILABLE",
        "TIME_LIMIT_EXCEEDED"
      ],
      "x-internal": false
    },
    "ObjectMetadataRefMessage": {
      "type": "string",
      "title": "ObjectMetadataRefMessage",
      "description": "Message response to the request",
      "x-internal": false
    },
    "ObjectMetadataRefRequestID": {
      "type": "string",
      "title": "ObjectMetadataRefRequestID",
      "description": "Unique ID that is added to the body of every response for easy traceability of the request in our logs.",
      "x-internal": false
    },
    "ObjectNextCursor": {
      "title": "ObjectNextCursor",
      "type": "string",
      "description": "The next cursor value that can be used in the following query.",
      "x-internal": false
    }
  }
}