Home

Appendix

Application Icon   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:

  • Icon
    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.
  • Icon
    length: Specify the number of characters from the start parameter. Used in selection links.
  • Icon
    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.
  • Icon
    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
  • Icon
    page: Opens a PDF to the specified page. Usage: page=<integer>.
  • Icon
    reveal: Reveals an item in the item list instead of opening it in a new window. Usage: reveal=1.
  • Icon
    search: Directly jumps to the first occurrence of the search string in the specified document. Usage: search=<string>.
  • Icon
    start: Specify the starting character on the current page. Used in selection links.
  • Icon
    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:

  • Icon
    reference URL: This is the item link as described above.
  • Icon
    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.