Skip to content

Search samples

Most methods use QueryParams. Here are some tips about how to use them.

Variables Type Allow wildcards Restrictions Description
domain long No. Available values:
- QueryParams.DOCUMENT
- QueryParams.FOLDER
- QueryParams.MAIL
- QueryParams.RECORD
By default, the value is set to QueryParams.DOCUMENT.
For searching documents and folders, use the value:
<br>(QueryParams.DOCUMENT | QueryParams.FOLDER) <br>
Restrict the search to a node type.
author String No. The value must be a valid userId. Filter by creator.
name String Yes. Filter by node name.
title String Yes. Filter by title.
keywords List Yes. Filter by keywords.
categories List No. Values should be category UUIDs; do not use path values. Filter by categories.
content Yes. Filter by binary content.
mimeType No. The value should be a valid and registered MIME type.
Only applies to document nodes.
Filter by document MIME type.
language No. The value should be a valid language.
Only applies to document nodes.
Filter by document language.
folder No. When empty, the “/okm:root” node is used by default.
The value should be a valid UUID; do not use a path value.
Filter by a folder.
folderRecursive Boolean No. It only makes sense to set this variable to true when the folder variable is not empty. Enable recursive filtering by a folder.
lastModifiedFrom Calendar No. Filter by nodes modified after a date.
lastModifiedTo Calendar No. Filter by nodes modified before a date.
mailSubject String Yes. Only applies to mail nodes. Filter by mail subject field.
mailFrom String Yes. Only applies to mail nodes. Filter by the mail From field.
mailTo Yes. Only applies to mail nodes. Filter by the mail To field.
notes Yes. Filter by notes.
properties Dictionary<String, String> Yes, on almost all. Wildcards cannot be applied to metadata field values like “date”.
The dictionary of the properties is composed of pairs:
(‘metadata_field_name’,‘metadata_field_value’)
For example:
<br>Dictionary<String, String> properties = new Dictionary<String, String>();<br>properties.Add("okp:consulting.name", "name value")<br>
Filtering by a range of dates:
<br> DateTime date = DateTime.Now;// today<br> DateTime to = new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, date.Second, date.Millisecond); <br> DateTime from = to.AddDays(-3);// three days before<br> Dictionary<String,String> properties = new Dictionary<String,String>();<br> properties.Add("okp:consulting.date", ISO8601.formatBasic(from)+","+ISO8601.formatBasic(to));<br>
When filtering by a range of dates, you must set both values (from and to); otherwise, the filter will be ignored by OpenKM.
To filter by a metadata field of type multiple like this:
<br><select label="Multiple" name="okp:consulting.multiple" type="multiple"><br> <option label="One" value="one"/><br> <option label="Two" value="two"/><br> <option label="Three" value="three" /><br></select><br>
You should do:
<br>properties.Add("okp:consulting.multiple", "one;two");<br>
Where “one” and “two” are valid values and the character “;” is used as a separator.
Filter by metadata group values.

Wildcard examples:

Variable Example Description
name test*.html Any document that starts with the characters “test” and ends with the characters “.html”
name test?.html Any document that starts with the characters “test” followed by a single character and ends with the characters “.html”
name ?test* Any document where the first character doesn’t matter but is followed by the characters “test”.

First, you must create the webservice object:

OKMWebservices ws = OKMWebservicesFactory.newInstance(host);

Then you should log in using the “login” method. You can access the “login” method from the webservice object “ws” as shown below:

ws.login(user, password);

At this point you can use all the search methods from the “search” class as shown below:

ws.search.find(qParams, null)

Description:

Method Return values Description
find(QueryParams queryParams, String propertiesPlugin) List Returns a list of results filtered by the values of the queryParams parameter.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
QueryParams qParams = new QueryParams();
qParams.domain = QueryParams.DOCUMENT;
qParams.name = "test*.html";
foreach (QueryResult qr in ws.search.find(qParams, null))
{
System.Console.WriteLine(qr);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
find(QueryParams queryParams, String sortField, bool sortReverse, String propertiesPlugin) List Returns a list of results filtered by the values of the queryParams parameter.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
QueryParams _params = new QueryParams();
_params.domain = QueryParams.DOCUMENT + QueryParams.FOLDER;
_params.name = "test*";
foreach (QueryResult qr in ws.search.find(_params, SearchSortField.LAST_MODIFIED, true, null))
{
Console.WriteLine(qr.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
findSimpleNodeBasePaginated(QueryParams queryParams, int offset, int limit) SimpleNodeBaseResultSet Returns a list of SimpleNodeBase paginated results filtered by the values of the queryParams parameter.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
using com.openkm.sdk4csharp.impl;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
QueryParams qParams = new QueryParams();
qParams.domain = QueryParams.DOCUMENT;
qParams.name = "test*";
SimpleNodeBaseResultSet snbrs = ws.search.findSimpleNodeBasePaginated(qp, 0, 10);
System.Console.WriteLine("Total results:" + snbrs.total);
foreach (SimpleNodeBase snb in snbrs.results)
{
System.Console.WriteLine(snb.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
findSimpleNodeBasePaginated(QueryParams queryParams, String sortField, boolean sortReverse, int offset, int limit) SimpleNodeBaseResultSet Returns a list of SimpleNodeBase paginated results filtered by the values of the queryParams parameter.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
using com.openkm.sdk4csharp.impl;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
QueryParams qParams = new QueryParams();
qParams.domain = QueryParams.DOCUMENT;
qParams.name = "test*";
SimpleNodeBaseResultSet snbrs = ws.search.findSimpleNodeBasePaginated(params, SearchSortField.AUTHOR, true, 0, 10);
System.Console.WriteLine("Total results:" + snbrs.total);
foreach (SimpleNodeBase snb in snbrs.results)
{
System.Console.WriteLine(snb.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
findSimpleNodeBasePaginated(QueryParams queryParams, String sortField, bool sortReverse, int offset, int limit, String pluginName) SimpleNodeBaseResultSet Returns a list of SimpleNodeBase paginated results filtered by the values of the queryParams parameter.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
using com.openkm.sdk4csharp.impl;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
QueryParams qp = new QueryParams();
qp.name = FOLDER_NAME1 + "*";
qp.domain = QueryParams.FOLDER;
SimpleNodeBaseResultSet result = ws.search.findSimpleNodeBasePaginated (qp, SearchSortField.AUTHOR, true, 0, 10, "com.openkm.plugin.search.TestNodeSearch");
Console.WriteLine("Total: " + result.total);
foreach (SimpleNodeBase nodeBase in result.results)
{
if (nodeBase != null)
{
Console.WriteLine(nodeBase.toString());
}
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
getCategorizedDocuments(String categoryId) List Retrieves a list of all documents related to a category.

The values of the categoryId parameter should be a category folder UUID or a path.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8180/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
foreach (Document doc in ws.search.getCategorizedDocuments("50b7a5b9-89d2-430e-bbc9-6a6e01662a71"))
{
System.Console.WriteLine(doc);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
saveSearch(QueryParams params) Long Saves search parameters.

The queryName variable of the params parameter must be initialized.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
QueryParams qParams = new QueryParams();
qParams.domain = QueryParams.DOCUMENT;
qParams.name = "test*.html";
foreach (QueryResult qr in ws.search.find(qParams))
{
System.Console.WriteLine(qr);
}
// Save the search to be used later
qParams.queryName = "sample search";
ws.search.saveSearch(qParams);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
updateSearch(QueryParams params) void Updates previously saved search parameters.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
foreach (QueryParams qParams in ws.search.getAllSearchs())
{
if (qParams.queryName.Equals("sample search"))
{
// Change some value.
qParams.name = "admin*.html";
ws.search.updateSearch(qParams);
}
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
getSearch(int qpId) QueryParams Gets saved search parameters.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
int qpId = 1; // Some valid search id
QueryParams qParams = ws.search.getSearch(qpId);
System.Console.WriteLine(qParams);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
getAllSearches() List Retrieves a list of all saved search parameters.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
foreach (QueryParams qParams in ws.search.getAllSearches())
{
System.Console.WriteLine(qParams.queryName);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
deleteSearch(int qpId) void Deletes saved search parameters.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
int qpId = 1; // Some valid search id
ws.search.deleteSearch(qpId);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
getSearchConfig(String pluginName) NodeSearchConfig Returns a NodeSearchConfig object.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
NodeSearchConfig nodeSearchConfig = ws.search.getSearchConfig("com.openkm.plugin.search.TestNodeSearch");
Console.WriteLine(nodeSearchConfig.toString());
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
getSearchPlugins() SearchPluginList Returns a SearchPluginList object.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
SearchPluginList pluginList = ws.search.getSearchPlugins();
foreach (SearchPlugin searchPlugin in pluginList.searchPlugins)
{
Console.WriteLine(searchPlugin.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
findSimpleNodeBaseByQueryPaginated(String query, int offset, int limit) SimpleNodeBaseResultSet Returns a list of paginated results filtered by the values of the query parameter.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
SimpleNodeBaseResultSet snbr = ws.search.findSimpleNodeBaseByQueryPaginated("text:grial AND name:t*.pdF", 0, 10);
foreach (SimpleNodeBase nodeBase in snbr.results)
{
if(nodeBase != null)
{
System.Console.WriteLine(nodeBase.toString());
}
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
findSimpleNodeBaseByQueryPaginated(String query, String sortField, bool sortReverse, int offset, int limit) SimpleNodeBaseResultSet Returns a list of paginated results filtered by the values of the query parameter.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
SimpleNodeBaseResultSet snbr= ws.search.findSimpleNodeBaseByQueryPaginated("text:grial AND name:t*.pdF", SearchSortField.NAME, true, 0, 10);
foreach (SimpleNodeBase nodeBase in snbr.results)
{
if(nodeBase != null)
{
System.Console.WriteLine(nodeBase.toString());
}
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
findByQuery(String query, String propertiesPlugin) List Returns a list of results filtered by the values of the queryParams parameter.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
foreach (QueryResult qr in ws.search.findByQuery("keyword:test AND name:t*.pdf", null))
{
System.Console.WriteLine(qr);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
findByQuery(String query, String sortField, bool sortReverse, String propertiesPlugin) List Returns a list of results filtered by the query parameter.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
foreach (QueryResult qr in ws.search.findByQuery("keyword: test", SearchSortField.NAME, true, null))
{
System.Console.WriteLine(qr);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
findAllDefaultByNodeClass(long ncId) List Retrieves a list of saved searches for a NodeClass.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
long ncId = 1;
List<QueryParams> queryParams = ws.search.findAllDefaultByNodeClass(ncId);
foreach (QueryParams qParams in queryParams)
{
System.Console.WriteLine(qParams.queryName);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
findWithMetadata(QueryParams _params, String propertiesPlugin, List groups) List Returns a list of results with metadata values filtered by the queryParams parameter.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
// QueryParams
QueryParams qp = new QueryParams();
qp.folderRecursive = true;
qp.domain = QueryParams.DOCUMENT | QueryParams.FOLDER | QueryParams.RECORD | QueryParams.MAIL;
qp.name = "test*";
// Properties
Dictionary<string, string> properties = new Dictionary<string, string>();
properties.Add("okp:consulting.name", "test");
qp.properties = properties;
// Groups
List<string> groups = new List<string>();
groups.Add("okg:consulting");
List<QueryResult> queryResults = ws.search.findWithMetadata(qp, null, groups);
foreach (QueryResult qResult in queryResults)
{
System.Console.WriteLine(qResult.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
findWithMetadata(QueryParams queryParams, String sortField, bool sortReverse, String propertiesPlugin, List groups) List Returns a list of results with metadata values filtered by the queryParams parameter.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
// QueryParams
QueryParams qp = new QueryParams();
qp.folderRecursive = true;
qp.domain = QueryParams.DOCUMENT | QueryParams.FOLDER | QueryParams.RECORD | QueryParams.MAIL;
qp.name = "test*";
// Properties
Dictionary<string, string> properties = new Dictionary<string, string>();
properties.Add("okp:consulting.name", "test");
qp.properties = properties;
// Groups
List<string> groups = new List<string>();
groups.Add("okg:consulting");
List<QueryResult> queryResults = ws.search.findWithMetadata(qp, SearchSortField.NAME, true, null, groups);
foreach (QueryResult qr in queryResults)
{
Console.WriteLine(qr.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
findWithMetadataPaginated(QueryParams queryParams, int offset, int limit, String propertiesPlugin, List groups) ResultSet Returns a list of paginated results with metadata values filtered by the queryParams parameter.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
// QueryParams
QueryParams qp = new QueryParams();
qp.domain = QueryParams.DOCUMENT | QueryParams.FOLDER | QueryParams.RECORD | QueryParams.MAIL;
qp.name = "test*";
// Properties
Dictionary<string, string> properties = new Dictionary<string, string>();
properties.Add("okp:consulting.name", "test");
qp.properties = properties;
// Groups
List<string> groups = new List<string>();
groups.Add("okg:consulting");
ResultSet resulSet = ws.search.findWithMetadataPaginated(qp, 0, 10, null, groups);
System.Console.WriteLine("Total results: " + rs.total.ToString());
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
findWithMetadataPaginated(QueryParams queryParams, String sortField, bool sortReverse, int offset, int limit, String propertiesPlugin, List groups) ResultSet Returns a list of paginated results with metadata values filtered by the queryParams parameter.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
// QueryParams
QueryParams qp = new QueryParams();
qp.domain = QueryParams.DOCUMENT | QueryParams.FOLDER | QueryParams.RECORD | QueryParams.MAIL;
qp.name = "test*";
// Properties
Dictionary<string, string> properties = new Dictionary<string, string>();
properties.Add("okp:consulting.name", "test");
qp.properties = properties;
// Groups
List<string> groups = new List<string>();
groups.Add("okg:consulting");
ResultSet rs = ws.search.findWithMetadataPaginated(qp, SearchSortField.AUTHOR, true, 0, 10, null, groups);
Console.WriteLine("Total results: " + rs.total.ToString());
foreach (QueryResult qr in rs.results)
{
Console.WriteLine(qr.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
getMimeTypes() List Retrieves a list of MIME types.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
foreach (MimeType mimeType in ws.search.getMimeTypes())
{
System.Console.WriteLine(mimeType.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}

Description:

Method Return values Description
csvExport(String lang, QueryParams queryParams, List propertyGroups, bool compact) InputStream Export as a csv a list of results filtered by the values of the queryParams parameter.

The parameter lang must be ISO 639-1 compliant.

Example:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
namespace OKMRest
{
public class Program
{
static void Main(string[] args)
{
String host = "http://localhost:8080/openkm";
String username = "okmAdmin";
String password = "admin";
OKMWebservice ws = OKMWebservicesFactory.newInstance(host);
try
{
ws.login(user, password);
QueryParams _params = new QueryParams();
_params.domain = QueryParams.DOCUMENT + QueryParams.FOLDER;
_params.name = "test*";
List <string > propertyGroups = new List<string>();
propertyGroups.Add("okg:consulting");
propertyGroups.Add("okg:technology");
Stream stream = ws.search.csvExport("es-ES", _params, propertyGroups, false);
FileStream destFile = new FileStream("C:\\Testing\\export.csv", FileMode.OpenOrCreate);
stream.CopyTo(destFile);
destFile.Dispose();
stream.Dispose();
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}