Install
go get eagraiclainne.ie/pkg/client
eagraiclainne.ie serves the module redirect to the
repository.
Quick start
Sign in, hold the token, make calls — here Cormac adds Saturday's match from a script:
package main
import (
"context"
"log"
"eagraiclainne.ie/pkg/client"
corev1 "eagraiclainne.ie/gen/go/api/core/v1"
)
func main() {
ctx := context.Background()
c, err := client.New("http://your-server:8080", nil)
if err != nil {
log.Fatal(err)
}
login, err := c.Users.Login(ctx, "cormac@example.ie", "password")
if err != nil {
log.Fatal(err)
}
c.SetAuthToken(login.Token)
_, err = c.Events.Create(ctx, &client.CreateEventParams{
Name: "Football match",
Type: corev1.EventType_EVENT_TYPE_APPOINTMENT,
})
if err != nil {
log.Fatal(err)
}
}
Services
| Service | Covers |
|---|---|
c.Users | accounts, login, roles, relations |
c.Events | calendar events, attendance, occurrences |
c.Items | jobs, assignment, deadlines, completion |
c.Rewards | granting and claiming rewards |
c.ApiKeys | machine credentials (admin) |
Reading and editing an event
From v2.0.0 the calendar is open to the whole household. Every member reads every event, and anyone but a guest can add themselves to one. Attendance and authority are separate: adding yourself records you as an attendee, while changing an event, deleting it, or removing somebody else needs an owner relation on that event. Code that took membership as proof of edit rights has to ask for the owner relation instead.
The full reference with every method lives in the repository at pkg/client/README.md, and each method carries godoc.