Class: MicrosoftGraph::AppCatalogs::TeamsApps::TeamsAppsRequestBuilder

Inherits:
MicrosoftKiotaAbstractions::BaseRequestBuilder
  • Object
show all
Defined in:
lib/app_catalogs/teams_apps/teams_apps_request_builder.rb

Overview

Provides operations to manage the teamsApps property of the microsoft.graph.appCatalogs entity.

Defined Under Namespace

Classes: TeamsAppsRequestBuilderGetQueryParameters

Instance Method Summary collapse

Constructor Details

#initialize(path_parameters, request_adapter) ⇒ Object

Instantiates a new TeamsAppsRequestBuilder and sets the default values.

Parameters:

  • path_parameters

    Path parameters for the request

  • request_adapter

    The request adapter to use to execute the requests.



40
41
42
# File 'lib/app_catalogs/teams_apps/teams_apps_request_builder.rb', line 40

def initialize(path_parameters, request_adapter)
    super(path_parameters, request_adapter, "{+baseurl}/appCatalogs/teamsApps{?%24top,%24skip,%24search,%24filter,%24count,%24orderby,%24select,%24expand}")
end

Instance Method Details

#by_teams_app_id(teams_app_id) ⇒ Object

Provides operations to manage the teamsApps property of the microsoft.graph.appCatalogs entity.

Parameters:

  • teams_app_id

    The unique identifier of teamsApp

Returns:

  • a teams_app_item_request_builder

Raises:

  • (StandardError)


28
29
30
31
32
33
# File 'lib/app_catalogs/teams_apps/teams_apps_request_builder.rb', line 28

def by_teams_app_id(teams_app_id)
    raise StandardError, 'teams_app_id cannot be null' if teams_app_id.nil?
    url_tpl_params = @path_parameters.clone
    url_tpl_params["teamsApp%2Did"] = teams_app_id
    return MicrosoftGraph::AppCatalogs::TeamsApps::Item::TeamsAppItemRequestBuilder.new(url_tpl_params, @request_adapter)
end

#countObject

Provides operations to count the resources in the collection.



20
21
22
# File 'lib/app_catalogs/teams_apps/teams_apps_request_builder.rb', line 20

def count()
    return MicrosoftGraph::AppCatalogs::TeamsApps::Count::CountRequestBuilder.new(@path_parameters, @request_adapter)
end

#get(request_configuration = nil) ⇒ Object

List apps from the Microsoft Teams app catalog.This includes apps from the Microsoft Teams store, as well as apps from your organization’s app catalog (the tenant app catalog). To get apps from your organization’s app catalog only, specify organization as the distributionMethod in the request.

Parameters:

  • request_configuration (defaults to: nil)

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

Returns:

  • a Fiber of teams_app_collection_response



48
49
50
51
52
53
54
55
56
# File 'lib/app_catalogs/teams_apps/teams_apps_request_builder.rb', line 48

def get(request_configuration=nil)
    request_info = self.to_get_request_information(
        request_configuration
    )
    error_mapping = Hash.new
    error_mapping["4XX"] = lambda {|pn| MicrosoftGraph::Models::ODataErrorsODataError.create_from_discriminator_value(pn) }
    error_mapping["5XX"] = lambda {|pn| MicrosoftGraph::Models::ODataErrorsODataError.create_from_discriminator_value(pn) }
    return @request_adapter.send_async(request_info, lambda {|pn| MicrosoftGraph::Models::TeamsAppCollectionResponse.create_from_discriminator_value(pn) }, error_mapping)
end

#post(body, request_configuration = nil) ⇒ Object

Publish an app to the Microsoft Teams apps catalog.Specifically, this API publishes the app to your organization’s catalog (the tenant app catalog);the created resource will have a distributionMethod property value of organization. The requiresReview property allows any user to submit an app for review by an administrator. Admins can approve or reject these apps via this API or the Microsoft Teams admin center.

Parameters:

  • body

    The request body

  • request_configuration (defaults to: nil)

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

Returns:

  • a Fiber of teams_app

Raises:

  • (StandardError)


63
64
65
66
67
68
69
70
71
72
# File 'lib/app_catalogs/teams_apps/teams_apps_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["4XX"] = lambda {|pn| MicrosoftGraph::Models::ODataErrorsODataError.create_from_discriminator_value(pn) }
    error_mapping["5XX"] = lambda {|pn| MicrosoftGraph::Models::ODataErrorsODataError.create_from_discriminator_value(pn) }
    return @request_adapter.send_async(request_info, lambda {|pn| MicrosoftGraph::Models::TeamsApp.create_from_discriminator_value(pn) }, error_mapping)
end

#to_get_request_information(request_configuration = nil) ⇒ Object

List apps from the Microsoft Teams app catalog.This includes apps from the Microsoft Teams store, as well as apps from your organization’s app catalog (the tenant app catalog). To get apps from your organization’s app catalog only, specify organization as the distributionMethod in the request.

Parameters:

  • request_configuration (defaults to: nil)

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

Returns:

  • a request_information



78
79
80
81
82
83
84
85
86
87
88
89
90
# File 'lib/app_catalogs/teams_apps/teams_apps_request_builder.rb', line 78

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

#to_post_request_information(body, request_configuration = nil) ⇒ Object

Publish an app to the Microsoft Teams apps catalog.Specifically, this API publishes the app to your organization’s catalog (the tenant app catalog);the created resource will have a distributionMethod property value of organization. The requiresReview property allows any user to submit an app for review by an administrator. Admins can approve or reject these apps via this API or the Microsoft Teams admin center.

Parameters:

  • body

    The request body

  • request_configuration (defaults to: nil)

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

Returns:

  • a request_information

Raises:

  • (StandardError)


97
98
99
100
101
102
103
104
105
106
107
108
109
110
# File 'lib/app_catalogs/teams_apps/teams_apps_request_builder.rb', line 97

def to_post_request_information(body, request_configuration=nil)
    raise StandardError, 'body cannot be null' if body.nil?
    request_info = MicrosoftKiotaAbstractions::RequestInformation.new()
    request_info.url_template = @url_template
    request_info.path_parameters = @path_parameters
    request_info.http_method = :POST
    request_info.headers.add('Accept', 'application/json')
    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)
    return request_info
end