Document samples
Basics
On most methods, you'll see the parameter named "docId" and "fldId". The values of these parameters can be the UUIDs of a document and a folder, respectively.
Example of docId:
- Using UUID -> "f123a950-0329-4d62-8328-0ff500fd42db";
Suggested code sample
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);
Once you are logged in to the webservice, the session is kept in the webservice object. Then you can use the other API methods.
At this point you can use all the Document methods from the "document" class as shown below:
ws.document.createDocument("1be884f4-5758-4985-94d1-f18bfe004db8", "logo.png", fs);
Methods
createDocument
Description:
Method | Return values | Description |
---|---|---|
createDocument(String fldId, FileInfo fi) |
Document |
Creates a new document and returns an object of type Document. |
Parameters:
|
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;
using System.IO;
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);
FileInfo fileInfo = new FileInfo("E:\\doc.docx");
ws.document.createDocument(fldId, fileInfo);
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
createDocument
Description:
Method | Return values | Description |
---|---|---|
createDocument(String uuid, String name, FileStream fs, long nodeClass) |
Document |
Creates a new document with a nodeClass. Returns a Document object with the properties of the created document. |
The value of the uuid parameter should be a folder or record node UUID. The nodeClass parameter should be a valid business type (series) value. A nodeClass value of 0 means there's no business type (series) selected. |
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;
using System.IO;
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);
FileStream fileStream = new FileStream("E:\\logo.png", FileMode.Open);
long nodeClass = 0;
ws.document.createDocument("4b88cbe9-e73d-45fc-bac0-35e0d6e59e43", "logo.png", fileStream, nodeClass);
fileStream.Dispose();
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
createDocument
Description:
Method | Return values | Description |
---|---|---|
createDocument(String fldId, String name, FileStream fs) |
Document |
Creates a new document and returns an object of type Document. |
Parameters:
|
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;
using System.IO;
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);
FileStream fileStream = new FileStream("E:\\logo.png", FileMode.Open);
ws.document.createDocument(fldId, "logo.png", fileStream);
fileStream.Dispose();
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
deleteDocument
Description:
Method | Return values | Description |
---|---|---|
deleteDocument(String docId) |
void |
Deletes a document. |
When a document is deleted it is automatically moved to the /okm:trash/userId folder. |
Example:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
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);
ws.document.deleteDocument("f123a950-0329-4d62-8328-0ff500fd42db");
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
System.Console.ReadKey();
}
}
}
getDocumentProperties
Description:
Method | Return values | Description |
---|---|---|
getDocumentProperties(String docId) |
Document |
Returns the document properties. |
Example:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
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);
System.Console.WriteLine(ws.document.getDocumentProperties("f123a950-0329-4d62-8328-0ff500fd42db").toString());
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
getContent
Description:
Method | Return values | Description |
---|---|---|
getContent(String docId) |
Stream |
Retrieves a document's content - binary data - of the current document version. |
If you send the file across a Servlet response, we suggest setting the content length with:
We've encountered incorrect size problems while using:
|
Example:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.impl;
using System.IO;
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);
Stream tmpFile = ws.document.getContent("f123a950-0329-4d62-8328-0ff500fd42db");
FileStream destFile = new FileStream("C:\\test.png", FileMode.OpenOrCreate);
tmpFile.CopyTo(destFile);
destFile.Close();
tmpFile.Close();
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
getContentByVersion
Description:
Method | Return values | Description |
---|---|---|
getContentByVersion(String docId,String versionId) |
Stream |
Retrieves a document's content (binary data) of a specific document version. |
If you send the file across a Servlet response, we suggest setting the content length with:
We've encountered incorrect size problems while using:
|
Example:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using System.IO;
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);
Stream tmpFile = ws.document.getContentByVersion("f123a950-0329-4d62-8328-0ff500fd42db","1.1");
FileStream destFile = new FileStream("C:\\test.png", FileMode.OpenOrCreate);
tmpFIle.CopyTo(destFile);
destFile.Close();
tmpFile.Close();
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
getDocumentChildren
Description:
Method | Return values | Description |
---|---|---|
getDocumentChildren(String fldId) |
List<Document> |
Returns a list of all documents whose parent is fldId. |
The parameter fldId can be a folder or a record node. |
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 (Document doc in ws.document.getDocumentChildren("f123a950-0329-4d62-8328-0ff500fd42db"))
{
System.Console.WriteLine(doc);
}
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
renameDocument
Description:
Method | Return values | Description |
---|---|---|
renameDocument(String docId, String newName) |
document |
Changes the name of a document. |
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);
Document doc = ws.document.renameDocument("f123a950-0329-4d62-8328-0ff500fd42db", "new_name.png");
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
setProperties
Description:
Method | Return values | Description |
---|---|---|
setProperties(String docId, String title, String description, String lang, List<String> keywords, List<String> categories) |
void |
Changes some document properties. |
Variables allowed to be changed:
Only non-null and non-empty variables will be taken into consideration. |
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);
List<string> keywords = new List<string>();
keywords.Add("testA");
keywords.Add("testB");
List<string> categories = new List<string>();
categories.Add("/okm:categories");
ws.document.setProperties("f123a950-0329-4d62-8328-0ff500fd42db", "anyTitle", "anyDescription", "es-ES", keywords, categories);
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
checkout
Description:
Method | Return values | Description |
---|---|---|
checkout(String docId) |
void |
Marks the document for editing. |
Only one user can modify a document at the same time. Before starting editing you must perform a checkout action that locks the editing process for other users and allows only the user who executed the action to edit the document. |
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);
ws.document.checkout("f123a950-0329-4d62-8328-0ff500fd42db");
// At this point the document is locked for other users except for the user who executed the action
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
cancelCheckout
Description:
Method | Return values | Description |
---|---|---|
cancelCheckout(String docId) |
void |
Cancels a document edition. |
This action can only be done by the user who previously executed the checkout action. |
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);
// At this point the document is locked for other users except for the user who executed the action
ws.document.cancelCheckout("f123a950-0329-4d62-8328-0ff500fd42db");
// At this point other users are allowed to execute a checkout and modify the document
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
forceCancelCheckout
Description:
Method | Return values | Description |
---|---|---|
forceCancelCheckout(String docId) |
void |
Cancels a document edition. |
This method allows canceling the edition on any document. It is not required that the same user who previously executed the checkout action perform this action. This action can only be done by a superuser (a user with ROLE_ADMIN). |
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);
// At this point the document is locked for other users except for the user who executed the action
ws.document.forceCancelCheckout("f123a950-0329-4d62-8328-0ff500fd42db");
// At this point other users are allowed to execute a checkout and modify the document
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
isCheckedOut
Description:
Method | Return values | Description |
---|---|---|
isCheckedOut(String docId) |
Boolean |
Returns a boolean indicating whether the document is being edited. |
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);
System.Console.WriteLine("Is the document checkout:"+ ws.document.isCheckedOut("f123a950-0329-4d62-8328-0ff500fd42db").ToString());
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
checkin
Description:
Method | Return values | Description |
---|---|---|
checkin(String docId, String comment, FileStream fs) |
Version |
Updates a document with a new version and returns an object with the new Version values. |
Only the user who started the editing (checkout) is allowed to update the document. |
Example:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
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);
FileStream fs = new FileStream("E:\\logo.png", FileMode.Open);
ws.document.checkin("f123a950-0329-4d62-8328-0ff500fd42db","optional some comment",fs);
fs.Dispose();
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
checkin
Description:
Method | Return values | Description |
---|---|---|
checkin(String docId, String comment, FileStream fs, int increment) |
Version |
Updates a document with a new version and returns an object with new Version values. |
The value of the increment variable must be 1 or greater. The valid values of the increment variable depend on the VersionNumberAdapter you have enabled. Only the user who started the edition - checkout - is allowed to update the document. |
Example:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
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);
FileStream fs = new FileStream(@"C:\Desktop\logo.png", FileMode.Open);
ws.document.checkin("f123a950-0329-4d62-8328-0ff500fd42db", "optional some comment", fs, 1);
fs.Dispose();
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
isLocked
Description:
Method | Return values | Description |
---|---|---|
isLocked(String docId) |
Boolean |
Returns a boolean indicating whether the document is locked. |
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);
System.Console.WriteLine("Is document locked:" + ws.document.isLocked("f123a950-0329-4d62-8328-0ff500fd42db").ToString());
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
getLockInfo
Description:
Method | Return values | Description |
---|---|---|
getLockInfo(String docId) |
LockInfo |
Returns an object with the lock information. |
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);
System.Console.WriteLine(ws.document.getLockInfo("f123a950-0329-4d62-8328-0ff500fd42db"));
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
purgeDocument
Description:
Method | Return values | Description |
---|---|---|
purgeDocument(String docId) |
void |
The document is permanently removed from the repository. |
Usually, you will purge documents from /okm:trash/userId - the personal trash user locations - but it is possible to directly purge any document from the whole repository. When a document is purged it can only be restored from a previous repository backup. The purge action removes the document permanently from the repository. |
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);
ws.document.purgeDocument("f123a950-0329-4d62-8328-0ff500fd42db");
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
moveDocument
Description:
Method | Return values | Description |
---|---|---|
moveDocument(String docId, String dstId) |
void |
Moves a document into a folder or record. |
The values of the dstId parameter should be a folder or record UUID or path. |
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);
ws.document.moveDocument("f123a950-0329-4d62-8328-0ff500fd42db", fldId);
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
copyDocument
Description:
Method | Return values | Description |
---|---|---|
copyDocument(String docId, String fldId, String newName) |
Document |
Copies a document into a folder or record. |
The value of the fldId parameter should be a folder or record UUID. When the newName parameter value is null, the document will preserve the same name. Only the binary data and the security grants are copied to the destination, the metadata, keywords, etc. of the document are not copied. See "extendedDocumentCopy" method for this feature. |
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);
ws.document.copyDocument("f123a950-0329-4d62-8328-0ff500fd42db", fldId, "name.png");
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
getVersionHistorySize
Description:
Method | Return values | Description |
---|---|---|
getVersionHistorySize(String docId) |
long |
Returns the total size in bytes of all documents in the document history. |
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);
long byteCount = ws.document.getVersionHistorySize(docUUid);
string[] suf = { "B", "KB", "MB", "GB", "TB", "PB", "EB" }; //Longs run out around EB
long bytes = Math.Abs(byteCount);
int place = Convert.ToInt32(Math.Floor(Math.Log(bytes, 1024)));
double num = Math.Round(bytes / Math.Pow(1024, place), 1);
System.Console.WriteLine((Math.Sign(byteCount) * num).ToString() + suf[place]);
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
isValidDocument
Description:
Method | Return values | Description |
---|---|---|
isValidDocument(String docId) |
Boolean |
Returns a boolean that indicates whether the node is a document. |
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);
// Return true
ws.document.isValidDocument("f123a950-0329-4d62-8328-0ff500fd42db");
// Return false
ws.document.isValidDocument("/okm:root");
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
getDocumentPath
Description:
Method | Return values | Description |
---|---|---|
getDocumentPath(String docId) |
String |
Converts a document UUID to a document path. |
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);
System.Console.WriteLine(ws.document.getDocumentPath("e339f14b-4d3a-489c-91d3-05e4575709d2"));
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
extendedDocumentCopy
Description:
Method | Return values | Description |
---|---|---|
extendedDocumentCopy(String docId, String fldId, String name, bool categories, boolean keywords, |
void |
Copies a document with associated data into a folder or record. |
The value of the nodeId parameter should be a document UUID. The value of the dstId parameter should be a folder or a record UUID. When the newName parameter value is null, the document will preserve the same name. By default, only the binary data and the security grants are copied; the metadata, keywords, etc. of the document are not copied. Additional:
|
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);
ws.document.extendedDocumentCopy("f123a950-0329-4d62-8328-0ff500fd42db", "d1cad1b0-3c4f-4ad3-8ee1-6ad779fa227c", "newDoc.docx", true, true, true, true, true, true);
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
getExtractedText
Description:
Method | Return values | Description |
---|---|---|
getExtractedText(String docId) |
String |
Returns a String with the text extracted by the text extractor process. |
When a document is uploaded into OpenKM it goes into the text extraction queue. There's a crontab that periodically processes this queue and extracts document contents. Unfortunately, there is no direct way to know via the API if a document has been processed, because this information is only stored at the database level. Despite this restriction, administrators can perform database queries to retrieve this information. Check Repository samples for accessing database level. More information at Statistics. |
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);
System.Console.WriteLine(ws.document.getExtractedText("f123a950-0329-4d62-8328-0ff500fd42db"));
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
setExtractedText
Description:
Method | Return values | Description |
---|---|---|
setExtractedText(String uuid, FileStream fileStream) |
void |
Sets the extracted text. |
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);
FileStream fs = new FileStream(@"C:\test.pdf", FileMode.Open, FileAccess.Read);
ws.document.setExtractedText("f123a950-0329-4d62-8328-0ff500fd42db", fs);
fs.Close();
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
getThumbnail
Description:
Method | Return values | Description |
---|---|---|
getThumbnail(String docId, ThumbnailType type) |
Stream |
Returns thumbnail image data. |
Available types:
Each thumbnail type has its own image dimensions. |
Example:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using System.IO;
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);
Stream st = ws.document.getThumbnail("f123a950-0329-4d62-8328-0ff500fd42db", ThumbnailType.THUMBNAIL_LIGHTBOX);
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
setLanguage
Description:
Method | Return values | Description |
---|---|---|
setLanguage(String docId, String lang) |
void |
Sets a document language. |
The parameter lang must be ISO 639-1 compliant. More information at https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes. |
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);
ws.document.setLanguage("f123a950-0329-4d62-8328-0ff500fd42db", "es-ES");
} catch (Exception e) {
System.Console.WriteLine(e.ToString());
}
}
}
}
setDocumentTitle
Description:
Method | Return values | Description |
---|---|---|
setDocumentTitle(String docId, String title) |
void |
Sets the document title. |
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);
ws.document.setDocumentTitle("f123a950-0329-4d62-8328-0ff500fd42db", "Some title here");
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
createDocumentFromTemplate
Description:
Method | Return values | Description |
---|---|---|
createDocumentFromTemplate(String uuid, String dstPath , Boolean categories, Boolean keywords, Boolean notes, Boolean security, Dictionary<String, String> properties) |
Document |
Creates a new document from a template and returns a Document object. |
The uuid parameter is the UUID value of the template file. The dstPath value is the document destination path. When the template uses metadata groups to fill in fields, these values are mandatory and must be set in the properties parameter. For more information about templates and metadata, take a look at Creating templates. Additional:
|
Example:
The example below is based on the Creating PDF template sample.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.util;
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);
Dictionary<String, String> properties = new Dictionary<String, String>();
properties.Add("okp:tpl.name", "Some name");
DateTime date = DateTime.Now;
// Value must be converted to String ISO 8601 compliant
properties.Add("okp:tpl.bird_date", ISO8601.formatBasic(date));
properties.Add("okp:tpl.language", "java");
ws.document.createFromTemplate("f123a950-0329-4d62-8328-0ff500fd42db", "/okm:root/test.pdf", false, false, false, false, properties);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
updateDocumentFromTemplate
Description:
Method | Return values | Description |
---|---|---|
updateDocumentFromTemplate(String uuid, String dstId, Map<String, String> properties) |
Document |
Updates a document previously created from a template and returns a Document object. |
The uuid value is the UUID value of the template file. The dstId is the UUID of the document to be updated. This method only makes sense when a template uses metadata groups to fill fields. For more information about Templates and metadata, take a look at Creating templates. |
Example:
The example below is based on the Creating PDF template sample.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.util;
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);
Dictionary<String, String> properties = new Dictionary<String, String>();
properties.Add("okp:tpl.name", "Some name");
DateTime date = DateTime.Now;
// Value must be converted to String ISO 8601 compliant
properties.Add("okp:tpl.bird_date", ISO8601.formatBasic(date));
properties.Add("okp:tpl.language", "java");
ws.document.updateFromTemplate("9fa9787e-d8b0-4ff7-905a-a89f0b228ec8", "058b9379-b441-454d-8590-00d5a280ce79", properties);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
getDetectedLanguages
Description:
Method | Return values | Description |
---|---|---|
getDetectedLanguages() |
List<String> |
Returns a list of available document languages that OpenKM can identify. |
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 (String lang in ws.document.getDetectedLanguages())
{
System.Console.WriteLine(lang);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
getCheckedOut
Description:
Method | Return values | Description |
---|---|---|
getCheckedOut() |
List<Document> |
Returns a list of documents checked out by the user. |
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);
List<Document> docs = ws.document.getCheckedOut();
foreach (Document doc in docs)
{
System.Console.WriteLine(doc.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
setDocumentDescription
Description:
Method | Return values | Description |
---|---|---|
setDocumentDescription(String docId, String description) |
void |
Sets a document description. |
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);
ws.document.setDocumentDescription("f123a950-0329-4d62-8328-0ff500fd42db", "Some description here");
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
createWizardDocument
Description:
Method | Return values | Description |
---|---|---|
createWizardDocument(String docId, long stage) |
WizardNode |
Creates a document with a wizard. |
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);
FileStream fs = new FileStream(LOCAL_DOC, FileMode.Open, FileAccess.Read);
long nodeClass= 1;
WizardNode wizardNode = ws.document.createWizardDocument("f123a950-0329-4d62-8328-0ff500fd42db","test.docx", nodeClass, fs);
fs.Close();
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
getNumberOfPages
Description:
Method | Return values | Description |
---|---|---|
getNumberOfPages(String docId) |
int |
Gets the number of pages of a document. |
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);
System.Console.WriteLine("The number of pages is : " + ws.document.getNumberOfPages("f123a950-0329-4d62-8328-0ff500fd42db").ToString());
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
getPageAsImage
Description:
Method | Return values | Description |
---|---|---|
getPageAsImage(String uuid, int pageNumber, int maxWidth, int maxHeight) |
String |
Returns a specific page as an image encoded as a base64 string. |
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);
System.Console.WriteLine(ws.document.getPageAsImage("f123a950-0329-4d62-8328-0ff500fd42db", 1, 150, 150));
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
IsAttachment
Description:
Method | Return values | Description |
---|---|---|
isAttachment(String docId) |
Boolean |
Returns a boolean that indicates whether the node is a mail attachment. |
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);
System.Console.Writeline(ws.document.isAttachment("1ec49da9-1746-4875-ae32-9281d7303a62").ToString());
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
getDocumentPdf
Description:
Method | Return values | Description |
---|---|---|
getDocumentPdf(String uuid) |
Stream |
Returns a PDF of the document. |
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);
Document doc = ws.document.getDocumentProperties("4b88cbe9-e73d-45fc-bac0-35e0d6e59e43");
Stream stream = ws.document.getDocumentPdf(doc.uuid);
FileStream docFile = new FileStream("D:\\test.pdf", FileMode.OpenOrCreate, FileAccess.ReadWrite);
stream.CopyTo(docFile);
stream.Close();
docFile.Close();
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}