I've only implemented the endpoints that I'm currently using but please feel free to request changes or submit contributions.
Usage:
conststringdsmUrl="http://192.168.0.1:5001/";varclient=new SynologyClient(dsmUrl);// Retrieve all API description objectsvarapiInfo=await client.InfoApi().QueryAsync();// Authenticateawait client.LoginAsync("username","password");// List all sharesvarshares=await client.FileStationApi().ListEndpoint().ListSharesAsync();// Upload filevaruploadResult=await client.FileStationApi().UploadEndpoint().UploadAsync("path_to_file","destination");// End sessionawait client.LogoutAsync(session);