github.com/aiven/aiven-go-client@v1.36.0/organization_user_group_members.go (about) 1 // Package aiven provides a client for using the Aiven API. 2 package aiven 3 4 type ( 5 // OrganizationUserGroupMembersHandler is the client which interacts with the Organization Users Group Members API on Aiven. 6 OrganizationUserGroupMembersHandler struct { 7 // client is the API client to use. 8 client *Client 9 } 10 11 // OrganizationUserGroupMemberRequest is request structure for the Organization Users Group Member API on Aiven. 12 OrganizationUserGroupMemberRequest struct { 13 // Operation to perform on the group: 14 Operation string `json:"operation"` 15 16 // List of user ids to apply with the operation with 17 MemberIDs []string `json:"member_ids"` 18 } 19 20 // OrganizationUserGroupMember is response element for the Organization Users Group Member List API on Aiven. 21 OrganizationUserGroupMember struct { 22 UserID string `json:"user_id"` 23 LastActivityTime string `json:"last_activity_time"` 24 UserInfo OrganizationUserGroupMemberUserInfo `json:"user_info"` 25 } 26 27 // OrganizationUserGroupMemberUserInfo is 28 OrganizationUserGroupMemberUserInfo struct { 29 UserEmail string `json:"user_email"` 30 RealName string `json:"real_name"` 31 State string `json:"state"` 32 JobTitle string `json:"job_title"` 33 Country string `json:"country"` 34 City string `json:"city"` 35 Department string `json:"department"` 36 CreateTime string `json:"create_time"` 37 } 38 39 // OrganizationUserGroupListResponse is response structure for the Organization Users Groups Members List API on Aiven. 40 OrganizationUserGroupMembersListResponse struct { 41 APIResponse 42 43 Members []OrganizationUserGroupMember `json:"members"` 44 } 45 ) 46 47 // Modify modify's a user group's members. 48 func (h *OrganizationUserGroupMembersHandler) Modify(orgID, userGroupID string, req OrganizationUserGroupMemberRequest) error { 49 path := buildPath("organization", orgID, "user-groups", userGroupID, "members") 50 bts, err := h.client.doPatchRequest(path, req) 51 if err != nil { 52 return err 53 } 54 55 return checkAPIResponse(bts, nil) 56 } 57 58 // List retrieves a list of Organization User Groups. 59 func (h *OrganizationUserGroupMembersHandler) List(orgID, userGroupID string) (*OrganizationUserGroupMembersListResponse, error) { 60 path := buildPath("organization", orgID, "user-groups", userGroupID, "members") 61 bts, err := h.client.doGetRequest(path, nil) 62 if err != nil { 63 return nil, err 64 } 65 66 var r OrganizationUserGroupMembersListResponse 67 68 return &r, checkAPIResponse(bts, &r) 69 }