The papis_id key
Every Papis document should have a papis_id key created at random by
the Papis database. This id should serve as a UUID-type key for the document
(by default it contains a hash of the document keys and documents with a bit
of randomness thrown in).
The papis_id is added automatically when using papis add or other commands,
but is not updated after the initial creation of the document. If you manually
add a document into your library, e.g. by creating an info.yaml file without
Papis, you will have to clear the library cache in order to trigger a rebuild
using:
papis cache clear
When the library scans the document added manually, it will create a papis_id
key automatically and it will edit your info.yaml file accordingly.
We stress again that the database will edit the info.yaml file,
without committing the changes (in the case that you are using a git
repository), so that you can inspect the changes manually.
Please note that if you add a document manually with an existing
papis_id to your library, Papis will not check if there is an
id clash. A clash of ids has a very low probability and can be checked using
the papis doctor command.
Use of papis_id in scripts
Since the papis_id key is a unique (ish) identifier, it is quite useful for
scripts that do not depend on the actual path to the document in your system.
For instance you can get the papis_id of a document using:
id=$(papis list --id query)
and subsequently use the id variable to trigger other commands. For example,
you can open the files attached to the document using:
papis open "papis_id:${id}"