Go to file
2018-07-09 12:53:53 +02:00
client Added first groups implementation 2018-07-09 12:53:53 +02:00
vendor Nextcloud API Client, Uers/Response types, User list/search/get/create/delete 2018-07-05 12:50:56 +02:00
.gitignore Nextcloud API Client, Uers/Response types, User list/search/get/create/delete 2018-07-05 12:50:56 +02:00
gonextcloud.iml Nextcloud API Client, Uers/Response types, User list/search/get/create/delete 2018-07-05 12:50:56 +02:00
README.md improved readme ;D 2018-07-05 16:19:55 +02:00

[WIP] Nextcloud Go API Client

A simple Client for Nextcloud's API in Go.

TODO

  • Auth
    • login
    • logout
  • Users
    • search
    • list
    • get infos
    • create
    • update
    • delete
    • enable
    • disable
    • get groups
    • add to group
    • remove from group
    • get subadmin group
    • promote subadmin
    • demote subadmin
    • send welcome mail
  • Groups
    • create
    • delete
    • get members
    • get subadmins
  • Apps
    • list
    • get infos
    • enable
    • disable

Getting started

Authentication

package main

import (
	"fmt"
	"github.com/partitio/gonextcloud/client"
)

func main() {
	url := "https://www.mynextcloud.com"
	username := "admin"
	password := "password"
	c, err := client.NewClient(url)
	if err != nil {
		panic(err)
	}
	if err := c.Login(username, password); err != nil {
		panic(err)
	}
	defer c.Logout()
}

Users

List :

func (c *Client) UserList() ([]string, error)

Search

func (c *Client) UserSearch(search string) ([]string, error)

Get

func (c *Client) User(name string) (*types.User, error)

Create

func (c *Client) UserCreate(username string, password string) error

Delete

func (c *Client) UserDelete(name string) error 

Enable

func (c *Client) UserEnable(name string) error 

Disable

func (c *Client) UserDisable(name string) error 

Update

func (c *Client) UserUpdateEmail(name string, email string) error
func (c *Client) UserUpdateDisplayName(name string, displayName string) error
func (c *Client) UserUpdatePhone(name string, phone string) error
func (c *Client) UserUpdateAddress(name string, address string) error
func (c *Client) UserUpdateWebSite(name string, website string) error
func (c *Client) UserUpdateTwitter(name string, twitter string) error
func (c *Client) UserUpdatePassword(name string, password string) error
func (c *Client) UserUpdateQuota(name string, quota string) error

Groups

func (c *Client) UserGroupList(name string) ([]string, error)
func (c *Client) UserGroupAdd(name string, group string) error 
func (c *Client) UserGroupRemove(name string, group string) error 
func (c *Client) UserGroupPromote(name string, group string) error 
func (c *Client) UserGroupDemote(name string, group string) error 
func (c *Client) UserGroupSubAdminList(name string) ([]string, error) 

Welcome Mail

func (c *Client) UserSendWelcomeEmail(name string) error 

Groups

TODO

Apps

TODO