diff --git a/docs.it4i/dice.md b/docs.it4i/dice.md
index f7e11b1c82e141f3111b5b57b3f6d160e567c22e..620b611d26dd48d4ab10a7fa61173ed56dcffd77 100644
--- a/docs.it4i/dice.md
+++ b/docs.it4i/dice.md
@@ -323,6 +323,47 @@ ls -la ~
 
 For more commands, use the `ihelp` command.
 
+
+## PID services
+
+You, as user may want to index your datasets and allocate some PID - Persistent Identifiers for them. We host pid system by hdl-surfsara ( it4i-handle.it4i.cz ), and you are able to create your own PID by calling some of irule. 
+
+### how to create PID
+
+Pids are created by calling irule, you have to create at your $HOME or everewhere you want, but you have to specify path correctly. 
+rules for pid operations have always .r suffix . It can by done only throught iCommands
+
+example of rule for PID creating only
+```console
+user in ~ λ pwd
+/home/user
+
+dvo in ~ λ ils
+/IT4I/home/user:
+  C- /IT4I/home/dvo0012/Collection_A
+
+user in ~ λ ls -l | grep pid
+-rw-r--r--  1 user user      249 Sep 30 10:55 create_pid.r
+
+user in ~ λ cat create_pid.r
+PID_DO_reg {
+      EUDATCreatePID(*parent_pid, *source, *ror, *fio, *fixed, *newPID);
+      writeLine("stdout","PID: *newPID");
+}
+INPUT *source="/IT4I/home/user/Collection_A",*parent_pid="None",*ror="None",*fio="None",*fixed="true"
+OUTPUT ruleExecOut
+
+user in ~ λ irule -F create_pid.r
+PID: 21.12149/f3b9b1a5-7b4d-4fff-bfb7-826676f6fe14
+```
+After creation, your pid is worldwidely searchable
+
+![](img/hdl_net.jpg)
+![](img/hdl_pid.jpg)
+
+more info at [www.eudat.eu][n]
+
+
 [1]: irods.cyberduckprofile
 [2]: irods_environment.json
 [3]: config.yml
@@ -337,3 +378,4 @@ For more commands, use the `ihelp` command.
 [i]: https://cyberduck.io/download/
 [l]: https://www.eudat.eu/contact-support-request?Service=B2SAFE
 [m]: https://aai.it4i.cz/
+[n]: https://www.eudat.eu/catalogue/b2handle