Go client for the Write.as API https://developers.write.as
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Matt Baer a8d0bf8fa2 Update Onion site address 1 jaar geleden
.github Update developer.write.as -> developers.write.as 4 jaren geleden
.gitignore Initial commit 8 jaren geleden
LICENSE Add README and LICENSE 7 jaren geleden
README.md Use /v2 path in README examples 1 jaar geleden
auth.go Update developer.write.as -> developers.write.as 4 jaren geleden
auth_test.go style: Run goimports on everything 5 jaren geleden
author.go Support creating an organization contributor 2 jaren geleden
author_test.go Support creating an organization contributor 2 jaren geleden
category.go Support setting categories on posts 2 jaren geleden
collection.go Update developer.write.as -> developers.write.as 4 jaren geleden
collection_test.go closes T589 update tests to use dev client 5 jaren geleden
formatting.go Support Markdown endpoint 3 jaren geleden
formatting_test.go Support Markdown endpoint 3 jaren geleden
go.mod Support Go Modules 5 jaren geleden
go.sum Support Go Modules 5 jaren geleden
organization.go Add basic organization structs 2 jaren geleden
post.go Support setting categories on posts 2 jaren geleden
post_test.go closes T589 update tests to use dev client 5 jaren geleden
user.go Gracefully catch 401 error in Client.GetMe method 1 jaar geleden
writeas.go Update Onion site address 1 jaar geleden

README.md

go-writeas

godoc

Official Write.as Go client library.

Installation

go get github.com/writeas/go-writeas/v2

Documentation

See all functionality and usages in the API documentation.

Example usage

import "github.com/writeas/go-writeas/v2"

func main() {
	// Create the client
	c := writeas.NewClient()

	// Publish a post
	p, err := c.CreatePost(&writeas.PostParams{
		Title:   "Title!",
		Content: "This is a post.",
		Font:    "sans",
	})
	if err != nil {
		// Perhaps show err.Error()
	}

	// Save token for later, since it won't ever be returned again
	token := p.Token

	// Update a published post
	p, err = c.UpdatePost(p.ID, token, &writeas.PostParams{
		Content: "Now it's been updated!",
	})
	if err != nil {
		// handle
	}

	// Get a published post
	p, err = c.GetPost(p.ID)
	if err != nil {
		// handle
	}

	// Delete a post
	err = c.DeletePost(p.ID, token)
}

Contributing

The library covers our usage, but might not be comprehensive of the API. So we always welcome contributions and improvements from the community. Before sending pull requests, make sure you’ve done the following:

  • Run goimports on all updated .go files.
  • Document all exported structs and funcs.

License

MIT