DeQmaTech.ZohoDocsSDK
1.6.0
dotnet add package DeQmaTech.ZohoDocsSDK --version 1.6.0
NuGet\Install-Package DeQmaTech.ZohoDocsSDK -Version 1.6.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DeQmaTech.ZohoDocsSDK" Version="1.6.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DeQmaTech.ZohoDocsSDK --version 1.6.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: DeQmaTech.ZohoDocsSDK, 1.6.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install DeQmaTech.ZohoDocsSDK as a Cake Addin
#addin nuget:?package=DeQmaTech.ZohoDocsSDK&version=1.6.0
// Install DeQmaTech.ZohoDocsSDK as a Cake Tool
#tool nuget:?package=DeQmaTech.ZohoDocsSDK&version=1.6.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Features
- Assemblies for .NET 4.5.2 and .NET Standard 2.0 and .NET Core 2.1
- Just one external reference (Newtonsoft.Json)
- Easy installation using NuGet
- Upload/Download tracking support
- Proxy Support
- Upload/Download cancellation support
List of functions:
Token
- GenerateAuthToken
- GetAuthTokenFromBrowser
File
- AddTags
- Copy
- Delete
- Download
- DownloadAsStream
- Move
- RemoveTags
- Rename
- RevisionMetadata
- Share
- SharedDetails
- Trash
- UnShare
Folder
- Copy
- Create
- Delete
- List
- List2
- ListSubFilesRecursively
- ListSubFoldersRecursively
- Move
- Rename
- Share
- SharedDetails
- Trash
- UnShare
- Upload
Files
- Copy
- Move
Folders
- Copy
- Move
Root
- RootID
- Create
- List
- ListSubFilesRecursively
- ListSubFoldersRecursively
- Upload
- ListPublicFolder
- DownloadPublicFile
- ListTags
CodeMap:
Code simple:
//'first get auth token (one time only)
// API Mode
var tokn_APIMode = ZohoDocsSDK.Authentication.GetAuthTokenFromBrowser();
//'OR
// Browser Mode
var tokn_BrowserMode = await ZohoDocsSDK.Authentication.GenerateAuthToken("your_email", "your_password");
// set proxy and connection options
var con = new ZohoDocsSDK.ConnectionSettings { CloseConnection = true, TimeOut = TimeSpan.FromMinutes(30), Proxy = new ZohoDocsSDK.ProxyConfig { SetProxy = true, ProxyIP = "127.0.0.1", ProxyPort = 8888, ProxyUsername = "user", ProxyPassword = "pass" } };
// set api client without connection options
//ZohoDocsSDK.IClient CLNT = new ZohoDocsSDK.ZClient("xxxxxxxtoknxxxxxxx")
// set api client with connection options
ZohoDocsSDK.IClient CLNT = new ZohoDocsSDK.ZClient("xxxxxxxtoknxxxxxxx", con);
// general
await CLNT.ListPublicFolder(new Uri("https://www.zoho.com/folder/xxxxxx"));
await CLNT.ListTags();
var cts = new System.Threading.CancellationTokenSource();
var _ReportCls = new Progress<ZohoDocsSDK.ReportStatus>(delegate (ZohoDocsSDK.ReportStatus ReportClass)
{
Console.WriteLine($"{ReportClass.BytesTransferred}/{ReportClass.TotalBytes}");
Console.WriteLine(ReportClass.ProgressPercentage);
Console.WriteLine(ReportClass.TextStatus);
});
await CLNT.DownloadPublicFile("https://www.zoho.com/file/xxxxxx", "c:\\", "fle.zip", _ReportCls, cts.Token);
//Root
await CLNT.Root().List();
await CLNT.Root().ListSubFilesRecursively();
await CLNT.Root().ListSubFoldersRecursively();
await CLNT.Root().Upload("c:\\file.mp4", UploadTypes.FilePath, "file.mp4", null, _ReportCls, cts.Token);
// single File
await CLNT.File("file_id").Copy("folder_id");
await CLNT.File("file_id").Move("folder_id");
await CLNT.File("file_id").Trash();
await CLNT.File("file_id").Delete();
await CLNT.File("file_id").AddTags(new string[] { "tag1","tag2"});
await CLNT.File("file_id").RemoveTags (new string[] { "tag1", "tag2" });
await CLNT.File("file_id").Download("c:\\downloads", "raw.zip",null,_ReportCls,cts.Token);
await CLNT.File("file_id").DownloadAsStream(_ReportCls, cts.Token);
await CLNT.File("file_id").Rename("raw.zip");
await CLNT.File("file_id").RevisionMetadata( RevisionTypeEnum.shared);
await CLNT.File("file_id").Share( PermissionEnum.@readonly,"1234",DateTime.Now);
await CLNT.File("file_id").UnShare();
await CLNT.File("file_id").SharedDetails();
// single Folder
await CLNT.Folder("folder_id").Create("new folder");
await CLNT.Folder("folder_id").List();
await CLNT.Folder("folder_id").List2(60,0);
await CLNT.Folder("folder_id").Upload("c:\\file.mp4", UploadTypes.FilePath, "file.mp4", null, _ReportCls, cts.Token);
await CLNT.Folder("folder_id").Delete();
await CLNT.Folder("folder_id").Move("folder_id");
await CLNT.Folder("folder_id").Rename("new folder name");
await CLNT.Folder("folder_id").Share(PermissionEnum.@readonly, "12345");
await CLNT.Folder("folder_id").SharedDetails();
await CLNT.Folder("folder_id").Trash();
await CLNT.Folder("folder_id").UnShare();
await CLNT.Folder("folder_id").ListSubFilesRecursively();
await CLNT.Folder("folder_id").ListSubFoldersRecursively();
await CLNT.Folder("folder_id").Copy("folder_id");
// multiple
await CLNT.Files(new string[] { "file_id", "file_id" }).Move("folder_id");
await CLNT.Files(new string[] { "file_id", "file_id" }).Copy("folder_id");
await CLNT.Folders(new string[] { "folder_id", "folder_id" }).Copy("folder_id");
await CLNT.Folders(new string[] { "folder_id", "folder_id" }).Move("folder_id");
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 is compatible. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net452 is compatible. net46 was computed. net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETCoreApp 2.1
- Microsoft.AspNet.WebApi.Client (>= 5.2.3)
- Newtonsoft.Json (>= 11.0.2)
- System.Net.Http (>= 4.3.3)
-
.NETFramework 4.5.2
- Microsoft.AspNet.WebApi.Client (>= 5.2.3)
- Newtonsoft.Json (>= 11.0.2)
- System.Net.Http (>= 4.3.3)
-
.NETStandard 2.0
- Microsoft.AspNet.WebApi.Client (>= 5.2.3)
- Newtonsoft.Json (>= 11.0.2)
- System.Net.Http (>= 4.3.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.