1
0
mirror of https://github.com/dstotijn/go-notion.git synced 2024-11-24 08:42:26 +02:00
Go client for the Notion API.
Go to file
bassettb de8cab86ca
add block parent (#45)
* add block parent

* Use consts for parent types in page unmarshal

Co-authored-by: David Stotijn <dstotijn@gmail.com>
2022-10-27 11:45:25 +02:00
.github/workflows Add testing via GitHub Actions 2022-09-11 20:22:32 +02:00
examples Add support for new Comments endpoints (#43) 2022-09-04 20:48:51 +02:00
block.go Add is_toggleable behavior to heading_{1,2,3} block types (#41) 2022-09-03 21:57:36 +02:00
client_test.go Revert page prop changes (#44) 2022-09-07 21:39:44 +02:00
client.go Add support for new Comments endpoints (#43) 2022-09-04 20:48:51 +02:00
comment.go Add support for new Comments endpoints (#43) 2022-09-04 20:48:51 +02:00
cover.go Add file metadata to file DB page prop 2021-12-20 20:12:44 +01:00
database.go Update status property type behavior (#40) 2022-09-03 21:52:15 +02:00
error.go Simplify APIError.Unwrap, fix missing error message prefixes 2021-05-14 18:24:56 +02:00
file.go Add file metadata to file DB page prop 2021-12-20 20:12:44 +01:00
go.mod Add testing via GitHub Actions 2022-09-11 20:22:32 +02:00
go.sum Add example for Client.CreatePage method (#39) 2022-09-03 21:03:02 +02:00
icon.go Add file metadata to file DB page prop 2021-12-20 20:12:44 +01:00
LICENSE Initial commit 2021-05-13 22:11:32 +02:00
page.go add block parent (#45) 2022-10-27 11:45:25 +02:00
parent.go Add missing block_id parent type 2022-08-20 15:40:41 +02:00
README.md Fix typo 2022-09-11 20:30:04 +02:00
rich_text.go Add support for template mentions in RichText values (#32) 2022-08-14 11:15:15 +02:00
search.go Fix faulty search sort type, add consts for sort props 2021-05-27 20:50:04 +02:00
time_test.go Add custom type for Notion date properties with optional time 2021-05-23 14:02:17 +02:00
time.go Add custom type for Notion date properties with optional time 2021-05-23 14:02:17 +02:00
user.go Add created_by and last_edited_by support, add archived for DB (#30) 2022-08-13 19:46:00 +02:00
util.go Fix incorrect types for Formula, Relation and Rollup page props 2021-05-24 16:33:03 +02:00

go-notion

GitHub tag (latest
SemVer) Test Go
Reference GitHub Go Report
Card

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 September 4, 2022:

Databases
Pages
Blocks
Users
Search
Comments

Installation

$ go get github.com/dstotijn/go-notion

Usage

To obtain an API key, follow Notion’s getting started guide.

import "github.com/dstotijn/go-notion"

(...)

client := notion.NewClient("secret-api-key")

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 a complete reference and the examples directory for more example code.

Status

The Notion API itself is out of beta. This library is updated periodically following documented changes from the Notion changelog.

Note: This library will make breaking changes in its code until v1.0 of the module is released. There are no immediate plans for a v1.0 release. I want the design choices to be solidified and battle-tested more before committing to a stable release (and the possible burden of a "v2+" Go module should I want to introduce breaking changes).

License

MIT License

© 2022 David Stotijn