---
sidebar_position: 1
description: List objects and other functions to work with SFTP in the Open Integration Package, a free open-source integration library for 1C:Enterprise 8, OneScript and CLI
keywords: [1C, 1С, 1С:Enterprise, 1С:Enterprise 8.3, API, Integration, Services, Exchange, OneScript, CLI, SFTP]
---

import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';

# List objects
 Gets information about the contents of a directory at the specified path



`Function ListObjects(Val Connection, Val Path = "", Val Recursively = False) Export`

  | Parameter | CLI option | Type | Required | Description |
  |-|-|-|-|-|
  | Connection | --conn | Arbitrary | &#x2714; | Existing connection or connection configuration |
  | Path | --path | String | &#x2716; | Path to search directory |
  | Recursively | --rcv | Boolean | &#x2716; | Get information about objects in nested directories |

  
  Returns:  Map Of KeyAndValue - Processing result

:::tip
FTP Command: `LIST`
:::
<br/>


```bsl title="1C:Enterprise/OneScript code example"
    Host = "172.33.0.13";
    Port = "2222";

    UseProxy          = True;
    ProxySettings     = Undefined;
    AuthorizationType = "By login and password";

    If AuthorizationType = "By login and password" Then

        Login    = "bayselonarrend";
        Password = "12we...";

        SFTPSettings = OPI_SFTP.GetSettingsLoginPassword(Host, Port, Login, Password);

    ElsIf AuthorizationType = "By key" Then

        Login      = "bayselonarrend";
        PrivateKey = "./ssh_key";
        PublicKey  = "./ssh_key.pub";

        SFTPSettings = OPI_SFTP.GetSettingsPrivateKey(Host, Port, Login, PrivateKey, PublicKey);

    Else

        Login        = "bayselonarrend";
        SFTPSettings = OPI_SFTP.GetSettingsViaAgent(Host, Port, Login);

    EndIf;

    If UseProxy Then

        ProxyType = "http"; // http, socks5, socks4

        ProxyAddress  = "127.0.0.1";
        ProxyPort     = "8071";
        ProxyLogin    = "proxyuser";
        ProxyPassword = "12we...";

        ProxySettings = OPI_SFTP.GetProxySettings(ProxyAddress, ProxyPort, ProxyType, ProxyLogin, ProxyPassword);

    EndIf;

    Connection = OPI_SFTP.CreateConnection(SFTPSettings, ProxySettings);

    If OPI_SFTP.IsConnector(Connection) Then
        Result = OPI_SFTP.ListObjects(Connection, "test_folder", True);
    Else
        Result = Connection; // Error of connection
    EndIf;
```
 

 <Tabs>
  
    <TabItem value="bash" label="Bash" default>
        ```bash
            # JSON data can also be passed as a path to a .json file
            
            oint sftp ListObjects \
             --conn "{'proxy':{'login':'proxyuser','password':'***','port':'8071','proxy_type':'http','server':'127.0.0.1'},'set':{'auth_type':'private_key','host':'172.33.0.13','key_path':'***','passphrase':null,'password':null,'port':'2222','pub_path':'/tmp/i0tvgk2g.rd5.tmp','username':'bayselonarrend'}}" \
             --path "files_folder" \
             --rcv true
        ```
    </TabItem>
  
    <TabItem value="bat" label="CMD/Bat" default>
        ```batch
            :: JSON data can also be passed as a path to a .json file
            
            oint sftp ListObjects ^
             --conn "{'proxy':{'login':'proxyuser','password':'***','port':'8071','proxy_type':'http','server':'127.0.0.1'},'set':{'auth_type':'private_key','host':'172.33.0.13','key_path':'***','passphrase':null,'password':null,'port':'2222','pub_path':'/tmp/i0tvgk2g.rd5.tmp','username':'bayselonarrend'}}" ^
             --path "files_folder" ^
             --rcv true
        ```
    </TabItem>
</Tabs>


```json title="Result"
{
 "data": [
  {
   "accessed": 1765392827,
   "extension": "",
   "gid": 1000,
   "is_directory": true,
   "is_symlink": false,
   "modified": 1758718863,
   "name": "test_folder2",
   "path": "test_folder/test_folder2",
   "permissions": "40777",
   "size": 512,
   "uid": 1000,
   "objects": [
    {
     "accessed": 1758718863,
     "extension": "txt",
     "gid": 1000,
     "is_directory": false,
     "is_symlink": false,
     "modified": 1758718863,
     "name": "3.txt",
     "path": "test_folder/test_folder2/3.txt",
     "permissions": "100777",
     "size": 0,
     "uid": 1000
    },
    {
     "accessed": 1765392827,
     "extension": "",
     "gid": 1000,
     "is_directory": true,
     "is_symlink": false,
     "modified": 1758718868,
     "name": "test_folder3",
     "path": "test_folder/test_folder2/test_folder3",
     "permissions": "40777",
     "size": 512,
     "uid": 1000,
     "objects": [
      {
       "accessed": 1758718867,
       "extension": "txt",
       "gid": 1000,
       "is_directory": false,
       "is_symlink": false,
       "modified": 1758718867,
       "name": "4.txt",
       "path": "test_folder/test_folder2/test_folder3/4.txt",
       "permissions": "100777",
       "size": 0,
       "uid": 1000
      }
     ]
    },
    {
     "accessed": 1765392827,
     "extension": "",
     "gid": 1000,
     "is_directory": true,
     "is_symlink": false,
     "modified": 1758718856,
     "name": "test_folder4",
     "path": "test_folder/test_folder2/test_folder4",
     "permissions": "40777",
     "size": 512,
     "uid": 1000,
     "objects": [
      {
       "accessed": 1758718851,
       "extension": "txt",
       "gid": 1000,
       "is_directory": false,
       "is_symlink": false,
       "modified": 1758718851,
       "name": "1.txt",
       "path": "test_folder/test_folder2/test_folder4/1.txt",
       "permissions": "100777",
       "size": 0,
       "uid": 1000
      },
      {
       "accessed": 1758718856,
       "extension": "txt",
       "gid": 1000,
       "is_directory": false,
       "is_symlink": false,
       "modified": 1758718856,
       "name": "2.txt",
       "path": "test_folder/test_folder2/test_folder4/2.txt",
       "permissions": "100777",
       "size": 0,
       "uid": 1000
      }
     ]
    }
   ]
  }
 ],
 "result": true,
 "close_connection": {
  "result": true
 }
}
```
