Evernote API Developer Token 取得方法(サンプルコード付き)

Evernote API を利用するために Developer Token を取得して、利用してみた事例をご紹介します。

Evernote

Evernote API Developer Token 取得ページ

Developer Tokens – Evernote Developers から Developer Token を取得します。

Developer Tokens | Evernote API

Developer tokens allow you to use the Evernote API to access your personal Evernote account. To learn more about using developer tokens, visit dev.evernote.com.

引用元: (Sandbox) Developer Tokens

Developer Token の動作確認

の2つの公式ドキュメントを参考にして、Node.js v10 で動作するように書き換えたのが以下のコードです。

Notebook 一覧取得サンプルコード (Node.js)

const Evernote = require('evernote');
 
const developerToken = "YOUR_DEVELOPER_TOKEN";
 
const client = new Evernote.Client({token: developerToken});
 
// Set up the NoteStore client 
const noteStore = client.getNoteStore();
 
// Make API calls
noteStore.listNotebooks().then(function(notebooks) {
  // notebooks is the list of Notebook objects
  for (let i in notebooks) {
    console.log("Notebook: " + notebooks[i].name);
  }
});

実行結果

$ node index.js
Notebook: <Inbox>
Notebook: プロジェクトその1

UnhandledPromiseRejectionWarning エラー

ちなみに、Sample Code のままだと Node.js v10 では以下のようなエラーが発生します。

$ node index.js
(node:17090) UnhandledPromiseRejectionWarning: Incorrect number of arguments passed to listNotebooks: expected 0 but found 1
(node:17090) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:17090) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

以上、Developer Token を取得して Evernote API を利用していきたい、現場からお送りしました。