Documentation
¶
Index ¶
- func OperationTypeChoices() []string
- type Handler
- type MemberOut
- type OperationType
- type UserGroupCreateIn
- type UserGroupCreateOut
- type UserGroupGetOut
- type UserGroupHandler
- func (h *UserGroupHandler) UserGroupCreate(ctx context.Context, organizationId string, in *UserGroupCreateIn) (*UserGroupCreateOut, error)
- func (h *UserGroupHandler) UserGroupDelete(ctx context.Context, organizationId string, userGroupId string) error
- func (h *UserGroupHandler) UserGroupGet(ctx context.Context, organizationId string, userGroupId string) (*UserGroupGetOut, error)
- func (h *UserGroupHandler) UserGroupMemberList(ctx context.Context, organizationId string, userGroupId string) ([]MemberOut, error)
- func (h *UserGroupHandler) UserGroupMembersUpdate(ctx context.Context, organizationId string, userGroupId string, ...) error
- func (h *UserGroupHandler) UserGroupUpdate(ctx context.Context, organizationId string, userGroupId string, ...) (*UserGroupUpdateOut, error)
- func (h *UserGroupHandler) UserGroupsList(ctx context.Context, organizationId string) ([]UserGroupOut, error)
- type UserGroupMembersUpdateIn
- type UserGroupOut
- type UserGroupUpdateIn
- type UserGroupUpdateOut
- type UserInfoOut
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func OperationTypeChoices ¶
func OperationTypeChoices() []string
Types ¶
type Handler ¶
type Handler interface {
// UserGroupCreate create a group
// POST /v1/organization/{organization_id}/user-groups
// https://api.aiven.io/doc/#tag/Groups/operation/UserGroupCreate
UserGroupCreate(ctx context.Context, organizationId string, in *UserGroupCreateIn) (*UserGroupCreateOut, error)
// UserGroupDelete delete a group
// DELETE /v1/organization/{organization_id}/user-groups/{user_group_id}
// https://api.aiven.io/doc/#tag/Groups/operation/UserGroupDelete
UserGroupDelete(ctx context.Context, organizationId string, userGroupId string) error
// UserGroupGet retrieve a group
// GET /v1/organization/{organization_id}/user-groups/{user_group_id}
// https://api.aiven.io/doc/#tag/Groups/operation/UserGroupGet
UserGroupGet(ctx context.Context, organizationId string, userGroupId string) (*UserGroupGetOut, error)
// UserGroupMemberList list group members
// GET /v1/organization/{organization_id}/user-groups/{user_group_id}/members
// https://api.aiven.io/doc/#tag/Groups/operation/UserGroupMemberList
UserGroupMemberList(ctx context.Context, organizationId string, userGroupId string) ([]MemberOut, error)
// UserGroupMembersUpdate add or remove group members
// PATCH /v1/organization/{organization_id}/user-groups/{user_group_id}/members
// https://api.aiven.io/doc/#tag/Groups/operation/UserGroupMembersUpdate
UserGroupMembersUpdate(ctx context.Context, organizationId string, userGroupId string, in *UserGroupMembersUpdateIn) error
// UserGroupUpdate update a group
// PATCH /v1/organization/{organization_id}/user-groups/{user_group_id}
// https://api.aiven.io/doc/#tag/Groups/operation/UserGroupUpdate
UserGroupUpdate(ctx context.Context, organizationId string, userGroupId string, in *UserGroupUpdateIn) (*UserGroupUpdateOut, error)
// UserGroupsList list groups
// GET /v1/organization/{organization_id}/user-groups
// https://api.aiven.io/doc/#tag/Groups/operation/UserGroupsList
UserGroupsList(ctx context.Context, organizationId string) ([]UserGroupOut, error)
}
type MemberOut ¶
type MemberOut struct {
LastActivityTime *time.Time `json:"last_activity_time,omitempty"` // Last Activity Time
UserId string `json:"user_id"` // User ID
UserInfo UserInfoOut `json:"user_info"` // OrganizationUserInfo
}
type OperationType ¶
type OperationType string
const ( OperationTypeAddMembers OperationType = "add_members" OperationTypeRemoveMembers OperationType = "remove_members" )
type UserGroupCreateIn ¶
type UserGroupCreateIn struct {
Description string `json:"description"`
UserGroupName string `json:"user_group_name"` // User Group Name
}
UserGroupCreateIn UserGroupCreateRequestBody
type UserGroupCreateOut ¶
type UserGroupCreateOut struct {
CreateTime time.Time `json:"create_time"` // User group creation time
Description string `json:"description"`
ManagedByScim bool `json:"managed_by_scim"` // Managed By Scim
UpdateTime time.Time `json:"update_time"` // User group last update time
UserGroupId string `json:"user_group_id"` // User Group ID
UserGroupName string `json:"user_group_name"` // User Group Name
}
UserGroupCreateOut UserGroupCreateResponse
type UserGroupGetOut ¶
type UserGroupGetOut struct {
CreateTime time.Time `json:"create_time"` // User group creation time
Description string `json:"description"`
ManagedByScim bool `json:"managed_by_scim"` // Managed By Scim
UpdateTime time.Time `json:"update_time"` // User group last update time
UserGroupId string `json:"user_group_id"` // User Group ID
UserGroupName string `json:"user_group_name"` // User Group Name
}
UserGroupGetOut UserGroupGetResponse
type UserGroupHandler ¶
type UserGroupHandler struct {
// contains filtered or unexported fields
}
func NewHandler ¶
func NewHandler(doer doer) UserGroupHandler
func (*UserGroupHandler) UserGroupCreate ¶
func (h *UserGroupHandler) UserGroupCreate(ctx context.Context, organizationId string, in *UserGroupCreateIn) (*UserGroupCreateOut, error)
func (*UserGroupHandler) UserGroupDelete ¶
func (*UserGroupHandler) UserGroupGet ¶
func (h *UserGroupHandler) UserGroupGet(ctx context.Context, organizationId string, userGroupId string) (*UserGroupGetOut, error)
func (*UserGroupHandler) UserGroupMemberList ¶
func (*UserGroupHandler) UserGroupMembersUpdate ¶
func (h *UserGroupHandler) UserGroupMembersUpdate(ctx context.Context, organizationId string, userGroupId string, in *UserGroupMembersUpdateIn) error
func (*UserGroupHandler) UserGroupUpdate ¶
func (h *UserGroupHandler) UserGroupUpdate(ctx context.Context, organizationId string, userGroupId string, in *UserGroupUpdateIn) (*UserGroupUpdateOut, error)
func (*UserGroupHandler) UserGroupsList ¶
func (h *UserGroupHandler) UserGroupsList(ctx context.Context, organizationId string) ([]UserGroupOut, error)
type UserGroupMembersUpdateIn ¶
type UserGroupMembersUpdateIn struct {
MemberIds []string `json:"member_ids"` // List of user IDs to apply the operation on
Operation OperationType `json:"operation"` // Operation to be performed on the group
}
UserGroupMembersUpdateIn UserGroupMembersUpdateRequestBody
type UserGroupOut ¶
type UserGroupOut struct {
CreateTime time.Time `json:"create_time"` // User group creation time
Description string `json:"description"`
ManagedByScim bool `json:"managed_by_scim"` // Managed By Scim
MemberCount int `json:"member_count"` // Member Count
UpdateTime time.Time `json:"update_time"` // User group last update time
UserGroupId string `json:"user_group_id"` // User Group ID
UserGroupName string `json:"user_group_name"` // User Group Name
}
type UserGroupUpdateIn ¶
type UserGroupUpdateIn struct {
Description *string `json:"description,omitempty"`
UserGroupName *string `json:"user_group_name,omitempty"` // User Group Name
}
UserGroupUpdateIn UserGroupUpdateRequestBody
type UserGroupUpdateOut ¶
type UserGroupUpdateOut struct {
CreateTime time.Time `json:"create_time"` // User group creation time
Description string `json:"description"`
ManagedByScim bool `json:"managed_by_scim"` // Managed By Scim
UpdateTime time.Time `json:"update_time"` // User group last update time
UserGroupId string `json:"user_group_id"` // User Group ID
UserGroupName string `json:"user_group_name"` // User Group Name
}
UserGroupUpdateOut UserGroupUpdateResponse
type UserInfoOut ¶
type UserInfoOut struct {
City *string `json:"city,omitempty"`
Country *string `json:"country,omitempty"`
CreateTime time.Time `json:"create_time"` // Creation time
Department *string `json:"department,omitempty"`
IsApplicationUser bool `json:"is_application_user"` // Is Application User
JobTitle *string `json:"job_title,omitempty"` // Job Title
ManagedByScim bool `json:"managed_by_scim"` // Managed By Scim
ManagingOrganizationId *string `json:"managing_organization_id,omitempty"` // Managing Organization ID
RealName string `json:"real_name"` // Real Name
State string `json:"state"`
UserEmail string `json:"user_email"` // User Email
}
UserInfoOut OrganizationUserInfo
Click to show internal directories.
Click to hide internal directories.