PHP Samples
Download sdk4php
Section titled “Download sdk4php”The sdk4php sample below includes the most common methods used when integrating PHP applications.
| Professional | PHP version | Status | Download |
|---|---|---|---|
| Version 8.1.4 and above. | 7.x | Active | sdk4php-3.0.2.zip |
Preview sample
Section titled “Preview sample”The sample below describes how to integrate the OpenKM preview feature into your PHP application.
| Professional | PHP version | Status | Download |
|---|---|---|---|
| Version 8.1.4 and above. | 7.x | Active | okmPreview-3.0.1.zip |
First, you must create the web service object:
$this->ws = OKMWebServicesFactory::build(self::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:
$this->ws->login(self::USER, self::PASSWORD);At this point you can use all the Folder methods from the “folder” class as shown below:
$folder = $this->ws->folder->getFolderProperties("4a3b1c1b-c880-45a3-a6ff-2c8b7c5adfa5");<?phpinclude '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $folder = $this->ws->folder->getFolderProperties("4a3b1c1b-c880-45a3-a6ff-2c8b7c5adfa5"); var_dump($folder); } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$$test->test();?>Document samples
Section titled “Document samples”createDocument
Section titled “createDocument”Description:
| Method | Return values | Description |
|---|---|---|
| createDocument($uuid, $name, $content) | Document | Creates a new document and returns a Document object with the properties of the created document. |
- Parameters:
$uuid string type is the destination UUID of the Folder or Record - $name string type is the document name.
- $content string type; it is recommended to use file_get_contents — it reads the entire file into a string
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $fileName = dirname(__FILE__) . '/files/test.pdf'; $document = $this->ws->document->createDocument('f93ac8df-e83b-487f-9a14-0af9e910a818', 'test.pdf', file_get_contents($fileName)); var_dump($document); } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>deleteDocument
Section titled “deleteDocument”Description:
| Method | Return values | Description |
|---|---|---|
| deleteDocument($uuid) | void | Deletes a document. |
- Parameters:
$uuid string type is the UUID of the document
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $this->ws->document->deleteDocument('5b37c508-b2be-4429-ba5e-acc96089c6a9'); echo 'deleted'; } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>getDocumentProperties
Section titled “getDocumentProperties”Description:
| Method | Return values | Description |
|---|---|---|
| getDocumentProperties($uuid) | Document | Returns the document properties. |
- Parameters:
$uuid string type is the UUID of the document
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $document = $this->ws->document->getDocumentProperties('7e12a9ff-95b2-4945-bf5f-1bb709d89c14'); var_dump($document); } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>getContent
Section titled “getContent”Description:
| Method | Return values | Description |
|---|---|---|
| getContent($uuid) | string | Retrieves the document content (binary data) of the current document version. |
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { $method = 1; $this->ws->login(self::USER, self::PASSWORD); $content = $this->ws->document->getContent('b02877cc-bc71-4be9-9bfb-2e50b1732fd3'); switch ($method) { case 1: $file = fopen(dirname(__FILE__) . '/files/logo_download.png', 'w+'); fwrite($file, $content); fclose($file); echo 'download correct'; break; case 2: ob_clean(); $document = $this->ws->document->getDocumentProperties('b02877cc-bc71-4be9-9bfb-2e50b1732fd3'); $name = PathUtils::getName($document->getPath()); header("Cache-Control: maxage=1"); header("Pragma: public"); header("Content-Type: " . $document->getMimeType()); header('Content-Disposition: attachment; filename="' . $name . '"'); header("Content-Length: " . strlen($content)); echo $content; break; } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>getDocumentChildren
Section titled “getDocumentChildren”Description:
| Method | Return values | Description |
|---|---|---|
| getDocumentChildren($uuid) | array | Returns a list of all documents whose parent is fldId. |
- Parameters:
$fldId string type is the UUID or path of the Document or a record node.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $documents = $this->ws->document->getDocumentChildren('f93ac8df-e83b-487f-9a14-0af9e910a818'); foreach ($documents as $document) { var_dump($document); } } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>moveDocument
Section titled “moveDocument”Description:
| Method | Return values | Description |
|---|---|---|
| moveDocument($uuid, $dstId) | void | Moves a document into a folder or record. |
- Parameters:
$uuid string type is the UUID of the document - $dstId string type is the UUID of the Folder or Record
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $this->ws->document->moveDocument('b02877cc-bc71-4be9-9bfb-2e50b1732fd3', '55102c84-e4f5-4cbc-a3d1-cf1896367752'); echo 'moveDocument'; } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>copyDocument
Section titled “copyDocument”Description:
| Method | Return values | Description |
|---|---|---|
| copyDocument($uuid, $dstId, $newName) | void | Copies a document to a folder or record. |
- Parameters:
$uuid string type is the uuid of the Document - $dstId string type is the uuid of the Folder or Record
- $newName string type is the new name for the Document
- When the newName parameter value is null, the document will preserve the same name.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $document = $this->ws->document->copyDocument('b02877cc-bc71-4be9-9bfb-2e50b1732fd3', '55102c84-e4f5-4cbc-a3d1-cf1896367752', 'new_logo.png'); var_dump($document); echo 'copyDocument'; } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>Folder sample
Section titled “Folder sample”createFolder
Section titled “createFolder”Description:
| Method | Return values | Description |
|---|---|---|
| createFolder($uuid, $name) | Folder | Creates a new folder and returns it as a Folder object. |
- Parameters:
$uuid string type is the destination UUID of the Folder or Record
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $folder = $this->ws->folder->createFolder('f93ac8df-e83b-487f-9a14-0af9e910a818', 'test'); var_dump($folder); } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>getFolderProperties
Section titled “getFolderProperties”Description:
| Method | Return values | Description |
|---|---|---|
| getFolderProperties($uuid) | Folder | Returns the folder properties. |
- Parameters:
$uuid string type is the UUID of the Folder
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
// const HOST = "http://localhost:8080/openkm/"; const HOST = "http://192.168.1.11:8888/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $folder = $this->ws->folder->getFolderProperties("4a3b1c1b-c880-45a3-a6ff-2c8b7c5adfa5"); var_dump($folder); } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>deleteFolder
Section titled “deleteFolder”Description:
| Method | Return values | Description |
|---|---|---|
| deleteFolder($uuid) | void | Deletes a folder. |
- Parameters:
$uuid string type is the UUID of the Folder
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
// const HOST = "http://localhost:8080/openkm/"; const HOST = "http://192.168.1.11:8888/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $this->ws->folder->deleteFolder("56c4d33b-daad-4389-bfdc-ee8dd5273899"); echo 'delete folder'; } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>renameFolder
Section titled “renameFolder”Description:
| Method | Return values | Description |
|---|---|---|
| renameFolder($uuid, $newName) | void | Renames a folder. |
- Parameters:
$uuid string type is the uuid of the Folder - $newName string type is the new name for the Folder
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); // Exists folder /okm:root/sdk/test $folder = $this->ws->folder->renameFolder("0b89e4ca-0019-4837-82a4-05bc05d83353", "renamedFolder"); // Folder has renamed to /okm:root/sdk/renamedFolder echo 'rename Folder'; var_dump($folder); } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>moveFolder
Section titled “moveFolder”Description:
| Method | Return values | Description |
|---|---|---|
| moveFolder($uuid, $dstId) | void | Moves a folder into another folder or record. |
- Parameters:
$uuid string type is the UUID of the Folder - $dstId string type is the UUID of the Folder or Record
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); // Exists folder /okm:root/sdk/test $this->ws->folder->moveFolder("0b89e4ca-0019-4837-82a4-05bc05d83353", "55102c84-e4f5-4cbc-a3d1-cf1896367752"); // Folder has moved to /okm:root/move/test echo 'move Folder'; } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>getFolderChildren
Section titled “getFolderChildren”Description:
| Method | Return values | Description |
|---|---|---|
| getFolderChildren($uuid) | array | Returns an array of all folders whose parent is fldId. |
- Parameters:
$uuid string type is the UUID of the Folder or Record node
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $folders = $this->ws->folder->getFolderChildren('f93ac8df-e83b-487f-9a14-0af9e910a818'); foreach ($folders as $folder) { var_dump($folder); } } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>copyFolder
Section titled “copyFolder”Description:
| Method | Return values | Description |
|---|---|---|
| copyFolder($uuid, $dstId, $newName) | void | Copies a folder into another folder or record. |
- Parameters:
$uuid string type is the uuid of the Folder - $dstId string type is the uuid of the Folder or Record
- $newName string type is the new name for the Folder. If the value is null, the folder will preserve the same name.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $this->ws->folder->copyFolder('4a3b1c1b-c880-45a3-a6ff-2c8b7c5adfa5', '55102c84-e4f5-4cbc-a3d1-cf1896367752', "new_name"); } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>extendedFolderCopy
Section titled “extendedFolderCopy”Description:
| Method | Return values | Description |
|---|---|---|
| extendedFolderCopy($uuid, $dstId, $categories, $keywords, $propertyGroups, $notes, $security) | void | Copies a folder with associated data into another folder or record. |
- Parameters:
$uuid string type is the uuid of the Folder - $dstId string type is the uuid of the Folder or Record
- $categories boolean type
- $keywords boolean type
- $propertyGroups boolean type
- $notes boolean type
- $security boolean type
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $folder = $this->ws->folder->extendedFolderCopy('4a3b1c1b-c880-45a3-a6ff-2c8b7c5adfa5', '55102c84-e4f5-4cbc-a3d1-cf1896367752', 'new name extend copy', true, true, true, true, true); var_dump($folder); } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>getContentInfo
Section titled “getContentInfo”Description:
| Method | Return values | Description |
|---|---|---|
| getContentInfo($uuid) | ContentInfo | Returns a ContentInfo object with information about the folder. |
- Parameters:
$uuid string type is the UUID or path of the folder. - The ContentInfo object retrieves information about:
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); var_dump($this->ws->folder->getContentInfo('4a3b1c1b-c880-45a3-a6ff-2c8b7c5adfa5')); } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>purgeFolder
Section titled “purgeFolder”Description:
| Method | Return values | Description |
|---|---|---|
| purgeFolder($uuid) | void | The folder is permanently removed from the repository. |
- Parameters:
$uuid string type is the uuid or path of the Folder. - Usually you will purge folders in /okm:trash/userId - the personal trash user locations - but it is possible to directly purge any folder from the entire repository.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $this->ws->folder->purgeFolder('d1faccb3-9e64-4d2d-865f-1c057e3a279b'); echo 'purge folder'; } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>setStyle
Section titled “setStyle”Description:
| Method | Return values | Description |
|---|---|---|
| setStyle($uuid, $styleId) | void | Sets the folder style. |
- Parameters:
$uuid string type is the UUID or path of the folder. - $styleId long type is the id of the style.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $this->ws->folder->setStyle('0b89e4ca-0019-4837-82a4-05bc05d83353', 1); echo 'set style'; } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>createMissingFolders
Section titled “createMissingFolders”Description:
| Method | Return values | Description |
|---|---|---|
| createMissingFolders($fldPath) | void | Creates missing folders. |
- Parameters:
$fldPath string type is the path of the folder.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $this->ws->folder->createMissingFolders("/okm:root/sdk/missingfld2/missingfld3"); var_dump('create missing folders'); } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>createFolderFromTemplate
Section titled “createFolderFromTemplate”Description:
| Method | Return values | Description |
|---|---|---|
| createFolderFromTemplate($uuid, $dstPath, $language, $categories, $keywords, $propertyGroups, $notes, $properties) |
Folder | Creates a new folder from the template and returns a Folder object. |
- The $uuid parameter is the UUID value of the template file.
- The $dstPath value is the folder destination path.
- The $language parameter is optional.
- When the template uses metadata groups to fill in fields, these values are mandatory and must be set in the properties parameter.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
// const HOST = "http://localhost:8080/openkm/"; const HOST = "http://192.168.1.11:8888/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD);
$properties = []; $properties["okp:consulting.name"] = "update value"; $properties["okp:consulting.important"] = "false";
$folder = $this->ws->folder->createFolderFromTemplate('47c70047-2924-483c-bc42-23d0cbef6b17', '/okm:root/sdk/foldertemplate', 'es', true, true, true, true, $properties); var_dump($folder); } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>PropertyGroup samples
Section titled “PropertyGroup samples”addPropertyGroup
Section titled “addPropertyGroup”Description:
| Method | Return values | Description |
|---|---|---|
| addPropertyGroup($uuid, $grpName, $properties) | void | Adds an empty metadata group to a node. |
- Parameters:
- $uuid string type is the uuid of the document, folder, mail or record.
- $grpName string type: the grpName should be a valid metadata group name.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $properties = []; $properties["okp:consulting.name"] = "new value"; $properties["okp:consulting.important"] = "true"; $this->ws->propertyGroup->addPropertyGroup('7e12a9ff-95b2-4945-bf5f-1bb709d89c14', 'okg:consulting', $properties); echo 'Add Group'; } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>removePropertyGroup
Section titled “removePropertyGroup”Description:
| Method | Return values | Description |
|---|---|---|
| removePropertyGroup($uuid, $grpName) | void | Removes a metadata group of a node. |
- Parameters:
- $uuid string type is the uuid of the document, folder, mail or record.
- $grpName string type: the grpName should be a valid metadata group name.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $this->ws->propertyGroup->removePropertyGroup('7e12a9ff-95b2-4945-bf5f-1bb709d89c14', 'okg:consulting'); echo 'Remove Group'; } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>getPropertyGroups
Section titled “getPropertyGroups”Description:
| Method | Return values | Description |
|---|---|---|
| getPropertyGroups($uuid) | array | Retrieves a list of metadata groups assigned to a node. |
- Parameters:
- $uuid string type is the uuid of the document, folder, mail or record.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $propertyGroups = $this->ws->propertyGroup->getPropertyGroups('7e12a9ff-95b2-4945-bf5f-1bb709d89c14'); foreach ($propertyGroups as $propertyGroup) { var_dump($propertyGroup); echo '<br>'; } } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>getAllPropertyGroups
Section titled “getAllPropertyGroups”Description:
| Method | Return values | Description |
|---|---|---|
| getAllPropertyGroups() | array | Retrieves a list of all metadata groups in the application. |
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $propertyGroups = $this->ws->propertyGroup->getAllPropertyGroups(); foreach ($propertyGroups as $propertyGroup) { var_dump($propertyGroup); echo '<br>'; } } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>getPropertyGroupForm
Section titled “getPropertyGroupForm”Description:
| Method | Return values | Description |
|---|---|---|
| getPropertyGroupForm($grpName) | array | Retrieves a list of all metadata group element definitions. |
- Parameters:
- $grpName string type: the grpName should be a valid metadata group name.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class ExamplePropertyGroup {
const HOST = "http://localhost:8080/OpenKM/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST, self::USER, self::PASSWORD); }
public function testGetPropertyGroupForm() { try { $formElements = $this->ws->getPropertyGroupForm('okg:consulting'); foreach ($formElements as $formElement) { var_dump($formElement); } } catch (Exception $e) { var_dump($e); } }}
$openkm = new OpenKM(); //autoload$examplePropertyGroup = new ExamplePropertyGroup();$examplePropertyGroup->testGetPropertyGroupPropertiesSimple();?>getPropertyGroupFormByNode
Section titled “getPropertyGroupFormByNode”Description:
| Method | Return values | Description |
|---|---|---|
| getPropertyGroupFormByNode($uuid, $grpName) | array | Retrieves a list of all metadata group element definitions for a node. |
- Parameters:
- $uuid string type is the uuid of the document, folder, mail or record.
- $grpName string type is the grpName should be a valid Metadata group name.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $formElements = $this->ws->propertyGroup->getPropertyGroupFormByNode('7e12a9ff-95b2-4945-bf5f-1bb709d89c14', 'okg:consulting'); foreach ($formElements as $formElement) { var_dump($formElement); } } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>setPropertyGroupProperties
Section titled “setPropertyGroupProperties”Description:
| Method | Return values | Description |
|---|---|---|
| setPropertyGroupProperties($uuid, $grpName, $properties) | void | Changes the metadata group values of a node. |
- Parameters:
- $uuid string type is the uuid or path of the document, folder, mail or record.
- $grpName string type is the grpName should be a valid Metadata group name.
- $properties array type is an array
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $properties = []; $properties["okp:consulting.name"] = "update value"; $properties["okp:consulting.important"] = "false";
$this->ws->login(self::USER, self::PASSWORD); $this->ws->propertyGroup->setPropertyGroupProperties('7e12a9ff-95b2-4945-bf5f-1bb709d89c14', 'okg:consulting', $properties); echo 'updated'; } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>hasPropertyGroup
Section titled “hasPropertyGroup”Description:
| Method | Return values | Description |
|---|---|---|
| hasPropertyGroup($uuid, $grpName) | bool | Returns a boolean that indicates whether the node has a metadata group. |
- Parameters:
- $uuid string type is the uuid of the document, folder, mail or record.
- $grpName string type is the grpName should be a valid Metadata group name.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { try { $this->ws->login(self::USER, self::PASSWORD); echo 'Have metadata group: ' . $this->ws->propertyGroup->hasPropertyGroup('7e12a9ff-95b2-4945-bf5f-1bb709d89c14', 'okg:consulting'); } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>getRegisteredPropertyGroupDefinition
Section titled “getRegisteredPropertyGroupDefinition”Description:
| Method | Return values | Description |
|---|---|---|
| getRegisteredPropertyGroupDefinition() | string | Returns the XML metadata groups definition. |
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); var_dump($this->ws->propertyGroup->getRegisteredPropertyGroupDefinition()); } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>getPropertyGroupSuggestions
Section titled “getPropertyGroupSuggestions”Description:
| Method | Return values | Description |
|---|---|---|
| getPropertyGroupSuggestions($uuid, $grpName, $propName) | array | Retrieves a list of suggested metadata field values. |
- Parameters:
- $uuid string type. It is the UUID of the document, folder, mail, or record.
- $grpName string type. The grpName should be a valid metadata group name.
- $propName string type. The propName parameter should be a Metadata Select field type.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $suggestions = $this->ws->propertyGroup->getPropertyGroupSuggestions('055b5206-35d0-4351-ba92-c304bbba7ddf', 'okg:technology', 'okp:technology.priority'); foreach ($suggestions as $suggestion) { var_dump($suggestion); } } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>registerPropertyGroupDefinition
Section titled “registerPropertyGroupDefinition”Description:
| Method | Return values | Description |
|---|---|---|
| registerPropertyGroupDefinition($content, $name) | void | Sets the XML metadata group definition into the repository. |
- Parameters:
- $content string type. It is recommended to use file_get_contents — which reads the entire file into a string.
- $name string type. It is the name of the property group.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $fileName = dirname(__FILE__) . '/propertygroup/propertyGroups.xml'; $this->ws->propertyGroup->registerPropertyGroupDefinition(file_get_contents($fileName), 'sdk4php'); var_dump('Register Definition correct'); } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>getPropertyGroupProperties
Section titled “getPropertyGroupProperties”Description:
| Method | Return values | Description |
|---|---|---|
| getPropertyGroupProperties($uuid, $grpName) | array | Retrieves a list of all metadata group elements and their values for a node. |
- Parameters:
- $uuid string type. It is the UUID of the document, folder, mail, or record.
- $grpName string type. The grpName should be a valid metadata group name.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $properties = $this->ws->propertyGroup->getPropertyGroupProperties('7e12a9ff-95b2-4945-bf5f-1bb709d89c14', 'okg:consulting'); foreach ($properties as $key => $value) { echo 'key: ' . $key . ' value: ' . $value; echo '<br>'; } } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>getPropertyGroupPropertiesByVersion
Section titled “getPropertyGroupPropertiesByVersion”Description:
| Method | Return values | Description |
|---|---|---|
| getPropertyGroupPropertiesByVersion($uuid, $grpName, $versionName) | array | Retrieves a list of all metadata group elements and their values for a node. |
- Parameters:
- $uuid string type. It is the UUID of the document, folder, mail, or record.
- $grpName string type. The grpName should be a valid metadata group name.
- $versionName string type. It is the version of the document, folder, mail, or record.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { try { $this->ws->login(self::USER, self::PASSWORD); $properties = $this->ws->propertyGroup->getPropertyGroupPropertiesByVersion('7e12a9ff-95b2-4945-bf5f-1bb709d89c14', 'okg:consulting', '1.3'); foreach ($properties as $key => $value) { echo 'key: ' . $key . ' value: ' . $value; echo '<br>'; } } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>Search samples
Section titled “Search samples”Description:
| Method | Return values | Description |
|---|---|---|
| find(QueryParams $queryParams, $propertiesPlugin) | array | Returns a list of QueryResults filtered by the values of the queryParams parameter. |
- Parameters:
$queryParams QueryParams type - $propertiesPlugin string type, must be the canonical class name of the class which implements the NodeProperties interface.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $queryParams = new QueryParams(); $queryParams->setDomain(QueryParams::DOCUMENT + QueryParams::FOLDER); $queryParams->setFolder("f93ac8df-e83b-487f-9a14-0af9e910a818"); $queryParams->setFolderRecursive(true); $queryParams->setLastModifiedFrom(20150628000000); $queryParams->setLastModifiedTo(date('Ymdhis')); $queryResults = $this->ws->search->find($queryParams, null); foreach ($queryResults as $queryResult) { var_dump($queryResult); } } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>findPaginated
Section titled “findPaginated”Description:
| Method | Return values | Description |
|---|---|---|
| findPaginated(QueryParams $queryParams, $offset, $limit, $propertiesPlugin) | ResultSet | Returns a list of paginated results filtered by the values of the queryParams parameter. |
- Parameters:
$queryParams QueryParams type - $offset int type
- $limit int type
- $propertiesPlugin string type, must be the canonical class name of the class which implements the NodeProperties interface.
Example:
<?php
include '../src/openkm/OpenKM.php';
use openkm\OKMWebServicesFactory;use openkm\OpenKM;
class Test {
const HOST = "http://localhost:8080/openkm/"; const USER = "okmAdmin"; const PASSWORD = "admin";
private $ws;
public function __construct() { $this->ws = OKMWebServicesFactory::build(self::HOST); }
public function test() { echo '<pre>'; try { $this->ws->login(self::USER, self::PASSWORD); $queryParams = new QueryParams(); $queryParams->setDomain(QueryParams::DOCUMENT + QueryParams::FOLDER); $queryParams->setFolder("f93ac8df-e83b-487f-9a14-0af9e910a818"); $queryParams->setFolderRecursive(true); $queryParams->setLastModifiedFrom(20150628000000); $queryParams->setLastModifiedTo(date('Ymdhis')); $resultSet = $this->ws->search->findPaginated($queryParams, 0, 10, null); echo "Total results:" . $resultSet->getTotal(); foreach ($resultSet->getResults() as $queryResult) { var_dump($queryResult); } } catch (Exception $e) { var_dump($e); } }
}
$openkm = new OpenKM(); //autoload$test = new Test();$test->test();?>