Class: TeamBattlesSdk::Generated::Orgs::Item::Members::MembersRequestBuilder

Inherits:
MicrosoftKiotaAbstractions::BaseRequestBuilder
  • Object
show all
Defined in:
lib/teambattles_sdk/generated/orgs/item/members/members_request_builder.rb

Overview

Builds and executes requests for operations under #orgs#identifier#members

Instance Method Summary collapse

Constructor Details

#initialize(path_parameters, request_adapter) ⇒ Object

Instantiates a new MembersRequestBuilder and sets the default values.

Parameters:

  • path_parameters

    Path parameters for the request

  • request_adapter

    The request adapter to use to execute the requests.



37
38
39
# File 'lib/teambattles_sdk/generated/orgs/item/members/members_request_builder.rb', line 37

def initialize(path_parameters, request_adapter)
    super(path_parameters, request_adapter, "{+baseurl}/orgs/{identifier}/members")
end

Instance Method Details

#by_user_id(user_id) ⇒ Object

Gets an item from the TeamBattlesSdk::Generated.orgs.item.members.item collection

Parameters:

  • user_id

    Convex user ID of the member to remove.

Returns:

  • a with_user_item_request_builder

Raises:

  • (StandardError)


25
26
27
28
29
30
# File 'lib/teambattles_sdk/generated/orgs/item/members/members_request_builder.rb', line 25

def by_user_id(user_id)
    raise StandardError, 'user_id cannot be null' if user_id.nil?
    url_tpl_params = @path_parameters.clone
    url_tpl_params["userId"] = user_id
    return TeamBattlesSdk::Generated::Orgs::Item::Members::Item::WithUserItemRequestBuilder.new(url_tpl_params, @request_adapter)
end

#get(request_configuration = nil) ⇒ Object

Returns every active member of the organization in a single response. This list is not paginated and accepts no limit or cursor parameter. Members are sorted by role (owner first, then admin, manager, and member; unrecognized roles tie with member). Each row’s ‘id` is the membership row ID, not the user ID, and the row carries the member’s API-safe user profile, role label, and join timestamp. Visible only when the organization profile is public, or when the API key owner is an active member of the organization; otherwise this returns 403. A non-existent or inactive organization returns 404. Requires orgs.profile:read.

Parameters:

  • request_configuration (defaults to: nil)

    Configuration for the request such as headers, query parameters, and middleware options.

Returns:

  • a Fiber of members_get_response



45
46
47
48
49
50
51
52
53
54
55
56
# File 'lib/teambattles_sdk/generated/orgs/item/members/members_request_builder.rb', line 45

def get(request_configuration=nil)
    request_info = self.to_get_request_information(
        request_configuration
    )
    error_mapping = Hash.new
    error_mapping["401"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    error_mapping["403"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    error_mapping["404"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    error_mapping["429"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    error_mapping["500"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    return @request_adapter.send_async(request_info, lambda {|pn| TeamBattlesSdk::Generated::Orgs::Item::Members::MembersGetResponse.create_from_discriminator_value(pn) }, error_mapping)
end

#post(body, request_configuration = nil) ⇒ Object

Adds a user to the organization with the ADMIN or MEMBER role. The caller (key owner) must be an organization admin or owner. Role ceilings and cascades are enforced exactly as in the web app. Requires orgs.roster:read-write and API writes access. Supports an optional ‘Idempotency-Key` header for safe retries.

Parameters:

  • body

    Add a member to the organization.

  • request_configuration (defaults to: nil)

    Configuration for the request such as headers, query parameters, and middleware options.

Returns:

  • a Fiber of add_org_member_response

Raises:

  • (StandardError)


63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# File 'lib/teambattles_sdk/generated/orgs/item/members/members_request_builder.rb', line 63

def post(body, request_configuration=nil)
    raise StandardError, 'body cannot be null' if body.nil?
    request_info = self.to_post_request_information(
        body, request_configuration
    )
    error_mapping = Hash.new
    error_mapping["400"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    error_mapping["401"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    error_mapping["403"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    error_mapping["404"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    error_mapping["409"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    error_mapping["429"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    error_mapping["500"] = lambda {|pn| TeamBattlesSdk::Generated::Models::Error.create_from_discriminator_value(pn) }
    return @request_adapter.send_async(request_info, lambda {|pn| TeamBattlesSdk::Generated::Models::AddOrgMemberResponse.create_from_discriminator_value(pn) }, error_mapping)
end

#to_get_request_information(request_configuration = nil) ⇒ Object

Returns every active member of the organization in a single response. This list is not paginated and accepts no limit or cursor parameter. Members are sorted by role (owner first, then admin, manager, and member; unrecognized roles tie with member). Each row’s ‘id` is the membership row ID, not the user ID, and the row carries the member’s API-safe user profile, role label, and join timestamp. Visible only when the organization profile is public, or when the API key owner is an active member of the organization; otherwise this returns 403. A non-existent or inactive organization returns 404. Requires orgs.profile:read.

Parameters:

  • request_configuration (defaults to: nil)

    Configuration for the request such as headers, query parameters, and middleware options.

Returns:

  • a request_information



83
84
85
86
87
88
89
90
91
92
93
94
# File 'lib/teambattles_sdk/generated/orgs/item/members/members_request_builder.rb', line 83

def to_get_request_information(request_configuration=nil)
    request_info = MicrosoftKiotaAbstractions::RequestInformation.new()
    unless request_configuration.nil?
        request_info.add_headers_from_raw_object(request_configuration.headers)
        request_info.add_request_options(request_configuration.options)
    end
    request_info.url_template = @url_template
    request_info.path_parameters = @path_parameters
    request_info.http_method = :GET
    request_info.headers.try_add('Accept', 'application/json')
    return request_info
end

#to_post_request_information(body, request_configuration = nil) ⇒ Object

Adds a user to the organization with the ADMIN or MEMBER role. The caller (key owner) must be an organization admin or owner. Role ceilings and cascades are enforced exactly as in the web app. Requires orgs.roster:read-write and API writes access. Supports an optional ‘Idempotency-Key` header for safe retries.

Parameters:

  • body

    Add a member to the organization.

  • request_configuration (defaults to: nil)

    Configuration for the request such as headers, query parameters, and middleware options.

Returns:

  • a request_information

Raises:

  • (StandardError)


101
102
103
104
105
106
107
108
109
110
111
112
113
114
# File 'lib/teambattles_sdk/generated/orgs/item/members/members_request_builder.rb', line 101

def to_post_request_information(body, request_configuration=nil)
    raise StandardError, 'body cannot be null' if body.nil?
    request_info = MicrosoftKiotaAbstractions::RequestInformation.new()
    unless request_configuration.nil?
        request_info.add_headers_from_raw_object(request_configuration.headers)
        request_info.add_request_options(request_configuration.options)
    end
    request_info.set_content_from_parsable(@request_adapter, 'application/json', body)
    request_info.url_template = @url_template
    request_info.path_parameters = @path_parameters
    request_info.http_method = :POST
    request_info.headers.try_add('Accept', 'application/json')
    return request_info
end

#with_url(raw_url) ⇒ Object

Returns a request builder with the provided arbitrary URL. Using this method means any other path or query parameters are ignored.

Parameters:

  • raw_url

    The raw URL to use for the request builder.

Returns:

  • a members_request_builder

Raises:

  • (StandardError)


120
121
122
123
# File 'lib/teambattles_sdk/generated/orgs/item/members/members_request_builder.rb', line 120

def with_url(raw_url)
    raise StandardError, 'raw_url cannot be null' if raw_url.nil?
    return MembersRequestBuilder.new(raw_url, @request_adapter)
end