github.com/clerkinc/clerk-sdk-go@v1.49.1/clerk/clients.go (about) 1 package clerk 2 3 import "fmt" 4 5 type ClientsService service 6 7 type ClientResponse struct { 8 Object string `json:"object"` 9 ID string `json:"id"` 10 LastActiveSessionID *string `json:"last_active_session_id"` 11 SessionIDs []string `json:"session_ids"` 12 Sessions []*Session `json:"sessions"` 13 Ended bool `json:"ended"` 14 } 15 16 func (s *ClientsService) ListAll() ([]ClientResponse, error) { 17 clientsUrl := "clients" 18 req, _ := s.client.NewRequest("GET", clientsUrl) 19 20 var clients []ClientResponse 21 _, err := s.client.Do(req, &clients) 22 if err != nil { 23 return nil, err 24 } 25 return clients, nil 26 } 27 28 func (s *ClientsService) Read(clientId string) (*ClientResponse, error) { 29 clientUrl := fmt.Sprintf("%s/%s", ClientsUrl, clientId) 30 req, _ := s.client.NewRequest("GET", clientUrl) 31 32 var clientResponse ClientResponse 33 _, err := s.client.Do(req, &clientResponse) 34 if err != nil { 35 return nil, err 36 } 37 return &clientResponse, nil 38 } 39 40 func (s *ClientsService) Verify(token string) (*ClientResponse, error) { 41 var clientResponse ClientResponse 42 43 err := doVerify(s.client, ClientsVerifyUrl, token, &clientResponse) 44 if err != nil { 45 return nil, err 46 } 47 return &clientResponse, nil 48 }