Some change to make github clone easier
Potion is a reverse-engineered API for Notion. Write your content in Notion, and use Potion's hosted API endpoints to read your content.
If you have any questions about using Potion in your project, I'd love to help. Send me an email: [email protected]
I've written a couple of blog posts on my website for using this API.
- How to use Notion as your blog's CMS
- API to read a Notion table
- How to turn a Notion doc into a website
All endpoints are relative to the base URL: https://potion-api.now.sh
<notion-page-id>
refers to the 32 character alphanumeric string in the URL of a Notion doc (but not a query parameter, so not the string after ?v=
).
Lists all entries in a full-page Notion table, along with additional details about each page.
The only query parameter is ?id=<notion-page-id>
.
Generates HTML for the description of a table.
The only query parameter is ?id=<notion-page-id>
.
Generates HTML for a given Notion page. You can insert it as the contents of a blog post, for example.
The only query parameter is ?id=<notion-page-id>
, which can be obtained from the /table
endpoint or just by copy-and-pasting from the URL.
Potion gives you syntax highlighting of Notion code blocks for free, when using the /html
endpoint!
You'll notice that the code block HTML that Potion returns is given CSS classes that make it compatible with Prism.js.
- Pick a theme you like from this README.
- Select the CSS file for that theme from this list and click View Raw.
- Include that stylesheet in the
head
of your HTML page to activate syntax highlighting. For example:
<link rel="stylesheet" href="https://unpkg.com/[email protected]/themes/prism-ghcolors.css" />
Potion supports syntax highlighting for most popular languages, and you can open an issue if you'd like to see a language supported that isn't currently.
Most, but not all, of the common Notion blocks are supported at the moment:
- Text
- To-do List
- Heading 1
- Heading 2
- Heading 3
- Bulleted List
- Numbered List
- Toggle List
- Quote
- Divider
- Link to Page
- Callout
- Image
- Embed
- Web Bookmark
- Video
- Audio
- Code
- File
- Math Equation
- Inline Equation
This project is built to be deployed on Vercel.
For local development, install Vercel's CLI and run vercel dev
.