{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://api-evangelist.github.io/smokeball/json-schema/smokeball-file.json", "title": "Smokeball File", "type": "object", "properties": { "href": { "type": "string", "nullable": true }, "relation": { "type": "string", "nullable": true }, "method": { "type": "string", "default": "GET", "nullable": true }, "self": { "allOf": [ { "$ref": "#/components/schemas/Link" } ], "nullable": true }, "id": { "type": "string", "description": "Unique identifier of the file.", "nullable": true, "example": "b471682e-fa17-4e46-b7fe-9b2b8fdcb3c2" }, "versionId": { "type": "string", "description": "Unique identifier of the file's current version.", "nullable": true }, "folder": { "allOf": [ { "$ref": "#/components/schemas/Link" } ], "description": "Hypermedia link of the folder to which the file belongs.", "nullable": true }, "matter": { "allOf": [ { "$ref": "#/components/schemas/Link" } ], "description": "Hypermedia link of the matter to which the file belongs.", "nullable": true }, "name": { "type": "string", "description": "Name of the file, excluding file extension.", "nullable": true, "example": "court filing" }, "fileExtension": { "type": "string", "description": "Extension of the file.", "nullable": true, "example": ".pdf" }, "ownerId": { "type": "string", "description": "Unique identifier of the user who created/uploaded this file.", "nullable": true, "example": "750eb5c5-ac0b-7d11-4997-e0ce9d8896c8" }, "to": { "type": "string", "description": "The 'To' or recipients' email address (only applicable for email files).", "nullable": true, "example": "recipient@email.com" }, "from": { "type": "string", "description": "The 'From' or sender's email address (only applicable for email files).", "nullable": true, "example": "sender@email.com" }, "dateCreated": { "type": "string", "description": "The original datetime that the file was created.", "format": "date-time", "example": "2022-04-23T14:00:00Z" }, "dateModified": { "type": "string", "description": "The datetime that the file was last modified.", "format": "date-time", "example": "2022-04-25T17:00:00Z" }, "sizeBytes": { "type": "integer", "description": "Size of the file (in bytes).", "format": "int64", "example": 19104768 }, "downloadInfo": { "allOf": [ { "$ref": "#/components/schemas/Link" } ], "description": "Hypermedia link to the download details of the file.", "nullable": true }, "additionalData": { "type": "object", "additionalProperties": { "nullable": true }, "description": "Collection of file meta data as KeyValuePair(string, object).", "nullable": true }, "isFavorite": { "type": "boolean", "description": "Flag indicating whether this file is a favorite", "example": false }, "isUploaded": { "type": "boolean", "description": "Flag indicating whether the file contents are uploaded to the server.", "example": false }, "isCancelled": { "type": "boolean", "description": "Flag indicating whether the file upload has been cancelled.", "example": false }, "isDuplicate": { "type": "boolean", "description": "Flag indicating whether the file data is duplicated. Applies to emails only for now." }, "isDeleted": { "type": "boolean", "description": "Flag indicating whether the file has been deleted.", "example": false } }, "additionalProperties": false }