evernote business api workshop

24
Julien Boëdec @boedec Partner Integrations Manager Evernote Business API Workshop

Upload: julien-boedec

Post on 10-May-2015

1.213 views

Category:

Technology


1 download

DESCRIPTION

Evernote Business makes the ideas, research and expertise of your team easily discoverable, creating an open, productive and smarter workplace. This workshop will cover a walkthrough of the Evernote Business API and how we work with 3rd party integrations.

TRANSCRIPT

Page 1: Evernote Business API workshop

Julien Boëdec @boedecPartner Integrations Manager

Evernote Business API Workshop

Page 2: Evernote Business API workshop

#EC2013

Evernote Business API Workshop

1 - Understanding Evernote Business

2 - The Evernote API

3 - Code walkthroughs

4 - Partner showcase

Page 3: Evernote Business API workshop

#EC2013

Understanding Evernote Business

An extension of Evernote

Knowledge sharing and discovery

Data owned by the business

Works with all our core products (Evernote desktop, iOS, Android, Web Clipper...)

Page 4: Evernote Business API workshop

#EC2013

Understanding Evernote Business

Page 5: Evernote Business API workshop

#EC2013

The Evernote API

Our core product: The Evernote API is used for external developers and our internal apps alike. 12 Billion API calls are made every month!

Same functions: All the functionality available in Evernote (OCR, Files, Audio, etc)

Every platform: We have SDKs for almost every platform on Github.

Apache Thrift, not REST: We take care of the connection, just make calls to our SDK in your application

Page 6: Evernote Business API workshop

#EC2013

The Evernote API - Endpoints

ThriftThrift

User User StoreStore

Note Note StoreStoreNote Note StoreStoreNote Note StoreStoreNote Note StoreStoreNote Note StoreStoreNote Note StoreStore

https://www.evernote.com/shard/s1

Page 7: Evernote Business API workshop

#EC2013

The Evernote API - Endpoints

ThriftThrift

User User StoreStore

BusinessBusinessNote StoreNote Store

PersonalPersonalNote StoreNote Store

Page 8: Evernote Business API workshop

#EC2013

Code walkthroughs

Getting started - connecting to the business account

Creating a note

Searching for notes in the business

Working with notebooks

Related content

Provisioning API

Page 9: Evernote Business API workshop

#EC2013

Connecting to the business account# Get information about the user

ourUser = user_store.getUser(auth_token)

# Is the user part of a business?

if ourUser.businessUserInfo:

print "Business name: " + ourUser.businessUserInfo.businessName

# Connecting to the Evernote Business account

business_auth_result = user_store.authenticateToBusiness(auth_token)

business_auth_token = business_auth_result.authenticationToken

business_notestore_thttp_client = THttpClient.THttpClient(business_auth_result.noteStoreUrl)

business_notestore_protocol = TBinaryProtocol.TBinaryProtocol(business_notestore_thttp_client)

business_note_store = NoteStore.Client (business_notestore_protocol, business_notestore_protocol)

Page 10: Evernote Business API workshop

#EC2013

Creating a note# Creating a note

my_note = Types.Note()

my_note.title = "I'm a test note!"

my_note.notebookGuid = "8d382c0b-08f3-46a5-9356-bb28fb0f4eb6"

content = '<?xml version="1.0" encoding="UTF-8"?>'

content += '<!DOCTYPE en-note SYSTEM "http://xml.evernote.com/pub/enml2.dtd">'

content += "<en-note>I'm the body of a test note!</en-note>"

my_note.content = content

# Create a new note in the business notebook

# if modifying an existing Note, call updateNote here

my_note = business_note_store.createNote(business_auth_token, my_note)

print "New business note (GUID): %s" % my_note.guid

Page 11: Evernote Business API workshop

#EC2013

Searching for notes# Define the filter to search with

filter = NoteStore.NoteFilter()

filter.words = "EC3"

# Define the data the service should return

result_spec = NoteStore.NotesMetadataResultSpec ()

result_spec.includeTitle = True

# Search

notes_metadata = business_note_store.findNotesMetadata (business_auth_token, filter, 0, 50, result_spec)

# Scroll through the results

print notes_metadata.totalNotes

for note in notes_metadata.notes:

print note.title

Page 12: Evernote Business API workshop

#EC2013

Working with notebooks

Page 13: Evernote Business API workshop

#EC2013

Working with notebooks#Listing the notebooks a user has joined

linked_notebooks = note_store.listLinkedNotebooks(auth_token)

for lnb in linked_notebooks:

if lnb.businessId:

print lnb.shareName

# Listing the notebooks published to the business

published_notebooks = business_note_store.listPublishedBusinessNotebooks(business_auth_token)

for pnb in published_notebooks:

print pnb.name

Page 14: Evernote Business API workshop

#EC2013

Related Content

FindRelated()FindRelated()FindRelated()FindRelated()

Page 15: Evernote Business API workshop

#EC2013

Related Contentresult_query = NoteStore.RelatedQuery ()

result_query.plainText = "text content for searching related notes"

#result_query.filter

result_spec = NoteStore.RelatedResultSpec ()

result_spec.maxNotes = 3

result_spec.maxNotebooks = 2

result_spec.maxTags = 5

related_result = business_note_store.findRelated (business_auth_token, result_query, result_spec)

# Scroll through the resultsfor note in related_result.notes:

print note.title

#related_result.tags, related_result.notebooks

Page 16: Evernote Business API workshop

#EC2013

Provisioning API - Add / RemoveUserStore.inviteToBusiness(string authenticationToken, string emailAddress)

UserStore.removeFromBusiness(string authenticationToken, string emailAddress)

LDAP / ADLDAP / ADLDAP / ADLDAP / AD

Page 17: Evernote Business API workshop

#EC2013

Partner showcase

Azendoo

LiveMinutes

UberConference

Zapier

In house development: Ducati Motor

Page 18: Evernote Business API workshop

#EC2013

Partner showcase - Azendoo

Page 19: Evernote Business API workshop

#EC2013

Partner showcase - LiveMinutes

Page 20: Evernote Business API workshop

#EC2013

Partner showcase - UberConference

Page 21: Evernote Business API workshop

#EC2013

Partner showcase - Zapier

Page 22: Evernote Business API workshop

#EC2013

Partner showcase - Ducati Motor

Page 23: Evernote Business API workshop

#EC2013

Get Help

Documentation: dev.evernote.com

Developer forums

Follow us: @evernote_dev

Contact me: [email protected]

Page 24: Evernote Business API workshop

Thank you!

Julien Boëdec @boedecPartner Integrations Manager