Getting started
Product
Company
Reflect supports deep linking, allowing users to perform actions within the app using custom URLs. These deep links follow specific format:
reflect://reflect?command=<command_name>&<parameter1>=<value1>&...
Deep links are just regular URLs. You can place them anywhere where regular links are supported, for example inside of an email. Clicking a deep link will open Reflect and perform the action you specified. (Like editing a particular note.)
<aside>
💡 Note on URL encoding - You might notice %20
or other unusual characters in the URL. This is called "URL encoding." It's a way to safely represent special characters in web addresses. For example, spaces are replaced with %20
. This ensures that the link works correctly, especially when it contains spaces or special characters. When you see %20
in a URL, just think of it as a space!
</aside>
Appends text to the first list in today's daily note. This one only takes one argument, text
.
Format:
reflect://reflect?command=append-to-daily-note&text=<text_to_append>
Here’s an example:
reflect://reflect?command=append-to-daily-note&text=Remember%20to%20buy%20groceries
Opening this link will add text “Remember to buy groceries” to your daily note.
Creates a new task in the task view and adds it to today's daily note. This command takes one argument, text
.
Format:
reflect://reflect?command=create-task&text=<task_description>
Here's an example:
reflect://reflect?command=create-task&text=Call%20dentist%20for%20appointment
Opening this link will create a new task "Call dentist for appointment" in your task view and today's daily note.
Creates a new blank note and opens it for editing. This command doesn't require any additional arguments.
Format:
reflect://reflect?command=create-note
Opening this link will create a new blank note and open it for editing.
Opens one or two notes for editing. Notes can be specified by ID or subject, and content can be provided for new notes. The content
parameter uses Markdown format. This command has several optional arguments.
Format:
reflect://reflect?command=edit-notes&[id=<note_id>|subject=<note_subject>][&content=<markdown_content>][&splitPaneId=<second_note_id>|splitPaneSubject=<second_note_subject>][&splitPaneContent=<markdown_content>]
Here are some examples:
Open a note by ID:
reflect://reflect?command=edit-notes&id=abcd1234
Open a daily note by its date ID:
reflect://reflect?command=edit-notes&id=05082024
Open or create a note by subject:
reflect://reflect?command=edit-notes&subject=Project%20Ideas
Create a new note with subject and Markdown content:
reflect://reflect?command=edit-notes&subject=Meeting%20Notes&content=## Project Timeline%0A- Discuss current progress%0A- Set new milestones%0A%0A## Budget%0A1. Review Q3 expenses%0A2. Forecast Q4 budget
Open two notes side by side (main pane and split pane):
reflect://reflect?command=edit-notes&id=abcd1234&splitPaneSubject=Related%20Tasks
Open a note in the main pane and create a new note with Markdown content in the split pane:
reflect://reflect?command=edit-notes&subject=Project%20Overview&splitPaneSubject=Action%20Items&splitPaneContent=# Action Items%0A%0A1. Review timeline%0A2. Assign tasks%0A3. Schedule follow-up meeting
<aside> 💡 Note on edit-notes command:
id
to open an existing note by its unique identifier (found in the note's URL) or by its date for daily notes (format: DDMMYYYY).subject
to find an existing note by its title or create a new note if not found.subject
), you can optionally specify content
in Markdown format.splitPane-
prefixed arguments (splitPaneId
, splitPaneSubject
, splitPaneContent
) to open or create a second note in the split pane.content
and splitPaneContent
parameters accept Markdown formatting. Remember to URL-encode the Markdown syntax (e.g., %0A
for new lines, %20
for spaces).These deep links can be used to integrate Reflect with other apps or create custom shortcuts for frequently used actions.
← Previous
Add link here
Next →
Add link here