Joplin icon

Joplin

Consume Joplin API

Actions9

Note → Update

AI-generated

Overview

The Joplin Node for n8n allows you to interact with the Joplin note-taking application's API. Specifically, the Note → Update operation updates an existing note in your Joplin account. This is useful for automating workflows where notes need to be programmatically modified—such as updating meeting notes, appending information from other systems, or synchronizing content between Joplin and other tools.

Example scenarios:

  • Automatically update a note with new data from another application.
  • Change the body, metadata, or attachments of a note based on workflow triggers.
  • Add images or GPS data to a note after processing files or location data elsewhere in your automation.

Properties

Name Type Meaning
Note resourceLocator The ID of the Note to update. Can be selected from a list, entered as a URL, or provided directly as an ID.
Additional Fields collection A set of optional fields to update on the note. See below for details.

Additional Fields options:

Name Type Meaning
Asignee Name or ID options ID of the user to whom the note is assigned. Select from list or specify via expression.
Body string The note body, in Markdown (may also contain HTML).
Source URL string The full URL where the note comes from.
Time fixedCollection Set creation/update times (epoch timestamps):
- User_created_time
- User_updated_time
Body_html fixedCollection Batch update of note body in HTML format:
- Note Body, in HTML Format
- Base_url (required)
Image fixedCollection Attach image to note:
- Image_data_url (Data URL format)
- Crop_rect (boolean)
- Optional Rectangle (frame_x/y/width/height)
GPS fixedCollection Attach GPS coordinates:
- Latitude
- Longitude
- Altitude

Output

  • The node returns a JSON object under the json field with the result of the update operation.
  • The structure of the output matches the response from the Joplin API's noteApi.update() method, typically including updated note properties such as id, title, body, parent_id, timestamps, etc.

Example output:

{
  "res": {
    "id": "e167983d038548ed96e680b23f5254f1",
    "title": "Updated Note Title",
    "body": "Updated note content...",
    "parent_id": "folder123...",
    "user_created_time": 1679085845286,
    "user_updated_time": 1679085845286,
    // ...other note properties
  }
}
  • If an error occurs and "Continue On Fail" is enabled, the output will include an error property with the error message.

Dependencies

  • External Service: Requires access to a running Joplin instance with its Web API enabled.
  • API Credentials: You must configure the jApi credential in n8n, providing the Joplin API base URL and token.
  • n8n Configuration: No special environment variables are required beyond the credentials.

Troubleshooting

Common Issues:

  • Invalid Note ID: If the provided Note ID does not exist or is malformed, the node will throw an error like Not a valid Joplin Note ID.
  • Authentication Errors: If the API token or base URL is incorrect, you'll receive authentication or connection errors.
  • Missing Required Fields: If required fields (like Note ID) are missing, the node will fail.
  • Malformed Data: Providing invalid data types (e.g., non-numeric values for timestamps) may cause the update to fail.

Error Messages & Resolutions:

  • "Not a valid Joplin Note ID": Ensure the Note ID is a 32-character alphanumeric string.
  • "Request failed with status code 401": Check your Joplin API credentials.
  • "Cannot read property 'value' of undefined": Make sure all required input fields are filled.

Links and References

Discussion