Documents Models

pydantic model pyil2.models.documents.BaseDocumentTransactionModel

Bases: BaseCamelModel

Base document transaction model.

field chain_id: str [Required] (alias 'chain')

Id of the chain where the set of documents should be stored.

field comment: str | None = None

Any additional information about the set of documents to be stored.

field compression: DocumentsCompression | None = None

Compression algorithm.

field encryption: str | None = None

The encryption descriptor in the <pbe>-<hash>-<cipher>-<level> format. Examples:

  • “PBKDF2-SHA256-AES256-LOW”

  • “PBKDF2-SHA512-AES256-MID”

  • “PBKDF2-SHA256-AES128-HIGH”

field generate_public_directory: bool = True (alias 'generatePublicDirectory')

If the publically viewable PublicDirectory field should be created.

field previous: str | None = None

Reference to a previous document locator.

pydantic model pyil2.models.documents.BeginDocumentTransactionModel

Bases: BaseDocumentTransactionModel

Begin document transaction model.

Validators:
field allow_children: bool = True (alias 'allowChildren')

If True, allows this document record to be updated by children records.

Validated by:
field chain_id: str [Required] (alias 'chain')

Id of the chain where the set of documents should be stored.

Validated by:
field comment: str | None = None

Any additional information about the set of documents to be stored.

Validated by:
field compression: DocumentsCompression | None = None

Compression algorithm.

Validated by:
field encryption: str | None = None

The encryption descriptor in the <pbe>-<hash>-<cipher>-<level> format. Examples:

  • “PBKDF2-SHA256-AES256-LOW”

  • “PBKDF2-SHA512-AES256-MID”

  • “PBKDF2-SHA256-AES128-HIGH”

Validated by:
field generate_public_directory: bool = True (alias 'generatePublicDirectory')

If the publically viewable PublicDirectory field should be created.

Validated by:
field iterations: int | None = None

Override for the number of PBE iterations to generate the key.

Validated by:
field password: str | None = None

Password as bytes if encryption is not null.

Constraints:
  • min_length = 12

Validated by:
field previous: str | None = None

Reference to a previous document locator.

Validated by:
field previous_documents_not_to_copy: List[int] [Optional] (alias 'previousDocumentsNotToCopy')

List of documents in the previous record to be excluded in this record. If nothing is passed, copy every document from the previous document to this record.

Validated by:
field to_children_comment: str | None = None (alias 'toChildrenComment')

Comment added for children records.

Validated by:
validator validate_encrypted_password  »  all fields

Validate if password is missing when encryption is defined.

pydantic model pyil2.models.documents.DirectoryEntryModel

Bases: BaseCamelModel

Entry details for each stored document in this documents record.

field comment: str | None = None

Additional comment for the document entry.

field hash_sha256: str | None = None (alias 'hashSHA256')

SHA256 hash of the file bytes.

field mime_type: str | None = None (alias 'mimeType')

Mime Type for the document content.

field name: str | None = None

Document file name.

field path: str | None = None

Relative path of the file in the public directory

field size: int | None = 0

File size in bytes.

pydantic model pyil2.models.documents.DocumentMetadataModel

Bases: BaseCamelModel

Documents metadata model.

field comment: str | None = None

Any additional information about this set of documents.

field compression: str | None = None

Compression algorithm.

field creation_time: datetime [Required] (alias 'creationTime')

Time of record creation.

field encryption: str | None = None

The encryption descriptor in the <pbe>-<hash>-<cipher>-<level> format.

field encryption_parameters: EncryptionParameterModel | None = None (alias 'encryptionParameters')

The parameters used to make the encryption of the set of documents.

field public_directory: List[DirectoryEntryModel] [Optional] (alias 'publicDirectory')

List of stored documents.

field record_reference: str | None = None (alias 'recordReference')

Universal reference of this record.

pydantic model pyil2.models.documents.DocumentTransactionModel

Bases: BaseDocumentTransactionModel

Document transaction status model.

field can_commit_now: bool = False (alias 'canCommitNow')

If True, the transaction is able to be committed.

field chain_id: str [Required] (alias 'chain')

Id of the chain where the set of documents should be stored.

field comment: str | None = None

Any additional information about the set of documents to be stored.

field compression: DocumentsCompression | None = None

Compression algorithm.

field count_of_uploaded_documents: int = 0 (alias 'countOfUploadedDocuments')

Total count of uploaded documents for this transaction.

field document_names: List[str] [Optional] (alias 'documentNames')

List of documents uploaded in the transaction.

field encryption: str | None = None

The encryption descriptor in the <pbe>-<hash>-<cipher>-<level> format. Examples:

  • “PBKDF2-SHA256-AES256-LOW”

  • “PBKDF2-SHA512-AES256-MID”

  • “PBKDF2-SHA256-AES128-HIGH”

field generate_public_directory: bool = True (alias 'generatePublicDirectory')

If the publically viewable PublicDirectory field should be created.

field previous: str | None = None

Reference to a previous document locator.

field timeout_limit: datetime [Required] (alias 'timeOutLimit')

The transaction will be aborted if not completed until this timeout.

field transaction_id: str [Required] (alias 'transactionId')

ID of the transaction to use when uploading each file and committing the transaction.

pydantic model pyil2.models.documents.DocumentUploadConfigurationModel

Bases: BaseCamelModel

Node configuration of uploaded documents.

field default_compression: str | None = None (alias 'defaultCompression')

Default compression algorithm.

field default_encryption: str | None = None (alias 'defaultEncryption')

Default encryption algorithm.

field file_size_limit: int | None = None (alias 'fileSizeLimit')

Maximum file size.

field iterations: int | None = None

Default number of PBE iterations to generate the key.

field permitted_content_types: List[str] [Optional] (alias 'permittedContentTypes')

List of content types mime-type concatenated with acceptable filename extensions.

field timeout_in_minutes: int = 0 (alias 'timeOutInMinutes')

Timeout in minutes.

pydantic model pyil2.models.documents.EncryptionParameterModel

Bases: BaseCamelModel

The parameters used to make the encryption of the set of documents.

field iterations: int = 0

Number of iterations to generate the key.

field salt: str | None = None

Salt value to feed the cypher engine.