DEV Community

Cover image for How to Auto-Export Highlights with Zapier
Kei for Glasp

Posted on

How to Auto-Export Highlights with Zapier

This post was originally published on Glasp:
👉 How to Auto-Export Highlights with Zapier

You can automatically export your Glasp highlights — including web articles, PDFs, and YouTube transcripts — to apps like Slack, Google Sheets, Discord, and Gmail using Zapier. This integration uses Glasp's API as a trigger in Zapier, so every new highlight you save is automatically sent to your destination app without any coding.

This guide walks you through the full setup, step by step.


What Is Glasp?

Glasp is a social web highlighter that lets you highlight and organize content from web pages, PDFs, Kindle, and YouTube — all saved to your Glasp profile. With Glasp's API, you can programmatically access your highlights and integrate them into your personal knowledge workflow.

What Is Zapier?

Zapier is a no-code automation platform that connects over 8,000 apps. It uses a trigger-action model: when something happens in one app (the trigger), Zapier automatically performs an action in another app. In this tutorial, Glasp's API serves as the trigger, and your destination app (Slack, Google Sheets, etc.) serves as the action.

What This Workflow Does

This Zap checks for new Glasp highlights on a schedule and sends them to your chosen destination. Specifically, it:

  1. Fetches your latest highlights from Glasp using the Glasp API

  2. Parses the highlight data (title, URL, highlight text, tags, and notes)

  3. Sends each new highlight to your destination app automatically

What You'll Need

  • A Glasp account (free at glasp.co)

  • A Zapier account (free plan works for basic setups)

  • Your Glasp Access Token (we'll show you how to get it)

  • A destination app — Slack, Google Sheets, Discord, Gmail, or any app Zapier supports


Step 1: Go to Zapier

First, open the Glasp integration page on Zapier. If you don't have a Zapier account yet, you can create one for free — the free plan supports up to 100 tasks per month, which is enough for most personal workflows.

You'll see a set of pre-built templates for connecting Glasp with popular apps like Slack, Discord, and Google Sheets.

Click “Connect Glasp to 8,000 apps" to open the Zap editor.

Once the editor opens, you'll see the Zap with a single step: a Glasp trigger.


Step 2: Get Your Glasp Access Token

To connect Zapier with Glasp, you’ll need your personal API access token.

Once you’ve signed up for Glasp, go to Glasp Access Token page. Click Generate if you haven't created one yet, or copy your existing token.

Back in Zapier, paste your token into the API Key field when prompted to connect your Glasp account.

💡 Keep your access token private. Don't share it publicly or commit it to a public repository.


Step 3: Test the trigger

After connecting your Glasp account, Zapier will ask you to test the trigger. This step verifies that Zapier can successfully fetch your highlights from Glasp's API.

In the trigger setup, select "New Document" as the trigger event and click "Continue."

Click "Test trigger" and wait a few seconds. Zapier will pull in your most recent highlights as sample data. You should see your highlight text, the source URL, page title, tags, and any notes you've added.

If the test fails, double-check that:

  • Your access token is correct (go back to Step 2 and regenerate if needed)

  • You have at least one highlight saved in your Glasp account

Once the test successfully finishes, click "Continue with selected record." This tells Zapier to use this highlight as sample data for configuring the next step — your destination app.


Step 4: Connect Your Destination

Now add an action step — the app where your highlights will be sent. Click the "+" button below the trigger, search for your destination app, and select it.

Choose your destination app and follow the example below. If your app isn't listed here, the setup process is similar — select your app, connect your account, and map the Glasp data fields.

Below are setup instructions for the most popular destinations.

Example: Slack

After selecting Slack, choose "Send Channel Message" as an action event. Then, click "Sign in" to connect to Slack.

A Slack authorization window will appear. Select your workspace and click "Allow" to grant Zapier access.

Connect your Slack workspace and choose which channel should receive your highlights. You can map the Glasp data fields to your Slack message format:

  • Channel: Select the channel (e.g., #highlights or #reading-notes)

  • Message Text: Map the highlight text, page title, and URL from the trigger data

For example, you could format your message as:

📌 * [title]*

Highlights Text (combined)

🔗 < [URL] | Original Article >

🟢 < [Glasp URL] | Open in Glasp >

You can also customize how the message appears in Slack. Scroll down in the configuration panel to find these optional settings:

  • Bot Name: Change this to "Glasp" (or any name you prefer) so you can easily identify highlight notifications in your channel.

  • Bot Icon: Paste the Glasp logo URL to give the bot a recognizable icon: https://storage.googleapis.com/glasp.co/src/img/glasp_logo.png

  • Auto-Expand Links: Set to Yes so that URLs in your highlights automatically show a preview in Slack.

The rest of the settings can be left as default. Click "Continue" to proceed to testing.

After configuring the message fields, click "Continue" to move to the Test tab. Click "Test step" to send a test message to your Slack channel. Zapier will send a real message using your most recent Glasp highlight data.

If the test succeeds, you'll see "A Message was sent to Slack" with the output data showing your channel ID and message content. Go to your Slack channel and confirm the message was delivered correctly.


Example: Google Sheet

Select Google Sheets as the action app, then choose "Create Spreadsheet Row" as the action event. This adds a new row to your spreadsheet for each Glasp highlight. Click "Sign in" to connect your Google account.

After signing in, select the spreadsheet and worksheet where you want highlights saved. Before configuring the action in Zapier, create a new Google Spreadsheet with column headers in the first row. Zapier will automatically detect these headers as fields. You can use any column names you like — here's an example:

Then go back to Zapier and select your spreadsheet and worksheet. Zapier automatically detects the column headers as fields. Click the "+" button next to each field to map it to the corresponding Glasp data:

  • Title → Title

  • Highlight → Highlights Text (combined)

  • URL → URL

  • Tags → Tags

  • Date → Created At

Click "Continue" and then "Test step" to send a test row to your spreadsheet. If your test is successful, you can see the sheet populated with your Glasp highlight data like below:

Then proceed to Step 5 to publish your Zap.


Example: Discord

Select Discord as the action app, then choose "Send Channel Message" as the action event. Click "Sign in" to connect your Discord account.

A Discord authorization window will appear. Select your server, review the permissions, and click "Authorize" to grant Zapier access.

Once connected, configure the message:

  • Channel: Select the channel where you want highlights posted (e.g., glasp-discord)

  • Message Text: Click the "+" button to map Glasp data fields. You can include the original article URL and Glasp URL for easy access to both the source and your highlights.

  • Bot Name: Set to "Glasp"

Click "Continue" and then "Test step" to send a test message to your Discord channel. Confirm it looks correct, then proceed to Step 5 to publish.


Example: Gmail

Select Gmail as the action app, then choose "Send Email" as the action event. Click "Sign in" to connect your Google account.

Once connected, configure the email. The key fields are:

  • To: Your own email address (or anyone you want to receive the highlights)

  • From Name: Set to "Glasp" so you can easily identify these emails in your inbox

  • Subject: Map to the page title from Glasp (e.g., New Highlight: {Title})

  • Body Type: Select Plain for simple text, or HTML if you want formatted emails

  • Body: Click the "+" button to map Glasp data fields. For example:

The other settings (Cc, Bcc, Attachments, Signature) can be left as default. Click "Continue" and then "Test step" to send a test email.

Tip: Set up a Gmail filter to automatically label these emails (e.g., "Glasp Highlights") to keep them organized in your inbox.


Step 5: Publish the Workflow

If the test is successful, click "Publish" to activate your Zap. You'll see a confirmation: "Your Zap is live!"

From now on, Zapier will automatically check for new Glasp highlights on a schedule (every 1 to 15 minutes, depending on your plan) and send them to your destination app. You can monitor your Zap's activity and task history in the Zapier dashboard.

You'll see a confirmation: "Success! Your Zap is live!" Your Zap will now run automatically every time a new highlight is saved in Glasp.

Zapier checks for new highlights on a schedule (every 1 to 15 minutes, depending on your plan). You can monitor your Zap's activity and task history in the Zapier dashboard.


Tips & Troubleshooting

  • Free plan limits: Zapier's free plan allows 100 tasks per month. If you highlight frequently, consider upgrading your plan.

  • Multiple destinations: You can create separate Zaps to send highlights to different apps simultaneously — for example, Google Sheets for long-term storage and Slack for team sharing.

  • Filtering by tag: Add a Zapier Filter step between the trigger and action to only process highlights with specific tags or from specific domains.

  • Prefer self-hosted? We also have a guide for n8n, an open-source alternative to Zapier.


FAQ

Q: Is Zapier free to use with Glasp?

A: Yes. Zapier's free plan supports up to 100 tasks per month, which is enough for most personal workflows. Each highlight sent to a destination counts as one task. If you highlight more frequently, you may need a paid plan.

Q: How often does Zapier check for new highlights?

A: Zapier checks for new triggers on a schedule. On the free plan, it checks every 15 minutes. Paid plans can check as frequently as every 1–2 minutes.

Q: Can I send highlights to multiple apps at the same time?

A: Yes. Create a separate Zap for each destination. For example, one Zap for Google Sheets and another for Slack. They all use the same Glasp trigger independently.

Q: What data fields are available from Glasp?

A: The Glasp trigger provides: Title, URL, Highlights Text (combined), Tags, Created At, Glasp URL, and more. You can map any of these fields to your destination app.

Q: Can I filter highlights by tag or domain before sending?

A: Yes. Add a Zapier Filter step between the trigger and the action. You can set conditions like "only continue if Tags contains 'research'" or "only continue if URL contains 'arxiv.org."

Q: Does this work with Kindle highlights?

A: Currently, the Zapier integration supports web article highlights, PDF highlights, and YouTube transcript highlights. Kindle highlights are not yet available through the Glasp API.

Q: My Zap stopped working. What should I check?

A: First, check your Zapier dashboard for error logs. Common issues include: an expired Glasp access token (regenerate it in your Glasp settings), a disconnected destination account (re-authenticate in Zapier), or exceeding your Zapier plan's task limit.

Q: Can I export my existing highlights, or only new ones?

A: Zapier only triggers on new highlights saved after the Zap is published. To export existing highlights, use the Glasp export feature or the Glasp API directly.

Q: Is there an alternative to Zapier for this workflow?

A: Yes. We have guides for n8n (a self-hosted, open-source automation tool) and GitHub Actions (ideal for developers who prefer code-based automation). Glasp also has built-in integrations with apps like Notion, Obsidian, and Readwise.

If you have any questions or feedback, feel free to leave a comment below or reach out to us at hi[at]glasp.co

Top comments (0)