Upland OL User community

C# REST API Client Library

I begin a project to build a REST API client library for PlanetPress Connect.

At this moment some services are implemented to produce documents.

Goto GitHub Project


1 Like

Hi Herve,

How is your project going? did you have any questions about this project?


Alex Banahene

Actually I’ve health trouble and some others project priority
All tests passed on features provides by the client libraries, today, I’ve implemented on intranet websites to provide PDF file and direct printing results. All with not bind bind specific data source or other transformations (generate xml inside data mapper for another application)
I open the code on GitHub to permit to everybody extend it.
The next step is to include JS Lib support Xcel export on template or data mapper.


Hi @Herve_Heritier,

Quick question, do you have to run the library in the same location as where the workflow is installed. I tried to run it on another computer and I get a 404 not found as the server response at this section https://github.com/handcofr/PlanetPress-Client/blob/11867f4a3479998e86c1d868347cdca2dd3d49a2/Ppress_Client/Program.cs#L38

I think the data mapper template needs to be uploaded first so that you can obtain the id to us? Would like to help if possible.

I created a pull request that should fix that issue.

Hi @Sander,

The pull request fixes the issue. I do have a question, passing runtime parameters to the datamapper and or template is it possible? I have tried setting a parameter both on the datamapper and template and setting it this way nothing seems to work. Should I be using the properties instead? Any suggestions?
Dictionary<string, string> parameters = new(); parameters.Add("duplex", "true");


The json needs to have a top-level “parameters” property. Since it’s a nested structure it’s probably easier to use an anonymous type instead of a dictionary.

string json = JsonConvert.SerializeObject(new { parameters = new { duplex = true } });
StringContent payload = new StringContent(json, Encoding.UTF8, "application/json");

The payload would be passed as the last argument of a PostAsync call where the code currently passes null.

I have tested the code above for content creation, and verified that it works.

Hi @Sander,

using the anonymous type worked okay. Thanks for your help. There was a slight modification needed in the “OLContentCreation” class in the SubmitAsync method, passing in an extra parameter.



Why you not use duplex parameter in your output Option configuration file ?

HI @james123456

You’re right, it’s for security reason, and isolation between data and models.