SFTP Smart Services

Overview

Contains multiple Smart Services for interacting with a remote file server via SFTP, FTP, or SCP.  Using these services, an Appian application can be configured to send and receive files, folders, and metadata in a process.  Features support for zlib compression.

Key Features & Functionality

Smart Services included:

  • SFTP:
    • Remove Directory Over SFTP (Basic Credentials)
    • Send File Over SFTP
    • Send File Over SFTP (Basic Credentials)
    • Receive File Over SFTP
    • Receive File Over SFTP (Basic Credentials)
    • Rename File Over SFTP
    • Get Remote Directory Contents Over SFTP
    • Get Remote Directory Contents Over SFTP (Basic Credentials)
    • Create Directory Over SFTP
    • Create Directory Over SFTP (Basic Credentials)
  • SCP:
    • Send File Over SCP
    • Receive File Over SCP
  • FTP:
    • Send File Over FTP
    • Receive File Over FTP
    • Receive Folder Over FTP
  • FTPS
    • Receive Folder Over FTPS
    • Send File Over FTPS (Basic Credentials)

All smart services in the package use Secure Credentials Store.

Anonymous
  • Hi Team, 

    Do you have any documentation on Receive File Over SCP? I reviewed the documentation in the download and didn't see anything referencing SCP. 

    Thanks!

  • What's the appian version ?

  • HI Team ,

    We are using "Receive File Over SFTP" to get number of files from a sftp folder ,we are using    "Receive File Over SFTP"  as MNI.

    But we are facing issue intermittently where file transfer is taking more than 10 min for a 90KB file to transfer.

    this is the error that we received - 'Error establishing SFTP connection. Confirm your hostname, username and password. See application server log for more details. Error Message: channel is not opened.'

    Not sure why it is taking more than 10 min to get 90KB file and also we have noticed that after upgrading to latest plugin version it takes more time to receive files than earlier.

    Kindly suggest remediation to this issue.

  • Hi Team , any update on this ? 

    "Get Remote Directory Contents Over SFTP" is getting errored . Description : Plz check username password host name . But other functions in sftp functions like "send files over SFTP" seems to work which uses the same credentials. 

    This node started failing post appian upgrade to 22.2 . Could you please confirm 

  • Hi Team , 

    Does version 1.7.1 support Appian's 22.2 ?? since the upgrade facing timeout error . 

  • Release Notes - v2.2.2
    • Security Updates
  • Hi Team, 

    I am trying to get a file using "Receive File Over SFTP (Basic Credentials)"  and it gives me the below error. 

    Error copying the remote file to disk. See application server log for more details. Error Message: File not found

     

    LOG: 

    2022-06-14 07:43:25,147 [Appian Work Item - 103466 - execution02 : UnattendedJavaActivityRequest] ERROR com.appiancorp.process.engine.UnattendedJavaActivityRequest - An error occurred while executing activity: id=536875384, classname=com.appian.ps.plugins.sftpsmartservices.ReceiveFileOverSFTPBasic
    com.appiancorp.suiteapi.process.exceptions.SmartServiceException: userMsg[error.file_transfer=Error copying the remote file to disk. See application server log for more details. Error Message: File not found]
    	at com.appiancorp.suiteapi.process.exceptions.SmartServiceException$Builder.build(SmartServiceException.java:145)
    	at com.appian.ps.plugins.sftpsmartservices.ReceiveFileOverSFTPBasic.createException(ReceiveFileOverSFTPBasic.java:257)
    	at com.appian.ps.plugins.sftpsmartservices.ReceiveFileOverSFTPBasic.run(ReceiveFileOverSFTPBasic.java:172)
    	at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.lambda$call$0(DefaultActivityExecutor.java:136)
    	at com.appiancorp.plugins.PluginUsageLogger.runWithPluginInformation(PluginUsageLogger.java:52)
    	at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.call(DefaultActivityExecutor.java:136)
    	at com.appiancorp.process.runtime.framework.DefaultActivityExecutor$1.call(DefaultActivityExecutor.java:130)
    	at com.appiancorp.common.ContextClassLoaderSwitcher.runInContext(ContextClassLoaderSwitcher.java:27)
    	at com.appiancorp.process.runtime.framework.DefaultActivityExecutor.execute(DefaultActivityExecutor.java:130)
    	at com.appiancorp.process.engine.UnattendedJavaActivityRequest.execute(UnattendedJavaActivityRequest.java:88)
    	at com.appiancorp.process.engine.UnattendedJavaActivityRequestResponseCreator.getJavaActivityResultResponse(UnattendedJavaActivityRequestResponseCreator.java:21)
    	at com.appiancorp.process.engine.UnattendedJavaActivityRequest.getJavaActivityResultResponse(UnattendedJavaActivityRequest.java:67)
    	at com.appiancorp.process.engine.UnattendedJavaActivityRequest.execute0(UnattendedJavaActivityRequest.java:55)
    	at com.appiancorp.common.persistence.data.AppianDataUserContextProvider.executeWithConsistentDataReads(AppianDataUserContextProvider.java:135)
    	at com.appiancorp.process.engine.ProcessContinuationRequest.executeOuter(ProcessContinuationRequest.java:68)
    	at com.appiancorp.process.engine.ContinuationRequest.execute(ContinuationRequest.java:124)
    	at com.appiancorp.process.workpoller.UnattendedRequestHandlerBean.onMessage(UnattendedRequestHandlerBean.java:36)
    	at com.appiancorp.process.workpoller.WorkItem.run(WorkItem.java:103)
    	at org.springframework.jca.work.SimpleTaskWorkManager$DelegatingWorkAdapter.run(SimpleTaskWorkManager.java:239)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    	at java.lang.Thread.run(Thread.java:750)
    Caused by: 2: File not found

    But if I verify the Appian Folder (Destination Folder) the document already appears. How I could control this issues?

  • Good morning,

    Any update about this?