madon.go
author Mikael Berthe <mikael@lilotux.net>
Sat, 29 Apr 2017 17:30:58 +0200
changeset 157 6e9d927d5e32
parent 156 70aadba26338
child 158 083d33bb419b
permissions -rw-r--r--
Bump library version

/*
Copyright 2017 Ollivier Robert
Copyright 2017 Mikael Berthe

Licensed under the MIT license.  Please see the LICENSE file is this directory.
*/

package madon

import (
	"errors"
)

// LimitParams contains common limit/paging options for the Mastodon REST API
type LimitParams struct {
	Limit          int  // Number of items per query
	SinceID, MaxID int  // Boundaries
	All            bool // Get as many items as possible
}

// apiCallParams is a map with the parameters for an API call
type apiCallParams map[string]string

const (
	// MadonVersion contains the version of the Madon library
	MadonVersion = "1.2.0"

	// API version implemented in this library
	apiVersion     = "v1"
	currentAPIPath = "/api/" + apiVersion

	// NoRedirect is the URI for no redirection in the App registration
	NoRedirect = "urn:ietf:wg:oauth:2.0:oob"
)

// Error codes
var (
	ErrUninitializedClient = errors.New("use of uninitialized madon client")
	ErrAlreadyRegistered   = errors.New("app already registered")
	ErrEntityNotFound      = errors.New("entity not found")
	ErrInvalidParameter    = errors.New("incorrect parameter")
	ErrInvalidID           = errors.New("incorrect entity ID")
)