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 year ago
.github Update developer.write.as -> developers.write.as 4 years ago
.gitignore Initial commit 8 years ago
LICENSE Add README and LICENSE 7 years ago
README.md Use /v2 path in README examples 1 year ago
auth.go Update developer.write.as -> developers.write.as 4 years ago
auth_test.go style: Run goimports on everything 5 years ago
author.go Support creating an organization contributor 2 years ago
author_test.go Support creating an organization contributor 2 years ago
category.go Support setting categories on posts 2 years ago
collection.go Update developer.write.as -> developers.write.as 4 years ago
collection_test.go closes T589 update tests to use dev client 5 years ago
formatting.go Support Markdown endpoint 3 years ago
formatting_test.go Support Markdown endpoint 3 years ago
go.mod Support Go Modules 5 years ago
go.sum Support Go Modules 5 years ago
organization.go Add basic organization structs 2 years ago
post.go Support setting categories on posts 2 years ago
post_test.go closes T589 update tests to use dev client 5 years ago
user.go Gracefully catch 401 error in Client.GetMe method 1 year ago
writeas.go Update Onion site address 1 year ago

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