mirror of
https://github.com/dstotijn/go-notion.git
synced 2024-11-24 08:42:26 +02:00
Go client for the Notion API.
block.go | ||
client_test.go | ||
client.go | ||
database.go | ||
error.go | ||
go.mod | ||
go.sum | ||
LICENSE | ||
page.go | ||
parent.go | ||
README.md | ||
rich_text.go | ||
search.go | ||
time_test.go | ||
time.go | ||
user.go | ||
util.go |
go-notion
go-notion is a client for the Notion API, written in Go.
Features
The client supports all (non-deprecated) endpoints available in the Notion API, as of July 20, 2021:
- Retrieve a database
- Query a database
- Create a database
- Retrieve a page
- Create a page
- Update page properties
- Retrieve block children
- Append block children
- Retrieve a user
- List all users
- Search
Installation
$ go get github.com/dstotijn/go-notion
Getting started
To obtain an API key, follow Notion’s getting started guide.
Code example
First, construct a new Client
:
import "github.com/dstotijn/go-notion"
(...)
client := notion.NewClient("secret-api-key")
Then, use the methods defined on Client
to make requests to the API. For
example:
page, err := client.FindPageByID(context.Background(), "18d35eb5-91f1-4dcb-85b0-c340fd965015")
if err != nil {
// Handle error...
}
👉 Check out the docs on pkg.go.dev for further reference and examples.
Status
The Notion API is currently in public beta.
⚠️ Although the API itself is versioned, this client will make breaking
changes in its code until v1.0
of the module is released.
To do
- Write tests
- Provide examples