Auto Note Importer

by uppinote
5
4
3
2
1
Score: 50/100

Description

The Auto Note Importer plugin streamlines the process of syncing notes from Airtable (support for more database is planned) directly into your vault. It fetches records and turns them into Markdown files with structured YAML frontmatter, letting you define where the notes should go, how they're named, and what template they should follow. Notes can be synced manually or on a recurring schedule, with options to prevent duplicates by tracking a primary field. It also handles a wide variety of Airtable field types, including nested data like attachments and user references, with support for dot notation in templates. Whether you're logging YouTube summaries or managing structured data, this plugin provides a powerful bridge between external databases and your note system.

Reviews

No reviews yet.

Stats

13
stars
1,480
downloads
2
forks
344
days
4
days
4
days
32
total PRs
0
open PRs
1
closed PRs
31
merged PRs
57
total issues
14
open issues
43
closed issues
0
commits

RequirementsExperimental

Latest Version

5 days ago

Changelog

What's Changed

New Features

  • Add metadata-driven dropdowns for SeaTable connection settings (#81)
    • Table, View, Filename field, and Subfolder field selectors now populate automatically from the SeaTable API instead of requiring manual text entry
    • New SeaTableMetadataCache service fetches and caches tables/columns/views per credential, so the settings tab loads metadata once and reuses it across re-renders
    • Gracefully falls back to text inputs when the API token is empty or metadata fetch fails, and auto-upgrades to dropdowns on the next render once the token is reachable

Bug Fixes

  • Fix connection card not re-rendering when switching credential type in the dropdown (#80)
    • Credential type changes (e.g. SeaTable → Airtable) now correctly rebuild the provider instead of calling reconfigure() on a mismatched type, which previously threw and silently prevented the card from updating
    • Connection card now renders based on credential.type alone; missing secrets show a Setup required badge instead of dropping the card entirely
    • New e2e test case covers bidirectional credential-type switching to prevent regression

Refactoring

  • Align batchUpdate batch-limit guard with SyncResult failure contract (#78)
    • Size-limit guard now returns SyncResult[] failures instead of throwing, matching all other failure paths
    • Extracted buildBatchFailures and BATCH_LIMIT_ERROR helpers to api-errors.ts, shared across both Airtable and SeaTable clients

Documentation

  • Refresh README and CLAUDE.md for 0.9.0 multi-provider release (#77)
    • Updated README to cover both Airtable and SeaTable credentials, setup, commands, field types, and troubleshooting
    • Expanded CLAUDE.md architecture overview to reflect the full 0.9.0 module structure including new providers, types, and services
    • Corrected conflict resolution mode label from airtable-wins to remote-wins in docs
    • Added e2e test commands and code ↔ test bidirectional link conventions to CLAUDE.md

Testing

  • Extract shared e2e harness helpers into a common module (#79)
    • New tests/e2e/obsidian-helpers.mjs consolidates ~250 LOC duplicated across all four E2E harnesses
    • Exports buildSyncHarnessHelpers, buildSettingsHarnessHelpers, makeSetConfigAndQuery, and buildConfigExpr factories
    • Reduces 4-way duplication to a single definition; future provider harnesses reuse helpers with ~80 LOC savings each

README file from

Github

Auto Note Importer

GitHub Actions Workflow Status GitHub release (latest SemVer) GitHub Downloads (all assets, all releases)

Import and sync notes bidirectionally between Airtable, SeaTable, and your Obsidian vault with smart field mapping and organization features. Built on a provider-agnostic core; more databases (Supabase, Notion, Custom API) tracked in #11.

✨ Key Features

  • Multiple Databases: Airtable and SeaTable supported today; pluggable provider architecture for more
  • Bidirectional Sync: Sync notes from your remote database to Obsidian and back
  • Multi-Config: Run several sync configurations (different bases / tables / folders) side-by-side
  • Computed-Field Support: Auto-fetch formula / rollup / lookup / link-formula values after pushing
  • Conflict Resolution: Manual, Obsidian wins, Remote wins modes
  • Smart Field Selection: Type-aware dropdowns; provider-specific safe-for-filename whitelist
  • Subfolder Organization: Auto-organize notes into subfolders based on a field value
  • Safe File Naming: Per-provider validation (text / select / number / formula / auto-number)
  • Template Support: {{fieldName}} placeholders with nested-property access
  • Obsidian Bases Compatible: YAML output tuned for table/card views
  • Automated Syncing: Manual sync, scheduled intervals, or auto on file change
  • Zero Coding Required: Point-and-click setup with intuitive UI

📦 Installation

  1. Open Obsidian
  2. Go to Settings → Community plugins → Browse
  3. Search for "Auto Note Importer" and install it
  4. Enable the plugin
  5. Add a credential for your provider (Airtable PAT or SeaTable API Token), then configure a sync configuration

🚀 Quick Start

1. Get Your Provider Credentials

Airtable
  1. Visit the Airtable Tokens page
  2. Click Create new token
  3. Select scopes:
    • data.records:read — required for importing
    • data.records:write — required for bidirectional sync
    • schema.bases:read — required for field selection
  4. Choose your bases and click Create token
  5. Copy the Personal Access Token
SeaTable
  1. Open your SeaTable Base → More options (⋯) → Advanced settings → API Tokens → Add API Token
  2. Pick Read and write permission
  3. Copy the API Token (it is base-specific)
  4. Note your server URL (default: https://cloud.seatable.io; self-hosted users use their own host)

2. Configure the Plugin

  1. Open Settings → Auto Note Importer
  2. Add credential — pick the provider type (Airtable / SeaTable) and paste your token
  3. The connection card adapts to your selected credential. Fill in:
    • Airtable: Base → Table → View (optional) → Filename / Subfolder fields
    • SeaTable: Table ID → View ID (optional) → Filename / Subfolder column names
  4. Destination folder in your vault
  5. Template — optional {{fieldName}} template
  6. Bidirectional sync — toggle if you want changes flowing both ways

You can have multiple configurations (e.g. one for Airtable, one for SeaTable, or two SeaTable bases) — switch between them with the tab bar at the top of the settings panel.

3. Sync Notes

Use Command Palette (Ctrl/Cmd + P). Each command is labeled with the active config's provider:

Command Description
Sync current note from {provider} Refresh current note from the remote database
Sync all notes from {provider} Import / update all notes
Sync current note to {provider} * Push current note changes
Sync modified notes to {provider} * Push pending changes
Sync all notes to {provider} * Push every note
Bidirectional sync current note * Push, wait for formulas, then pull
Bidirectional sync modified notes * Same for modified notes
Bidirectional sync all notes * Same for all notes

* Commands marked with * require Enable bidirectional sync to be turned on. They are hidden from Command Palette when disabled.

You can also schedule syncs:

  • Sync interval: minutes (0 = manual only)
  • Watch for changes: detect file edits and queue automatic sync

⚙️ Settings Guide

Per-Configuration Basics

Setting Description
Credential Pick a registered credential (Airtable / SeaTable)
Base / Table / View (Airtable) Selectable from your base via the Meta API
Table / View ID (SeaTable) Identifiers from your SeaTable base — auto-derived dropdowns are tracked in #73
Filename Field Field used for note filenames (safe types only)
Subfolder Field Optional — organize notes into subfolders
New File Location Destination folder in your vault
Template File Custom template (optional)
Sync Interval Auto-sync frequency in minutes (0 = disabled)
Allow Overwrite Update existing notes vs skip duplicates

Bidirectional Sync

Setting Description
Enable bidirectional sync Allow Obsidian → remote pushes
Conflict resolution Manual, Obsidian wins, Remote wins
Watch for file changes Auto-detect Obsidian edits and queue sync
Auto-sync computed fields After push, fetch formulas / rollups / lookups
Computed-field sync delay ms to wait for the remote to recompute (default: 1500)

Supported Field Types

The plugin maps each provider's native types to a normalized taxonomy (text / number / date / boolean / single-select / multi-select / attachment / link / computed / system). Each provider's FieldTypeMapper decides which types are filename-safe and which are read-only (excluded from push) — fail-closed for unknown types.

Airtable

✅ Safe for Filenames & Subfolders: singleLineText, singleSelect, number, formula

🔒 Read-only (synced from Airtable only): formula, rollup, count, lookup, externalSyncSource, aiText, button, createdTime, lastModifiedTime, createdBy, lastModifiedBy, autoNumber

📋 Complete Airtable Field Type Reference →

SeaTable

✅ Safe for Filenames & Subfolders: text, single-select, number, auto-number, formula

🔒 Read-only (synced from SeaTable only): formula, link-formula, button, ctime, mtime, creator, last-modifier, auto-number

Unsupported / read-only fields are automatically hidden in dropdowns to prevent push errors.

🔄 How It Works

Unique Identification

Each note carries the remote record id in the primaryField frontmatter key — the immutable handle the sync pipeline uses to match notes back to their remote row.

File Naming Logic

  1. Use the selected Filename Field if present and non-empty
  2. Fallback to the remote record id
  3. All filenames are sanitized for cross-platform compatibility

Subfolder Organization

  • With Subfolder Field: destination/field-value/note.md
  • Without Subfolder Field: destination/note.md
  • Supports nested folders (e.g. "Category/Subcategory")
  • Recursive duplicate detection across all subfolders

Bidirectional Sync Flow

┌─────────────┐     Push      ┌──────────────┐
│   Obsidian  │ ───────────▶  │   Remote DB  │
│   (Notes)   │               │  (Airtable / │
│             │  ◀───────────  │   SeaTable)  │
└─────────────┘     Pull      └──────────────┘
  1. Obsidian → Remote: edit frontmatter, sync pushes writable fields
  2. Server-side computation: the remote computes formulas / rollups / link-formulas
  3. Remote → Obsidian: pull back computed values to update notes

Conflict Resolution

When the same field is modified in both Obsidian and the remote:

Mode Behavior
Manual Show notification, skip conflicting fields
Obsidian wins Overwrite the remote with Obsidian values
Remote wins Keep remote values, ignore Obsidian changes

📝 Template Usage

Create custom note templates using {{fieldName}} placeholders:

---
title: "{{Title}}"
status: "{{Status}}"
author: "{{Author.name}}"
created: "{{Created time}}"
---

# {{Title}}

## Summary
{{Summary}}

## Content
{{Description}}

## Attachments
{{Attachment.0.url}}

Advanced Features:

  • Nested Access: {{Attachment.0.url}}, {{User.name}}
  • Multi-line Support: Automatic YAML block-scalar formatting
  • Bases Optimization: Proper YAML types for table/card views

📝 Template Examples & Best Practices →

🔗 Obsidian Bases Integration

This plugin emits Bases-compatible YAML frontmatter with proper data types for seamless table/card view editing. Import your notes, enable the Bases plugin, and create a database from the imported folder for powerful data management workflows.

📊 Example Workflows

One-way Import

  1. Collect data with automation tools (n8n, Zapier, Apps Script)
  2. Store in Airtable or SeaTable
  3. Import to Obsidian via this plugin
  4. Organize automatically using Subfolder Field
  5. Manage in Obsidian Bases (table/card view)

Bidirectional Workflow

  1. Import records as Obsidian notes
  2. Edit frontmatter fields in Obsidian (status, tags, notes)
  3. Push changes back to the remote
  4. Compute formulas / rollups / link-formulas server-side
  5. Pull computed values back into Obsidian

🛠️ Troubleshooting

Common Issues:

  • No fields showing: re-check token permissions and base/table selection
  • Sync fails: verify network connection and credentials
  • File naming errors: confirm the selected field type is supported (per-provider whitelist)
  • Missing subfolders: check the subfolder field value isn't empty
  • Bidirectional sync not working: ensure write permissions (Airtable PAT data.records:write; SeaTable token "Read and write")
  • Formulas not updating: increase the computed-field sync delay
  • Conflicts detected: check conflict resolution mode

Provider-specific Tips:

  • Airtable: read-only fields (formulas, rollups) are auto-excluded from push. Use Obsidian wins for faster sync (skips conflict detection).
  • SeaTable: API tokens are base-specific. Each token grants access to exactly one base — get a separate token per base. Self-hosted users override Server URL per credential.

☕ Support

If you find this plugin useful, support development:

📄 License

MIT License

Similar Plugins

info
• Similar plugins are suggested based on the common tags between the plugins.
KOReader Sync
4 years ago by Federico "Edo" Granata
Obsidian.md plugin to sync highlights/notes from koreader
Power Search
4 years ago by Aviral Batra
Auto Note Mover
4 years ago by faru
This is a plugin for Obsidian (https://obsidian.md).
Digital Garden
4 years ago by Ole Eskild Steensen
Zotero Desktop Connector
4 years ago by mgmeyers
Insert and import citations, bibliographies, notes, and PDF annotations from Zotero into Obsidian.
Book Search
4 years ago by anpigon
Obsidian plugin that automatically creates notes by searching for books
Weread Plugin
4 years ago by hank zhao
Obsidian Weread Plugin is a plugin to sync Weread(微信读书) hightlights and annotations into your Obsidian Vault.
PodNotes
4 years ago by Christian B. B. Houmann
PodNotes is a plugin for Obsidian that helps the user write notes on podcasts.
New Note Content Pusher
4 years ago by Henry Gustafson
An Obsidian plugin to add (prepend or append) specified content to a note (existing or new) without opening another pane.
Old Note Admonitor
3 years ago by tadashi-aikawa
Dynbedded
3 years ago by Marcus Breiden
Embed snippets, templates and any linkable by delegating the current scope to the embedded file either by using a direct reference or as reference with date naming format relative from today.
Daily Notes Editor
3 years ago by boninall
A plugin for you to edit a bunch of daily notes in one page(inline), which works similar to Roam Research's default daily note view.
Audio Notes
3 years ago by Jason Maldonis
Easily take notes on podcasts and other audio files using Obsidian Audio Notes.
Awesome Reader
3 years ago by AwesomeDog
Make Obsidian a proper Reader.
Create Note in Folder
3 years ago by Mara-Li
Set a folder in settings and get directly a command to create a note in it. Use this with QuickAdd/Button to get more pratical things :D
Source Code Note
3 years ago by Waiting
The obsidian plugin can help you organize source code note easily.
OZ Calendar
3 years ago by Ozan Tellioglu
Advanced Merger
3 years ago by Anto Keinänen
Colorful Note Borders
3 years ago by rusi
Tolino notes Importer
3 years ago by juergenbr
Obsidian plugin to import notes from a Tolino E-Reader
Quickly
3 years ago by Sparsh Yadav
Quick capture to obsidian note
Smart Rename
3 years ago by mnaoumov
Obsidian Plugin that helps to rename notes keeping previous title in existing links
Folder notes
3 years ago by Lost Paul
Create notes within folders that can be accessed without collapsing the folder, similar to the functionality offered in Notion.
Note archiver
3 years ago by thenomadlad
Air Quotes
3 years ago by Alan Grainger
Plugin for Obsidian. Search and insert quotes from a source text as you type. This is great for reading a physical book or eReader while taking notes on a separate laptop or phone.
AI Tools
3 years ago by solderneer
Adding powerful semantic search, generative answers, and other AI tools to Obsidian, using Supabase + OpenAI.
ZettelGPT
3 years ago by Overraddit
Turbocharge Your Note-taking with AI Assistance
Easy Bake
3 years ago by mgmeyers
Compile many Obsidian notes down to one.
Voice
3 years ago by Chris Oguntolu
🔊 The Obsidian Voice plugin lets you listen to your written content being read aloud—mobile-friendly audiobook-like experience. 🎧
Quick note
3 years ago by James Greenhalgh MBCS
Create New note from right-clicking app icon
Merge Notes
3 years ago by fnya
Merge Notes is Plugin for Obsidian
Notes Sync Share
3 years ago by Alt-er
Sync and share (publish) your notes in your own private service.
iDoRecall
3 years ago by dbhandel
iDoRecall Obsidian plugin
Sets
3 years ago by Gabriele Cannata
Timeline View
3 years ago by b.camphart
Obsidian plugin for viewing your notes linearly based on a given property
Multi Properties
3 years ago by fez-github
Plugin for Obsidian that allows user to add properties to multiple notes at once.
Zettelkasten Outliner
2 years ago by Tyler Suzuki Nelson
Spotify Link
2 years ago by Studio Webux
Obsidian.md Plugin to include the song or episode you're currently listening to in your note.
Are.na unofficial
2 years ago by 0xroko
Unofficial Are.na plugin for Obsidian
Custom Note Width
2 years ago by 0skater0
Set the line width for each note individually in Obsidian. Works with a slider, pill presets, YAML frontmatter and hotkeys.
Desk
2 years ago by David Landry
A desk for obsidian
R.E.L.A.X.
2 years ago by Syr
Regex Obsidian Plugin
Ollama Chat
2 years ago by Brumik
A plugin for chatting with you obsidian notes trough local Ollama LLM instead of Chat GTP.
YouTube Template
2 years ago by sundevista
📺 A plugin that would help you to fetch YouTube videos data into your vault.
Widgets
2 years ago by Rafael Veiga
Add cool widgets to your notes or your dashboard in Obsidian
Instapaper
2 years ago by Instapaper
Official Instapaper plugin for Obsidian
Apple Books - Import Highlights
2 years ago by bandantonio
Import highlights and notes from your Apple Books to Obsidian
iCloud Contacts
2 years ago by Truls Aagaard
Obsidian plugin that imports contacts from iCloud and manages a note for each contact.
Protected Note
2 years ago by Mikail Gadzhikhanov
Plugin for Obsidian
Kindle Highlights Importer
2 years ago by MovingMillennial
Autogen
2 years ago by Aidan Tilgner
A plugin to use a language model to fill in parts of notes.
Confluence Sync
2 years ago by Prateek Grover
Obsidian plugin for obsidian confluence sync
Title renamer
2 years ago by Peter Strøiman
Obsidian plugin to keep title in markdown synced with tile name
Note Companion Folder
2 years ago by Chris Verbree
A Obsidian Plugin providing a way to associate a folder to a note
Moulinette Search for TTRPG
2 years ago by Moulinette
Plugin for Obsidian
Kinopoisk search
2 years ago by Alintor
Obsidian Kinopoisk plugin
Quick File Name
2 years ago by Wapply
This Obsidian plugin generates a note with an random string as file name.
Slurp
2 years ago by inhumantsar
Slurps webpages and saves them as clean, uncluttered Markdown. Think Pocket, but better.
Current Folder Notes
2 years ago by Pamela Wang
Shows notes in the current folder, useful for writing novels
Create List of Notes
2 years ago by Andrew Heekin
my anime list text exporter
2 years ago by XmoncocoX
a plugin who create an obsidian page for an anime with the data from my anime list.
Note Splitter
2 years ago by Trey Wallis
Split a note into individual notes based on a delimiter
Folder Periodic Notes
2 years ago by Andrew Heekin
BibTeX Manager
2 years ago by Akop Kesheshyan
Create literature notes in Obsidian from BibTeX entries, display formatted reference lists, and instantly generate citations.
Pinned Notes
2 years ago by vasilcoin002
Truth Table+
2 years ago by Maximilian Schulten
This is the repository of an Obsidian.md plugin that allows users to create truth tables via the command palette.
Live Variables
2 years ago by Hamza Ben Yazid
Define variables in your note's properties and reuse them throughout your content.
Journaling
2 years ago by Ordeeper
View daily notes in a journal-like format, similar to Logseq. It enhances note organization and facilitates better reflection by consolidating daily notes into a continuous journaling view.
Print
2 years ago by Marijn Bent
Print your notes directly from Obsidian
Note Refactor
6 years ago by James Lynch
Allows for text selections to be copied (refactored) into new notes and notes to be split into other notes.
Smart Random Note
5 years ago by Eric Hall
A smart random note plugin for Obsidian
Icons
5 years ago by Camillo Visini
Add icons to your Obsidian notes – Experimental Obsidian Plugin
Folder Note
5 years ago by xpgo
Plugin to add description note to a folder for Obsidian.
Periodic Notes
5 years ago by Liam Cain
Create/manage your daily, weekly, and monthly notes in Obsidian
Prettier Format
5 years ago by Andrew Lisowski
Format obsidian.md notes using prettier
Dice Roller
5 years ago by Jeremy Valentine
Inline dice rolling for Obsidian.md
Admonition
5 years ago by Jeremy Valentine
Adds admonition block-styled content to Obsidian.md
Tracker
5 years ago by pyrochlore
A plugin tracks occurrences and numbers in your notes
Highlight Public Notes
5 years ago by dennis seidel
Focus Mode
5 years ago by ryanpcmcquen
Add focus mode to Obsidian.
2Hop Links
5 years ago by Tokuhiro Matsuno
File Explorer Note Count
5 years ago by Ozan Tellioglu
Obsidian Plugin for viewing the number of elements under each folder within the file explorer
QuickAdd
5 years ago by Christian B. B. Houmann
QuickAdd for Obsidian
Podcast Note
5 years ago by Marc Julian Schwarz
A plugin for the note taking app Obsidian that lets you add podcast meta data to your notes.
Card View Mode
5 years ago by PADAone
Obsidian Card View Mode Plugin
Enhance Copy Note
5 years ago by kzhovn
Plugin which enhances the copy command for Obsidian.
Wikipedia
5 years ago by Jonathan Miller
Grabs information from Wikipedia for a topic and brings it into Obsidian notes
Bible Reference
4 years ago by tim-hub
Take Bible Study notes easily in the popular note-taking app Obsidian, with automatic verse and reference suggestions.
Structured
4 years ago by dobrovolsky
From Template
4 years ago by mo-seph
Simple plugin to create Notes from a template, and fill in fields defined there
Quick Notes
2 years ago by Sean McOwen
Quarto Exporter
2 years ago by Andreas Varotsis
Export Obsidian notes to Quarto-compatible QMD files.
Asciidoctor editor
2 years ago by dzruyk
Obsidian asciidoc editor plugin
random-retrieval
2 years ago by Rachninomav
Session Notes
2 years ago by tabibyte
A plugin for Obsidian to create temporary & session notes that will be deleted when session ends
Vault Review
2 years ago by Alexander
This plugin allows you to create a snapshot of your vault and randomly review files from it 1-by-1.
Arweave Uploader
2 years ago by makesimple
MOC Link Helper
2 years ago by Bogdan Codreanu
This obsidian plugins allows you to quickly see which notes you need to include in your MOC.
Unearthed (Kindle Sync)
a year ago by CheersCal
Daily Random Note
a year ago by Alexandre Silva
Daily Random Notes in Obsidian.
Daily Summary
a year ago by Luke
Beautiful Contact Cards
a year ago by Seth Tenembaum
A plugin for the Obsidian text editor which renders "contact" code blocks with tappable links for phone, social media, etc.
Instant Above Divider
a year ago by SedationH
Abbrlink
a year ago by Q78KG
Share as ZIP
a year ago by Till Friebe
create folder notes with dropdown
a year ago by Sturdy Shawn
Sync Cnblog
a year ago by zhanglei
同步文章到博客园
Chat clips
a year ago by sleepingraven
Record chat in ordinary markdown list.
Xiaohongshu Importer
a year ago by bnchiang96
An Obsidian plugin to import Xiaohongshu (小红书) notes into your vault. Extract titles, content, images, videos, and tags from share links, with customizable categories and optional local media downloads.
Sticky Notes
a year ago by NoPoint
Obsidian Sticky Notes Plugin
Log Keeper
a year ago by James Sonneveld
Generates times stamps automatically as changes are made to a note.
Korean Book Search
10 months ago by lazerfit
도서 메타데이터 자동 입력 플러그인