Update a Notion page

Updates an existing Notion page by replacing all content with new markdown content (PUT-style operation). Optionally updates the page title.

yaml
type: "io.kestra.plugin.notion.page.Update"

Update page content only

yaml
id: notion_update_page_content
namespace: company.team

tasks:
  - id: update_page
    type: io.kestra.plugin.notion.page.Update
    apiToken: "{{ secret('NOTION_API_TOKEN') }}"
    pageId: "12345678-1234-1234-1234-123456789abc"
    content: |
      # Updated Content

      This page has been updated with new content.

      ## New Section
      - Updated item 1
      - Updated item 2

Update page title and content

yaml
id: notion_update_page_full
namespace: company.team

tasks:
  - id: update_page_full
    type: io.kestra.plugin.notion.page.Update
    apiToken: "{{ secret('NOTION_API_TOKEN') }}"
    pageId: "12345678-1234-1234-1234-123456789abc"
    title: "Updated Meeting Notes"
    content: |
      # Meeting Summary - Updated

      **Date:** {{ now() }}

      ## Key Decisions
      - Decision 1
      - Decision 2

      ## Next Steps
      - [ ] Action item 1
      - [ ] Action item 2
Properties

Page ID

The unique identifier of the Notion page

Notion API token

The Notion API integration token (Internal Secret connection)

New page content

The new content for the page in markdown format. This will replace ALL existing content (PUT-style operation).

The HTTP client configuration.

New page title

Optional new title for the page. If not provided, the existing title will be kept.

Archived

Whether the page is archived

Content

The page content in markdown format

Format date-time

Created Time

When the page was created

Format date-time

Last Edited Time

When the page was last edited

Message

Operation result message

Page ID

The unique identifier of the page

Properties

Additional page properties

Page Title

The title of the page

Page URL

The URL of the page in Notion

Format duration

The time allowed to establish a connection to the server before failing.

Default PT5M
Format duration

The time allowed for a read connection to remain idle before closing it.

The password for HTTP basic authentication.

The username for HTTP basic authentication.

Default false

If true, allow a failed response code (response code >= 400)

SubType integer

List of response code allowed for this request

The authentification to use.

Default UTF-8

The default charset for the request.

Default true

Whether redirects should be followed automatically.

SubType string
Possible Values
REQUEST_HEADERSREQUEST_BODYRESPONSE_HEADERSRESPONSE_BODY

The enabled log.

The proxy configuration.

The SSL request options

The timeout configuration.

The address of the proxy server.

The password for proxy authentication.

The port of the proxy server.

Default DIRECT
Possible Values
DIRECTHTTPSOCKS

The type of proxy to use.

The username for proxy authentication.

Whether to disable checking of the remote SSL certificate.

Only applies if no trust store is configured. Note: This makes the SSL connection insecure and should only be used for testing. If you are using a self-signed certificate, set up a trust store instead.

The token for bearer token authentication.