Programmatically upload/download documents to/from Appian

Certified Lead Developer
Setup:
- Appian (Cloud),
- A web application which can access Appian with service user account (i.e. integration user account)

Question: A web application user (not part of Appian) is required to upload/download documents to/from Appian document repository. How can this be achieved?

Couple of options I know are - Create WebAPI and send/receive documents in Base64 in HTTP request/response. But the documents in question could be very big (e.g. audio/video files). This is only good for small documents. Second option could be create a servlet plugin which can receive/send documents, even big documents. Does Appian cloud allow to deploy custom Servlet Plugins? What are the other options?

OriginalPostID-255237

  Discussion posts and replies are publicly visible

  • 0
    Certified Lead Developer
    You could also use a WebAPI to launch a process that uses the download/upload document smart services instead of writing a custom Servlet.
  • I do not know your exact requirements. The custom servlet is also good approach.
    I also have another option(considering that the document size will be huge..).
    Have a FTP server which will be accessible from Appian and to the end-users who are going to upload/download from Appian. Documents can be uploaded/downloaded to/from FTP server from Appian. There is a smart service for accessing FTP.
    Since you want to be able to upload the documents from an external web app (which is not part of Appian), the FTP server could be exposed to such a web app. The end-user can just upload to the FTP server(and this will not require Appian's service account for integration).

    A scheduled process in Appian can poll the FTP server and download the documents periodically.