Use Notion page content with formatting as email body

Hi everyone! I am stuck on this issue:

I am trying to fetch the content of a specific Notion page and use it as the body of an email. I have been able to achieve this with plain text from a Notion page but not including formatting. (A workaround is to write the Notion page with html formatting but that’s not really user friendly)

Is there a way I can get text with formatting (such as bold, underline, links and bullet lists) from Notion and use it in an email?

Are the text all in one block on a particular Notion page?

The text is in multiple blocks. The setup needs to support a flexible number of blocks.

I have two related databases in Notion: recipients and emails. I write bulk emails in the emails database and chose which recipients should receive it. When triggering a webhook the scenario in Make is started. The email body should be fetched from the content in the emails database and sent to the related recipients.

Have you been able to make any progress on this? I am trying to accomplish the same workflow
So far, I’ve only been able to get the different blocks from a page using “list page contents” but I’m not sure where to go from there

Here’s an example of what I’ve been able to grab using List Page Content. I wonder if we just need to parse out each “bundle” and “type”.
So when type = paragraph, then you format normal
when type = heading 1, format differently
etc

It’d be cool if we could download the page as HTML.

[
    {
        "object": "block",
        "id": "4aaed730-3642-4122-9009-86b1112c5601",
        "parent": {
            "type": "page_id",
            "page_id": "d64f4006-0c67-4504-aa00-2a64bbe9463e"
        },
        "created_time": "2023-01-03T19:08:00.000Z",
        "last_edited_time": "2023-01-03T19:09:00.000Z",
        "created_by": {
            "object": "user",
            "id": "b336b5d7-c5de-4453-a31f-4573a431c821"
        },
        "last_edited_by": {
            "object": "user",
            "id": "b336b5d7-c5de-4453-a31f-4573a431c821"
        },
        "has_children": false,
        "archived": false,
        "type": "paragraph",
        "paragraph": {
            "rich_text": [
                {
                    "type": "text",
                    "text": {
                        "content": "Page Content 1",
                        "link": null
                    },
                    "annotations": {
                        "bold": false,
                        "italic": false,
                        "strikethrough": false,
                        "underline": false,
                        "code": false,
                        "color": "default"
                    },
                    "plain_text": "Page Content 1",
                    "href": null
                }
            ],
            "color": "default"
        },
        "__IMTLENGTH__": 2,
        "__IMTINDEX__": 1
    },
    {
        "object": "block",
        "id": "6314ad65-8585-4d10-bac2-98b2d47639b5",
        "parent": {
            "type": "page_id",
            "page_id": "d64f4006-0c67-4504-aa00-2a64bbe9463e"
        },
        "created_time": "2023-01-03T19:09:00.000Z",
        "last_edited_time": "2023-01-03T19:09:00.000Z",
        "created_by": {
            "object": "user",
            "id": "b336b5d7-c5de-4453-a31f-4573a431c821"
        },
        "last_edited_by": {
            "object": "user",
            "id": "b336b5d7-c5de-4453-a31f-4573a431c821"
        },
        "has_children": false,
        "archived": false,
        "type": "paragraph",
        "paragraph": {
            "rich_text": [
                {
                    "type": "text",
                    "text": {
                        "content": "Page Content 2 ",
                        "link": null
                    },
                    "annotations": {
                        "bold": false,
                        "italic": false,
                        "strikethrough": false,
                        "underline": false,
                        "code": false,
                        "color": "default"
                    },
                    "plain_text": "Page Content 2 ",
                    "href": null
                }
            ],
            "color": "default"
        },
        "__IMTLENGTH__": 2,
        "__IMTINDEX__": 2
    }
]

Hi! We use a service to get the content of Notion page as an HTML page through the API. We submit a POST request (HTTP, make a request) with Notion API key, page ID and receive the HTML content of Notion page. After that send HTML via email.

here is a link Notion to HTML