トップ/記事一覧

Fast Notion のアップデート(データベースモードでプロパティ名に関わらずメモできるように)

📆2023/01/18🔖 Fast Notion

表題の通りですが、拙作アプリ Fast Notion のアップデートを行いました。

アップデート内容としては、今まではプロパティ名が「名前」もしくは「Name」でないとデータベースモードで投稿ができなかったのですが、今回のアップデートでプロパティ名に関わらず投稿ができるようになりました。

Notion API の仕様と今回の実装について

そもそも、Notion API の Property Value Object には、プロパティ名をキーにするパターンと、プロパティ ID をキーにするパターンの2つが存在します。オブジェクトのキー部分が、プロパティ名とプロパティの ID どちらでも API を叩くことができます。(僕は後者の存在を今まで知らなかった)

プロパティ名をキーにしているパターン
プロパティ名をキーにしているパターン
プロパティ ID をキーにしているパターン
プロパティ ID をキーにしているパターン

※ ID をキーにしているパターンの方が rich_text になっているのはドキュメント側の誤りだと思われます。本来は text

僕のアプリケーションではタイトルプロパティにメモを送信するので、タイトルプロパティの ID は title という固定の文字列になります。これはどんなデータベースを使っていても、変わることのない共通の ID になります。

今までの実装では、プロパティ名「Name」で投稿し、失敗した場合にはプロパティ名「名前」でもう一度送信するような、リトライの機構を入れていました。今回の改修では、このリトライの機構をやめ、プロパティ名で投稿するのではなく、後者の ID を使う方法に変更しました(というかそもそも ID で送信できることを知っていれば、この実装自体不要だった)

ということで昨日 2023/01/17 からは、プロパティ名に関わらずメモが送信できるようになっています。今回の改修はバックエンドのみで済んでいるので、特にアプリ側のリリースは不要でした。楽な改修だったなと思うと同時に、もっと早くから気付いておけば良かったという後悔もあった。