is a Confluence REST API client implementation written in GOLANG.
- get, update, delete content
- get, update, delete content templates and blueprints
- get comments, attachments, children of content objects, history, watchers
- get, add ,delete labels
- get user information
- search using CQL
If you miss some feature implementation, feel free to open an issue or send pull requests. I will take look as soon as possible.
If this project helps you, feel free to give us a cup of coffee :).
If you already installed GO on your system and configured it properly than its simply:
go get github.com/coggsflod/confluence-go-api
If not follow these instructions
package main
import (
"fmt"
"log"
"github.com/coggsflod/confluence-go-api"
)
func main() {
// initialize a new api instance
api, err := goconfluence.NewAPI("https://<your-domain>.atlassian.net/wiki/rest/api", "<username>", "<api-token>")
if err != nil {
log.Fatal(err)
}
// get current user information
currentUser, err := api.CurrentUser()
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", currentUser)
}
To generate a confluence personal access token (PAT) see this article: using personal access tokens. Only set the token in the NewAPI function
api, err := goconfluence.NewAPI("https://<your-domain>.atlassian.net/wiki/rest/api", "", "<personal-access-token>")
see examples for some more usage examples
You find the full code documentation here.
The Confluence API documentation can be found here.
Thank you for participating to this project. Please see our Contribution Guidlines for more information.
This repo uses pre-commit hooks. Please install pre-commit and do pre-commit install
Format commit messaged according to Conventional Commits standard.
Whenever you need to version something make use of Semantic Versioning.