2.4 Net Folder Servers

2.4.1 Resource Representations

NetFolderServer


{
   "id": long,
   "name": string,
   "driver_type": string ("windows_server", "oes" or "netware"),
   "server_path": string,
   "proxy_dn": string,
   "proxy_password": string,
   "auth_type": string ("nmas", "ntlm", "kerberos", "kerberos_then_ntlm"),
   "sync_schedule": Schedule Resource,
   "index_content": boolean,
   "jits_enabled": boolean,
   "jits_max_age": long,
   "jits_max_acl_age": long,
   "allow_client_initiated_sync": boolean
}            

2.4.2 List

To list net folder servers, use the net_folder_servers related link (href: “/admin/net_folder_servers”) from the root admin resource (href: “/admin”):


[Request]
> curl –k –u admin:novell https://amethyst.wal.novell.com:8443/rest/admin/net_folder_servers
 
[Response]
{
   "first":0,
   "count":2,
   "total":2",
   "items":[{
      "id":1,
      "name":"intlab79.lab.novell.com-HOME",
      "href":"/admin/net_folder_servers/1",
      "links":[{
         "rel":"net_folders",
         "href":"/admin/net_folder_servers/1/net_folders"
      }],
      "driver_type":"oes",
      "auth_type":"nmas",
      "server_path":"\\\\intlab79.lab.novell.com\\HOME",
      "proxy_dn":"cn=superuser,o=novell",
      "index_content": false,
      "jits_enabled": true,
      "jits_max_age": 60000,
      "jits_max_acl_age": 3600000
   },{
      ...
   }]
}

Some attributes on net folder servers (the sync schedule) require additional database lookups, so the REST interface does not return them by default in the “net_folder_servers” response.  You can override this behavior by adding the include_full_details=true query parameter:


[Request]
> curl –k –u admin:novell https://amethyst.wal.novell.com:8443/rest/admin/net_folder_servers?include_full_details=true
 
[Response]
{
   "first":0,
   "count":2,
   "total":2",
   "items":[{
      "id":1,
      "name":"intlab79.lab.novell.com-HOME",
      "href":"/admin/net_folder_servers/1",
      "links":[{
         "rel":"net_folders",
         "href":"/admin/net_folder_servers/1/net_folders"
      }],
      "driver_type":"oes",
      "auth_type":"nmas",
      "server_path":"\\\\intlab79.lab.novell.com\\HOME",
      "proxy_dn":"cn=superuser,o=novell",
      "index_content": false,
      "jits_enabled": true,
      "jits_max_age": 60000,
      "jits_max_acl_age": 3600000,
      "sync_schedule":{
         "enabled":true,
         "when":"daily",
         "at":{
            "hour":0,
            "minute":0
         }
      }
   },{
      ...
   }]
}

2.4.3 Create

To create a new net folder server, POST a net folder server object to the net_folder_servers resource:


[Request]
> curl -k -u admin:novell https://amethyst.wal.novell.com:8443/rest/admin/net_folder_servers \
 -X POST -H "Content-Type: application/json" \
 -d '{"name":"myserver","driver_type":"oes","server_path":"\\\\sisaacson2.provo.novell.com\\vol1", 
      "auth_type":"ntlm","proxy_dn":"cn=admin,o=novell","proxy_password":"novell"}'
 
[Response]
{
 ... (Full net folder server object)
}

2.4.4 Modify

To modify an existing net folder server, PUT a net folder server object to the individual net folder server resource.  Only the net folder server attributes that are included in the request body are updated. 


[Request]
> curl -k -u admin:novell https://amethyst.wal.novell.com:8443/rest/admin/net_folder_servers/1 \
 -X PUT -H "Content-Type: application/json" \
 -d '{"sync_schedule":{"enabled":true,"when":"daily","at":{"hour":1}}}'
 
[Response]
{
 ... (Full net folder server object)
}

2.4.5 Delete

To delete a net folder server, send a DELETE request to the individual net folder server resource:


[Request]
> curl -k -u admin:novell https://amethyst.wal.novell.com:8443/rest/admin/net_folder_servers/1 -X DELETE
 
[Response body is empty]