github.com/grokify/go-ringcentral-client@v0.3.31/office/v1/examples/glip/glip_groups/glip_groups.go (about)

     1  package main
     2  
     3  import (
     4  	"context"
     5  	"fmt"
     6  	"os"
     7  
     8  	"github.com/grokify/goauth"
     9  	"github.com/grokify/goauth/authutil"
    10  	"github.com/grokify/mogo/config"
    11  	"github.com/grokify/mogo/fmt/fmtutil"
    12  
    13  	rc "github.com/grokify/go-ringcentral-client/office/v1/client"
    14  	ru "github.com/grokify/go-ringcentral-client/office/v1/util"
    15  )
    16  
    17  func main() {
    18  	_, err := config.LoadDotEnv([]string{os.Getenv("ENV_PATH"), "./.env"}, 1)
    19  	if err != nil {
    20  		panic(err)
    21  	}
    22  
    23  	apiClient, err := ru.NewApiClientPassword(
    24  		goauth.CredentialsOAuth2{
    25  			ServerURL:    os.Getenv("RINGCENTRAL_SERVER_URL"),
    26  			ClientID:     os.Getenv("RINGCENTRAL_CLIENT_ID"),
    27  			ClientSecret: os.Getenv("RINGCENTRAL_CLIENT_SECRET"),
    28  			GrantType:    authutil.GrantTypePassword,
    29  			Username:     os.Getenv("RINGCENTRAL_USERNAME"),
    30  			Password:     os.Getenv("RINGCENTRAL_PASSWORD")})
    31  	if err != nil {
    32  		panic(err)
    33  	}
    34  	info, resp, err := apiClient.GlipApi.LoadGroupList(
    35  		context.Background(), &rc.LoadGroupListOpts{})
    36  
    37  	if err != nil {
    38  		panic(err)
    39  	} else if resp.StatusCode >= 300 {
    40  		panic(fmt.Errorf("API Status %v", resp.StatusCode))
    41  	}
    42  	fmtutil.PrintJSON(info)
    43  
    44  	fmt.Println("DONE")
    45  }