Evernote Integration

Uploads from the Evernote API support the following types of files:

All file types are selectable. This includes audio, video, image, text, office, and compressed archive files.

Section Quick Jump:

API OAUTH Webhooks

Using the Evernote API

  1. User selects Evernote from services list
  2. user authenticates connection by logging into Evernote account
  3. user is connected and can select files from Evernote in Filestack dialog

Evernote api upload widget

Upload from Evernote

Uploading or "picking" a file from Evernote in the context of Filestack means choosing a file and creating a distributable link to that file after that file is copied to a new storage location.

Sample Upload Code
client.pick({ fromSources: ['evernote'], }).then(result => { console.log(JSON.stringify(result.filesUploaded)) })

Create your own Evernote OAuth application to Connect to Filestack:

By default, you do not need to configure anything to start uploading files from Evernote, Filestack is ready to go out of the box. When a user logs into their Evernote account from your site, the Filestack company application will show up. You can configure it so that your application shows up instead in order to make a more seamless experience for your customers. So let's get started.

  1. Log into Evernote and then go to https://dev.evernote.com/ and click Get An API Key in the top right hand corner of the page.
  2. Fill out the required information. API permissions should be full access.
  3. Copy your Consumer Key and Consumer Secret and enter them in the Filestack developer portal under the Auth Keys section.
  4. Go to https://dev.evernote.com/support/ and click on Activate an API key. Then fill out the form to submit your API key for approval.
  5. Once your application is approved you will receive an email confirmation, and your API key will work when connecting to Evernote through Filestack. Attempting to use your key before it is approved/activated will result in 500 errors from Filestack. When you test your application to make sure it works, you will be asked to authorize the application you created and received approval for.
  6. Success!!!

Evernote Webhooks for Your Application

Evernote Webhooks serve the purpose of notifying users about events that occur in relation to their Filestack account. In your developer portal, you can set one or many urls whose purpose is to receive the messages triggered by specific Filestack events.

These are the three event types that will send messages to your webhook url(s) concerning Evernote:

  • Evernote File Uploads
  • Evernote File Exports
  • Evernote File Conversions

Configuring Evernote Webhooks

Filestack Webhooks are configured in the developer portal under Credentials > Webhooks. If you enter your url and select "All", then one entry will be made for each type of Filestack Webhook Event, including the ones for Evernote. To learn more about configuring and receiving webhooks please visit our main webhooks documentation page.

Receiving a Evernote Webhook Notification

Configuring your server to receive a new webhook is the same as creating any page on your website. If you are using Sinatra, add a new route with the desired URL. In PHP you could create a new .php file on your server. It doesn't need to be complicated. With webhooks, your server is the server receiving the request. You can even use an external service such as RequestBin as shown in the screenshot above.

Webhook data is sent as JSON in the request's body. The full event details are included and can be used directly. The "action" in the JSON is the type of Filestack event that happened, be it a file being uploaded, or simply the Filestack dialog opening.

Filestack will retry sending a webhook 3 times if the first attempt fails. The second attempt to deliver a webhook happens 5 minutes after the first attempt, the third attempt happens after 1 hour, and the final attempt to deliver a webhook happens 12 hours after the first attempt.

Note that for file uploads, both symlinks and files copied with pickAndStore, the "client" field shows the service used.

For conversions, the "provider" shows where the file resides. If the file was stored to Filestack's storage, the provider will be "internal", otherwise it could be "amazon" if the original was stored to S3, or one of the cloud drives Filestack connects to, such as "Evernote" if the link to the file was a symlink.

The following are examples of what the Evernote specific webhook messages include and look like:

  1. File Upload (symlink):

  2. {

  3. File Upload (with store):

  4. {

  5. File Export (save to):

  6. {
      "action": "fp.export",
      "timestamp": 1444257665,
      "id": 142447,
        "source": "https://www.filestackapi.com/api/file/qHi4LxRh28IeEBdJcFpw",
        "client": "Evernote",
        "filename": "newFiletest.jpg",
        "created": "https://www.filestackapi.com/api/file/s40jJOQDGVr2T86cgOAe"

  7. File Conversion:

  8. {