Skip to main content

PrepareDocumentUploadInput

Input field passed to prepareDocumentUpload which contains identifying info, metadata and encryption info about the uploaded document(s). Note this method actually allows uploading multiple documents together if they all have the same purpose and ownership info (think of adding multiple pieces of KYC evidence for a particular user, multiple pieces of claims evidence, multiple receipts, etc.)

input PrepareDocumentUploadInput {
contentExpirationDate: DateTimeString
documentGroupId: ID!
documentPurpose: DocumentPurpose!
fileInfo: [DocumentUploadMetadataInput!]!
kekId: ID!
ownershipInfo: DocumentOwnershipInfoInput
}

Fields

PrepareDocumentUploadInput.contentExpirationDate ● DateTimeString scalar

An optional timestamp after which the files in this upload will expire and no longer be downloadable

PrepareDocumentUploadInput.documentGroupId ● ID! non-null scalar

A globally unique ID generated on the client that identifies this document group. Can be something like a UUID, or some related information the the client has but which is guaranteed to be unique.

PrepareDocumentUploadInput.documentPurpose ● DocumentPurpose! non-null enum

The purpose of this document, should match the original purpose passed to documentUploadKek

PrepareDocumentUploadInput.fileInfo ● [DocumentUploadMetadataInput!]! non-null input

The list of files that will be uploaded. Must contain at least one entry

PrepareDocumentUploadInput.kekId ● ID! non-null scalar

The ID of the KEK that was used to encrypt all the DEKs used to encrypt the files

PrepareDocumentUploadInput.ownershipInfo ● DocumentOwnershipInfoInput input

Contains information about the owner of the document. This is primarily used for permissions checking when the document is downloaded. Note, when the call is made to prepareDocumentUpload, it is validated that the current execution context has rights to the ownership info specified in this field. For example, a partner admin may be able to specify an ownershipInfo with a uid of a user that is scoped in their partner, but they may not specify a uid from a user in a different partner.

Member of

prepareDocumentUpload mutation