Skip to content

Instantly share code, notes, and snippets.

@danielpclark
Last active February 26, 2024 09:53
Show Gist options
  • Save danielpclark/96c7e28b12fcb90d0f88 to your computer and use it in GitHub Desktop.
Save danielpclark/96c7e28b12fcb90d0f88 to your computer and use it in GitHub Desktop.
Evernote and Ruby NoteStore findNotesMetadata Example
require 'evernote_oauth'
def grab_notebook_contents(notebook, user)
client = EvernoteOAuth::Client.new( token: user.evernote_token )
note_store = client.note_store.listNotebooks( user.evernote_token ).
detect { |i| i.name == notebook }.note_store
page_size = 10
filter = Evernote::EDAM::NoteStore::NoteFilter.new(
order: Evernote::EDAM::NoteStore::NoteFilter::ORDER
# Evernote::EDAM::NoteStore::NoteFilter::ASCENDING
# Evernote::EDAM::NoteStore::NoteFilter::WORDS
# Evernote::EDAM::NoteStore::NoteFilter::NOTEBOOKGUID
# Evernote::EDAM::NoteStore::NoteFilter::TAGGUIDS
# Evernote::EDAM::NoteStore::NoteFilter::TIMEZONE
# Evernote::EDAM::NoteStore::NoteFilter::INACTIVE
# Evernote::EDAM::NoteStore::NoteFilter::EMPHASIZED
)
# Each spec attribute also accepts true
spec = Evernote::EDAM::NoteStore::NotesMetadataResultSpec.new(
includeTitle: Evernote::EDAM::NoteStore::NotesMetadataResultSpec::INCLUDETITLE,
includeContentLength: Evernote::EDAM::NoteStore::NotesMetadataResultSpec::INCLUDECONTENTLENGTH,
includeCreated: Evernote::EDAM::NoteStore::NotesMetadataResultSpec::INCLUDECREATED,
includeUpdated: Evernote::EDAM::NoteStore::NotesMetadataResultSpec::INCLUDEUPDATED,
includeDeleted: Evernote::EDAM::NoteStore::NotesMetadataResultSpec::INCLUDEDELETED,
includeUpdateSequenceNum: Evernote::EDAM::NoteStore::NotesMetadataResultSpec::INCLUDEUPDATESEQUENCENUM,
includeNotebookGuid: Evernote::EDAM::NoteStore::NotesMetadataResultSpec::INCLUDENOTEBOOKGUID,
includeTagGuids: Evernote::EDAM::NoteStore::NotesMetadataResultSpec::INCLUDETAGGUIDS,
includeAttributes: Evernote::EDAM::NoteStore::NotesMetadataResultSpec::INCLUDEATTRIBUTES,
includeLargestResourceMime: Evernote::EDAM::NoteStore::NotesMetadataResultSpec::INCLUDELARGESTRESOURCEMIME,
includeLargestResourceSize: Evernote::EDAM::NoteStore::NotesMetadataResultSpec::INCLUDELARGESTRESOURCESIZE
)
note_store.findNotesMetadata(user.evernote_token, filter, 0, page_size, spec)
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment