Mail samples
Basics
On most methods, you'll see the parameter named "mailId". The value of this parameter can be a valid mail UUID.
Example of fldId:
- Using UUID -> "50b7a5b9-89d2-430e-bbc9-6a6e01662a71"
Suggested code sample
First, you must create the webservice object:
OKMWebservices ws = OKMWebservicesFactory.newInstance(host);
Then you should log in using the method "login". You can access the "login" method from the web service object "ws" as shown below:
ws.login(user, password);
Once you are logged in with the web service, the session is kept in the web service object. Then you can use the other API methods.
At this point you can use all the Mail methods from the "mail" class as shown below:
ws.mail.getMailProperties("05d9b8e3-f9c1-4ace-9007-afd775dbbced")
Methods
getMailProperties
Description:
Method | Return values | Description |
---|---|---|
getMailProperties(String mailId) |
|
Returns the mail properties. |
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.mail.getMailProperties("f0064cf3-4776-44c2-868a-f08697a6957e").toString());
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
deleteMail
Description:
Method | Return values | Description |
---|---|---|
deleteMail(String mailId) |
void |
Deletes a mail. |
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.mail.deleteMail("50b7a5b9-89d2-430e-bbc9-6a6e01662a71");
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
purgeMail
Description:
Method | Return values | Description |
---|---|---|
purgeMail(String mailId) |
void |
Folder is permanently removed from the repository. |
Usually, you will purge mails into /okm:trash/userId - the user's personal trash location - but it is possible to directly purge any mail from the repository. When a mail is purged it can only be restored from a previous repository backup. The purge action permanently removes the mail 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.mail.purgeMail("50b7a5b9-89d2-430e-bbc9-6a6e01662a71");
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
renameMail
Description:
Method | Return values | Description |
---|---|---|
renameMail(String mailId, String newName) |
|
Renames a mail. |
From the OpenKM frontend UI the subject is used to show the mail name in the file browser table. That means the change will take effect internally on the mail path, but will not be visible in the default UI. |
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.mail.renameMail("50b7a5b9-89d2-430e-bbc9-6a6e01662a71", "new name");
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
moveMail
Description:
Method | Return values | Description |
---|---|---|
moveMail(String mailId, String dstId) |
void |
Moves a mail into a folder or record. |
The value of the dstId parameter should be a folder or record UUID. |
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.mail.moveMail("50b7a5b9-89d2-430e-bbc9-6a6e01662a71", "055e4384-7c70-4456-b32b-f5a55a79861f");
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
copyMail
Description:
Method | Return values | Description |
---|---|---|
public void copyMail(String mailId, String dstId, String newName) |
|
Copies mail into a folder or record. |
The values of the dstId parameter should be a folder or record UUID. When the newName parameter value is null, the mail will preserve the same name. Only the security grants are copied to the destination; the folder's metadata, keywords, etc., are not copied. See "extendedMailCopy" 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.mail.copyMail("50b7a5b9-89d2-430e-bbc9-6a6e01662a71", "055e4384-7c70-4456-b32b-f5a55a79861f", "new_name");
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
extendedMailCopy
Description:
Method | Return values | Description |
---|---|---|
extendedMailCopy(String mailId, String dstId, bool categories, bool keywords, bool propertyGroups, bool notes, |
|
Copies mail with associated data into a folder or record. |
The values of the dstId parameter should be a folder or record UUID. By default, only the binary data and the security grants are copied; the metadata, keywords, etc., of the folder 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.mail.extendedMailCopy("fe51797c-be0b-4076-8f4b-b4fffe8fd2bc", "055e4384-7c70-4456-b32b-f5a55a79861f", true, true, true, true, true, true, null);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
getMailChildren
Description:
Method | Return values | Description |
---|---|---|
getMailChildren(String fldId) |
List<Mail> |
Returns a list of all mails whose parent is fldId. |
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 (Mail mail in ws.mail.getMailChildren("055e4384-7c70-4456-b32b-f5a55a79861f"))
{
System.Console.WriteLine(mail);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
isValidMail
Description:
Method | Return values | Description |
---|---|---|
isValidMail(String mailId) |
Boolean |
Returns a boolean that indicates whether the node is a mail. |
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);
// Return true
ws.mail.isValidMail("50b7a5b9-89d2-430e-bbc9-6a6e01662a71");
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
getMailPath
Description:
Method | Return values | Description |
---|---|---|
getMailPath(String mailId) |
String |
Converts a mail UUID to a folder 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.mail.getMailPath("50b7a5b9-89d2-430e-bbc9-6a6e01662a71"));
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
createAttachment
Description:
Method | Return values | Description |
---|---|---|
createAttachment(String mailId, String docName, InputStream is) |
Document |
Stores an attachment in the mail. |
Example:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
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 fs = new FileStream("E:\\logo.png", FileMode.Open);
ws.mail.createAttachment("50b7a5b9-89d2-430e-bbc9-6a6e01662a71", "log.png", fs);
fs.Dispose();
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
deleteAttachment
Description:
Method | Return values | Description |
---|---|---|
deleteAttachment(String mailId, String docId) |
void |
Deletes a mail attachment. |
The value of the docId parameter can be a valid document 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.mail.deleteAttachment("50b7a5b9-89d2-430e-bbc9-6a6e01662a71", "e339f14b-4d3a-489c-91d3-05e4575709d2");
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
getAttachments
Description:
Method | Return values | Description |
---|---|---|
getAttachments(String mailId) |
List<Document> |
Retrieves a list of all document attachments of a mail. |
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.mail.getAttachments("50b7a5b9-89d2-430e-bbc9-6a6e01662a71"))
{
System.Console.WriteLine(doc);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
sendMailWithAttachments
Description:
Method | Return values | Description |
---|---|---|
sendMailWithAttachments(List<String> to, List<String> cc, List<String> bcc, List<String> replyTo, String subject, String body, |
|
Sends a mail message with an attachment. |
The value of the dstId parameter should be a folder or record UUID or path. The dstId parameter indicates where the mail will be stored in the repository after being sent. Other 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);
List<String> to = new List<String>();
to.Add("destination@mail.com");
List<String> cc = new List<String>();
List<String> bcc = new List<String>();
List<String> docsId = new List<String>();
List<String> replyTo= new List<String>();
docsId.Add("7aa523e0-06cf-4733-b8c8-cc74d8b2716d");
docsId.Add("f123a950-0329-4d62-8328-0ff500fd42db");
ws.mail.sendMailWithAttachments(to, cc, bcc, replyTo, "some subject", "This mail its a test.", docsId, "055e4384-7c70-4456-b32b-f5a55a79861f");
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
sendMailWithAttachments
Description:
Method | Return values | Description |
---|---|---|
sendMailWithAttachments(String from, List<String> to, List<String> cc, List<String> bcc, List<String> replyTo, String subject, |
|
Sends a mail message with an attachment. |
The value of the dstId parameter should be a folder or record UUID or path. The dstId parameter indicates where the mail will be stored in the repository after being sent. Other 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);
string from = "test@none.com";
List<String> to = new List<String>();
to.Add("destination@mail.com");
List<String> cc = new List<String>();
List<String> bcc = new List<String>();
List<String> docsId = new List<String>();
List<String> replyTo= new List<String>();
docsId.Add("7aa523e0-06cf-4733-b8c8-cc74d8b2716d");
docsId.Add("f123a950-0329-4d62-8328-0ff500fd42db");
ws.mail.sendMailWithAttachments(from, to, cc, bcc, replyTo, "some subject", "This mail its a test.", docsId, "055e4384-7c70-4456-b32b-f5a55a79861f");
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
importEml
Description:
Method | Return values | Description |
---|---|---|
importEml(String dstId, String title, FileStream fs) |
|
Imports a mail in EML format. |
The value of the dstId parameter should be a folder or record UUID or path. The dstId parameter indicates where the mail will be stored in the repository after being sent. |
Example:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
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("C:\\Documents\\test.eml", FileMode.Open);
Mail mail = ws.mail.importEml("f123a950-0329-4d62-8328-0ff500fd42db", "Test", filestream);
System.Console.WriteLine(mail);
filestream.Close();
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
importMsg
Description:
Method | Return values | Description |
---|---|---|
importMsg(String dstId, String title, FileStream fs) |
|
Imports a mail in MSG format. |
The value of the dstId parameter should be a folder or record UUID or path. The dstId parameter indicates where the mail will be stored in the repository after being sent. |
Example:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using com.openkm.sdk4csharp;
using com.openkm.sdk4csharp.bean;
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("C:\\Documents\\test.msg", FileMode.Open);
Mail mail = ws.mail.importMsg("f123a950-0329-4d62-8328-0ff500fd42db", "Test", filestream);
System.Console.WriteLine(mail);
filestream.Close();
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
setMailTitle
Description:
Method | Return values | Description |
---|---|---|
setMailTitle(String mailId, String title) |
|
Sets the mail title. |
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.mail.setMailTitle("68ed7a93-005c-4ec6-ac01-bb151573c775", "new title");
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
sendMail
Description:
Method | Return values | Description |
---|---|---|
sendMail(List<String> to, String subject, String body) |
Void |
Sends a mail. |
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);
List<String> to = new List<string>();
to.Add("some@mail.com");
ws.mail.sendMail(to, "Testing sending mail from OpenKM", "Test message body.");
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
sendMail
Description:
Method | Return values | Description |
---|---|---|
sendMail(String from, List<String> to, String subject, String body) |
Void |
Sends a mail. |
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);
string from = "test@mome.com"
List<String> to = new List<string>();
to.Add("some@mail.com");
ws.mail.sendMail(from, to, "Testing sending mail from OpenKM", "Test message body.");
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
setMailDescription
Description:
Method | Return values | Description |
---|---|---|
setMailDescription(String mailId, String description) |
void |
Sets the mail title. |
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.mail.setMailDescription("68ed7a93-005c-4ec6-ac01-bb151573c775", "Any description");
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
getMailContent
Description:
Method | Return values | Description |
---|---|---|
getMailContent(String mailId) |
Stream |
Sets the mail title. |
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);
Stream s = ws.mail.getMailContent("68ed7a93-005c-4ec6-ac01-bb151573c775");
FileStream mailFile = new FileStream("C:\\mailtest.msg", FileMode.OpenOrCreate);
s.CopyTo(mailFile);
s.Close();
mailFile.Close();
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
getMailThumbnail
Description:
Method | Return values | Description |
---|---|---|
getMailThumbnail(String mailId, String 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;
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 s = ws.mail.getMailThumbnail("68ed7a93-005c-4ec6-ac01-bb151573c775", ThumbnailType.THUMBNAIL_PROPERTIES);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
createWizardMail
Description:
Method | Return values | Description |
---|---|---|
createWizardMail(String uuid, String title, FileStream fileStream, String type) |
WizardNode |
Creates a mail with a wizard. |
The Wizard node contains the steps that might be followed by the 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);
Folder fld = ws.createFolder("f123a950-0329-4d62-8328-0ff500fd42db", "Test");
FileStream filestream = new FileStream("C:\\testing.msg", FileMode.Open, FileAccess.Read);
WizardNode wn = ws.mail.createWizardMail(fld.uuid, "Any title", filestream, Mail.ORIGIN_MSG);
filestream.Close();
System.Console.WriteLine(wn.toString());
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
getMailAccounts
Description:
Method | Return values | Description |
---|---|---|
getMailAccounts() |
List<MailAccount> |
Retrieves a list of user email accounts. |
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 (MailAccount mail in ws.mail.getMailAccounts())
{
System.Console.WriteLine(mail.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
getMailMessages
Description:
Method | Return values | Description |
---|---|---|
getMailMessages(long accountId, long start) |
MailServerMessages |
Retrieves a list of messages in the email server for an email account. |
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 accoundId = 1;
long start = 1;
MailServerMessages msm = ws.mail.getMailMessages(accoundId, start);
System.Console.WriteLine(msm.toString());
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
addMailAccount
Description:
Method | Return values | Description |
---|---|---|
addMailAccount(MailAccount mailAccount) |
void |
Add an email account. |
It is good practice to create an account and verify the mail configuration with testMailAccount(MailAccount mail). When you do not set the user, the account will be added by default to the logged-in 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);
MailAccount mailAcount = new MailAccount();
mailAcount.mailProtocol = MailAccount.PROTOCOL_IMAPS;
mailAcount.mailUser = "test@none.com";
mailAcount.mailPassword = "123456";
mailAcount.mailHost = "imap.gmail.com";
mailAcount.mailFolder = "OpenKM";
mailAcount.active = true;
mailAcount.recursive = true;
ws.mail.addMailAccount(mailAcount);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
updateMailAccount
Description:
Method | Return values | Description |
---|---|---|
updateMailAccount(MailAccount mailAccount) |
void |
Updates the main configuration data of an email account. |
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);
MailAccount mailAcount = new MailAccount();
mailAcount.id = 1;// Valid mail account id;
mailAcount.mailProtocol = MailAccount.PROTOCOL_IMAPS;
mailAcount.mailUser = "test@none.com";
mailAcount.mailPassword = "123456";
mailAcount.mailHost = "imap.gmail.com";
mailAcount.mailFolder = "OpenKM";
mailAcount.active = false;
mailAcount.mailMarkDeleted = false;
mailAcount.recursive = false;
ws.mail.updateMailAccount(mailAcount);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
testMailAccount
Description:
Method | Return values | Description |
---|---|---|
testMailAccount(MailAccount mailAccount) |
void |
Verifies the connectivity of an email account. |
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);
MailAccount mailAcount = new MailAccount();
mailAcount.mailProtocol = MailAccount.PROTOCOL_IMAPS;
mailAcount.mailUser = "test@none.com";
mailAcount.mailPassword = "123456";
mailAcount.mailHost = "imap.gmail.com";
mailAcount.mailFolder = "OpenKM";
mailAcount.active = true;
mailAcount.recursive = true;
// Test mail account
ws.mail.testMailAccount(mailAcount);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
deleteMailAccount
Description:
Method | Return values | Description |
---|---|---|
deleteMailAccount(long mailAccountId) |
void |
Deletes an email account. |
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 mailId = 1; //Valid mail id
ws.mail.deleteMailAccount(mailId);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
importMailMessages
Description:
Method | Return values | Description |
---|---|---|
importMailMessages(long mailAccountId, List<long> messageIds) |
void |
Import messages of a specific email account. |
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<long> messageIds = new List<long>();
messageIds.Add(1);
long mailAccountId = 1; // Valid mail id
ws.mail.importMailMessages(mailAccountId, messageIds);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
createMailFilter
Description:
Method | Return values | Description |
---|---|---|
createMailFilter(long mailAccountId, MailFilter mailFilter) |
void |
Add a filter to an email account. |
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);
Folder fld = ws.createFolder("f123a950-0329-4d62-8328-0ff500fd42db", "FilterFolder");
// Valid mail account id
long mailAccountId = 1;
MailFilter filter = new MailFilter();
filter.order = 0;
filter.grouping = false;
filter.exclusive = true;
filter.active = false;
filter.node = fld.uuid;
ws.mail.createMailFilter(mailAccountId, filter);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
updateMailFilter
Description:
Method | Return values | Description |
---|---|---|
updateMailFilter(MailFilter mailFilter) |
void |
Update the filter of an email account. |
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);
MailFilter filter = new MailFilter();
filter.id = 1; // Valid filter id
filter.grouping = true;
filter.exclusive = false;
filter.active = true;
ws.mail.updateMailFilter(filter);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
deleteMailFilter
Description:
Method | Return values | Description |
---|---|---|
deleteMailFilter(long mailFilterId) |
void |
Delete a filter from an email account. |
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 filterId = 1; // Valid filter id
ws.mail.deleteMailFilter(filterId);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
createMailRule
Description:
Method | Return values | Description |
---|---|---|
createMailRule(long filterId, MailFilterRule rule) |
void |
Create a rule for an email filter. |
Mail account filter 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);
MailFilterRule rule = new MailFilterRule();
rule.operation = MailFilterRule.OPERATION_CONTAINS;
rule.value = "test";
rule.field = MailFilterRule.FIELD_FROM;
rule.active = false;
long filterId = 1;// Valid filter id
ws.mail.createMailRule(filterId, rule);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
updateMailRule
Description:
Method | Return values | Description |
---|---|---|
updateMailRule(MailFilterRule rule) |
void |
Update a rule of an email account. |
Mail account filter parameters:
Available options are:
Available options are:
|
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<MailFilterRule> rules = ws.getMailFilterRules(filter.id);
if (rules != null && rules.Count > 0)
{
// Update rule
MailFilterRule rule = new MailFilterRule();
rule.id = rules[0].id;
rule.operation = MailFilterRule.OPERATION_EQUALS;
rule.value = "Any";
rule.field = MailFilterRule.FIELD_SUBJECT;
rule.active = true;
ws.mail.updateMailRule(rule);
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
deleteMailRule
Description:
Method | Return values | Description |
---|---|---|
deleteMailRule(long ruleId) |
void |
Delete a rule of an email account. |
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 ruleId = 1; // Valid rule id
ws.mail.deleteMailRule(ruleId);
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
getMailFilterRules
Description:
Method | Return values | Description |
---|---|---|
getMailFilterRules(long filterId) |
List<MailFilterRule> |
Retrieve a list of all associated filter rules. |
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 filterId = 1; // Valid filter id
foreach (MailFilterRule mfrule in ws.mail.getMailFilterRules(filterId))
{
System.Console.WriteLine(mfrule.toString());
}
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}
getPdf
Description:
Method | Return values | Description |
---|---|---|
getPdf(String uuid) |
Stream |
Returns a PDF of the email. |
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);
Mail mail = ws.mail.getMailProperties("4b88cbe9-e73d-45fc-bac0-35e0d6e59e43");
Stream stream = ws.mail.getPdf(mail.uuid);
FileStream mailFile = new FileStream("D:\\" + mail.subject + ".pdf", FileMode.OpenOrCreate, FileAccess.ReadWrite);
stream.CopyTo(mailFile);
stream.Close();
mailFile.Close();
}
catch (Exception e)
{
System.Console.WriteLine(e.ToString());
}
}
}
}