QStash

QStash is an HTTP based messaging and scheduling solution for the serverless and edge runtimes.

Integrate the QStash API with the Notion API

Setup the QStash API trigger to run a workflow which integrates with the Notion API. Pipedream's integration platform allows you to integrate QStash and Notion remarkably fast. Free for developers.

Append Block to Parent with Notion API on New Topic Webhook from QStash API
QStash + Notion
 
Try it
Create Endpoint with QStash API on New Database from Notion API
Notion + QStash
 
Try it
Create Endpoint with QStash API on New Page in Database from Notion API
Notion + QStash
 
Try it
Create Endpoint with QStash API on Page or Subpage Updated from Notion API
Notion + QStash
 
Try it
Create Endpoint with QStash API on Updated Page ID from Notion API
Notion + QStash
 
Try it
New Topic Webhook from the QStash API

Emit new events on each new QStash topic message

 
Try it
New Database from the Notion API

Emit new event when a database is created. Note: Databases must be shared with your Pipedream Integtration to trigger event.

 
Try it
New Page in Database from the Notion API

Emit new event when a page in a database is created

 
Try it
Page or Subpage Updated from the Notion API

Emit new event when a page or one of its sub-pages is updated.

 
Try it
Updated Page ID from the Notion API

Emit new event when a selected page is updated

 
Try it
Create Endpoint with the QStash API

Create a new HTTP endpoint on a QStash topic.

 
Try it
Append Block to Parent with the Notion API

Creates and appends blocks to the specified parent. See the documentation

 
Try it
Create Topic with the QStash API

Create a new QStash topic that emits to multiple endpoints.

 
Try it
Create Page with the Notion API

Creates a page from a parent page. The only valid property is title. See the documentation

 
Try it
List Endpoints with the QStash API

Lists all your existing QStash endpoints.

 
Try it

Overview of QStash

QStash API offers a secure, scalable, and simple way to manage message queues and defer tasks. Using this API, you can enqueue messages, schedule tasks to run after a delay, and ensure that tasks are executed exactly once, leveraging the power of serverless architecture. With Pipedream's ability to connect to a multitude of services, you can build complex workflows that trigger actions in other apps based on events in QStash, allowing you to automate cross-application business processes with ease.

Connect QStash

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
import { axios } from '@pipedream/platform';


export default defineComponent({
  props: {
    qstash: {
      type: "app",
      app: "qstash",
    },
    callback_url: {
      type: "string",
      label: "Callback URL",
      description: "A URL that will be called by QStash with the body given",
    },
    delay: {
      type: "string",
      label: "Delay",
      default: 0,
      description: "Delay the HTTP request to the callback URL (seconds)"
    }
  },
  async run({steps, $}) {
    return axios($, {
      url: `https://qstash.upstash.io/v1/publish/${this.callback_url}`,
      method: 'POST',
      headers: {
        'Authorization': `Bearer ${this.qstash.auth.qstash_token}`,
        'Upstash-Delay': `${this.qstash.delay}s`
      },
      data: {
        hello: 'world'
      }
    });
  }
})

Overview of Notion

Notion's API allows for the creation, reading, updating, and deleting of pages, databases, and their contents within Notion. Leveraging Pipedream's platform, you can build workflows that connect Notion with a myriad of other services to automate tasks such as content management, task tracking, and data synchronization. With Pipedream's serverless execution, you can trigger these workflows on a schedule, or by external events from other services, without managing any infrastructure.

Connect Notion

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import { axios } from "@pipedream/platform"
export default defineComponent({
  props: {
    notion: {
      type: "app",
      app: "notion",
    }
  },
  async run({steps, $}) {
    return await axios($, {
      url: `https://api.notion.com/v1/users/me`,
      headers: {
        Authorization: `Bearer ${this.notion.$auth.oauth_access_token}`,
        "Notion-Version": `2021-08-16`,
      },
    })
  },
})