Class OneBlinkUploader

Used to create an instance of the OneBlinkUploader, exposing methods to upload submissions and other types of files

Constructors

Properties

apiOrigin: string
getBearerToken: (() => Promise<undefined | string>)

Type declaration

    • (): Promise<undefined | string>
    • Returns Promise<undefined | string>

region: string

Methods

  • Upload an asset file. Asset files are always public.

    Example

    const abortController = new AbortController()
    const result = await uploader.uploadAttachment({
    onProgress: (progress) => {
    // ...
    },
    data: new Blob(['a string of data'], {
    type: 'text/plain',
    }),
    fileName: 'file.txt',
    contentType: 'text/plain',
    abortSignal: abortController.signal,
    organisatsionId: 'abc123',
    })

    Parameters

    Returns Promise<OneBlinkResponse<{
        url: string;
    }>>

    The upload result

  • Upload an form submission attachment.

    Example

    const abortController = new AbortController()
    const result = await uploader.uploadAttachment({
    formId: 1,
    data: new Blob(['a string of data'], {
    type: 'text/plain',
    }),
    fileName: 'file.txt',
    contentType: 'text/plain',
    isPrivate: true,
    abortSignal: abortController.signal,
    })

    Parameters

    • data: DownloadOptions & {
          onProgress?: ProgressListener;
      } & {
          contentType: string;
          data: AttachmentUploadData;
          fileName: string;
          formId: number;
          isPrivate: boolean;
          username?: string;
      }

      The attachment upload data and options

    Returns Promise<OneBlinkResponse<{
        attachmentDataId: string;
        uploadedAt: string;
        url: string;
    }>>

    The upload result

  • Upload an email attachment. Email attachments are always private.

    Example

    const abortController = new AbortController()
    const result = await uploader.uploadEmailAttachment({
    onProgress: (progress) => {
    // ...
    },
    data: new Blob(['a string of data'], {
    type: 'text/plain',
    }),
    fileName: 'file.txt',
    contentType: 'text/plain',
    abortSignal: abortController.signal,
    })

    Parameters

    Returns Promise<{
        s3: S3Configuration;
    }>

    The upload result

  • Upload a draft submission.

    Example

    const result = await uploader.uploadDraftSubmission({
    submission: {
    // ...
    },
    definition: {
    // ...
    },
    formsAppId: 1,
    formSubmissionDraftId: '',
    createdAt: new Date().toISOString(),
    title: '',
    onProgress: (progress) => {
    // ...
    },
    })

    Parameters

    • data: DownloadOptions & {
          onProgress?: ProgressListener;
      } & {
          definition: Form;
          device?: S3SubmissionDataDevice;
          externalId?: string;
          formsAppId?: number;
          jobId?: string;
          previousFormSubmissionApprovalId?: string;
          submission: {
              [name: string]: unknown;
          };
          taskActionId?: string;
          taskGroupInstanceId?: string;
          taskId?: string;
          userToken?: string;
      } & {
          createdAt: string;
          formSubmissionDraftId: string;
          lastElementUpdated?: FormElement;
          title: string;
      }

      The submission upload data and options

    Returns Promise<OneBlinkResponse<FormSubmissionDraftVersion>>

    The upload result

  • Upload a PDF for conversion. PDF Conversions are always private.

    Example

    const abortController = new AbortController()
    const result = await uploader.uploadPDFConversion({
    onProgress: (progress) => {
    // ...
    },
    data: pdfData,
    formId: 1,
    abortSignal: abortController.signal,
    })

    Parameters

    Returns Promise<{
        s3: S3Configuration;
    }>

    The upload result

  • Upload form prefill data.

    Example

    const abortController = new AbortController()
    const result = await uploader.uploadPrefillData({
    onProgress: (progress) => {
    // ...
    },
    data: {
    field1: 'abc',
    field2: 123,
    },
    formId: 12,
    abortSignal: abortController.signal,
    })

    Parameters

    • data: DownloadOptions & {
          onProgress?: ProgressListener;
      } & {
          formId: number;
          prefillData: {
              [name: string]: unknown;
          };
      }

      The prefill upload data and options

    Returns Promise<OneBlinkResponse<{
        preFillFormDataId: string;
    }>>

    The upload result

  • Upload an asset file for a product service such as Product Notifications. Asset files are always public.

    Example

    const abortController = new AbortController()
    const result = await uploader.uploadAttachment({
    onProgress: (progress) => {
    // ...
    },
    data: new Blob(['a string of data'], {
    type: 'text/plain',
    }),
    fileName: 'file.txt',
    contentType: 'text/plain',
    abortSignal: abortController.signal,
    })

    Parameters

    Returns Promise<OneBlinkResponse<{
        url: string;
    }>>

    The upload result

  • Upload a submission.

    Example

    const result = await uploader.uploadSubmission({
    submission: {
    // ...
    },
    definition: {
    // ...
    },
    formsAppId: 1,
    onProgress: (progress) => {
    // ...
    },
    })

    Parameters

    • data: DownloadOptions & {
          onProgress?: ProgressListener;
      } & {
          definition: Form;
          device?: S3SubmissionDataDevice;
          externalId?: string;
          formsAppId?: number;
          jobId?: string;
          previousFormSubmissionApprovalId?: string;
          submission: {
              [name: string]: unknown;
          };
          taskActionId?: string;
          taskGroupInstanceId?: string;
          taskId?: string;
          userToken?: string;
      } & {
          formSubmissionDraftId?: string;
          recaptchas?: {
              siteKey: string;
              token: string;
          }[];
      }

      The submission upload data and options

    Returns Promise<OneBlinkResponse<{
        pdfAccessToken?: string;
        preventPayment: boolean;
        submissionId: string;
        submissionTimestamp: string;
    }>>

    The upload result