Home | Appendix

|  |  | Item links

Every database, group, or document in your DEVONthink database has a URL (uniform resource locator) associated with it. While web URLs typically begin with `http://` or `https://`, DEVONthink's URLs take the form of `x-devonthink-item://` followed by a long alphanumeric ID. These are most commonly used for backlinks and deeplinking, even with external applications. But item links can also be used as a type of automation when extended with URL parameters. You can get this item link manually by selecting a document or group and choosing Edit > Copy Item Link. You then can manually extend the copied URL with the following parameters, as needed: app: Used in conjunction with the `openexternally` parameter, specify the name of the app to open the referenced file with, e.g., `x-devonthink-item://E35A4AFF-BD90-4131-9D54-62849E0EF4DE?openexternally=1&app=preview`. length: Specify the number of characters from the `start` parameter. Used in selection links. openexternally: Opens the referenced item in the system default application, e.g., opening a PDF in Preview. Used with a value of 1, e.g., `openexternally=1`. opentab: Opens the referenced item in a new tab in the current main window if a document is already being viewed. Used with a value of 1, e.g., `opentab=1` page: Opens a PDF to the specified page. Usage: `page=<integer>`. reveal: Reveals an item in the item list instead of opening it in a new window. Usage: `reveal=1`. search: Directly jumps to the first occurrence of the search string in the specified document. Usage: `search=<string>`. start: Specify the starting character on the current page. Used in selection links. time: Directly jumps to the specified time in seconds in a video or audio document. Usage: `time=<float>`.
Example: x-devonthink-item://<recordID>?reveal=1 x-devonthink-item://<pdfID>?page=5 x-devonthink-item://<textFileID>?search=iPad%20Pro x-devonthink-item://<movieID>?time=43.5
Note: The first parameter after the ID is always added after a question mark (?), additional ones after an ampersand (&), and any values must be percent-encoded.
Terminology Manually getting item links can be useful for some hard-coded cases, but there are many times you want to get them programmatically. There are two AppleScript properties for a `record` related to item links: reference URL: This is the item link as described above. UUID: This is the unique identifier of the item, i.e., the long alpha-numeric string in the reference URL. Here is an example of getting and using an item link to create a Markdown compliant link on the clipboard:
Example: tell application "DNtp" set recordName to name of content record set recordURL to reference URL of content record set the clipboard to ("[" & recordName & "](" & recordURL & ")") end tell
The terminology for using item links can depend on the capabilities of the application you're scripting. Here is an example, using a hard-coded URL, with an application that can open URLs:
Example: tell application "Opera" tell window 1 make new tab with properties {URL:"x-devonthink-item://929D101B-35AC-474C-801C-D8818C48DB80?line=125"} end tell end tell
P.S.: For the shell scripters, the URLs can be used with an `open` command.