package applications import ( "context" i2ae4187f7daee263371cb1c977df639813ab50ffa529013b7437480d1ec0158f "github.com/microsoft/kiota-abstractions-go" ia572726a95efa92ddd544552cd950653dc691023836923576b2f4bf716cf204a "github.com/microsoftgraph/msgraph-sdk-go/models/odataerrors" ) // GetByIdsRequestBuilder provides operations to call the getByIds method. type GetByIdsRequestBuilder struct { i2ae4187f7daee263371cb1c977df639813ab50ffa529013b7437480d1ec0158f.BaseRequestBuilder } // GetByIdsRequestBuilderPostRequestConfiguration configuration for the request such as headers, query parameters, and middleware options. type GetByIdsRequestBuilderPostRequestConfiguration struct { // Request headers Headers *i2ae4187f7daee263371cb1c977df639813ab50ffa529013b7437480d1ec0158f.RequestHeaders // Request options Options []i2ae4187f7daee263371cb1c977df639813ab50ffa529013b7437480d1ec0158f.RequestOption } // NewGetByIdsRequestBuilderInternal instantiates a new GetByIdsRequestBuilder and sets the default values. func NewGetByIdsRequestBuilderInternal(pathParameters map[string]string, requestAdapter i2ae4187f7daee263371cb1c977df639813ab50ffa529013b7437480d1ec0158f.RequestAdapter)(*GetByIdsRequestBuilder) { m := &GetByIdsRequestBuilder{ BaseRequestBuilder: *i2ae4187f7daee263371cb1c977df639813ab50ffa529013b7437480d1ec0158f.NewBaseRequestBuilder(requestAdapter, "{+baseurl}/applications/getByIds", pathParameters), } return m } // NewGetByIdsRequestBuilder instantiates a new GetByIdsRequestBuilder and sets the default values. func NewGetByIdsRequestBuilder(rawUrl string, requestAdapter i2ae4187f7daee263371cb1c977df639813ab50ffa529013b7437480d1ec0158f.RequestAdapter)(*GetByIdsRequestBuilder) { urlParams := make(map[string]string) urlParams["request-raw-url"] = rawUrl return NewGetByIdsRequestBuilderInternal(urlParams, requestAdapter) } // Post return the directory objects specified in a list of IDs. Only a subset of user properties are returned by default in v1.0. Some common uses for this function are to: // Deprecated: This method is obsolete. Use PostAsGetByIdsPostResponse instead. // returns a GetByIdsResponseable when successful // returns a ODataError error when the service returns a 4XX or 5XX status code // [Find more info here] // // [Find more info here]: https://learn.microsoft.com/graph/api/directoryobject-getbyids?view=graph-rest-1.0 func (m *GetByIdsRequestBuilder) Post(ctx context.Context, body GetByIdsPostRequestBodyable, requestConfiguration *GetByIdsRequestBuilderPostRequestConfiguration)(GetByIdsResponseable, error) { requestInfo, err := m.ToPostRequestInformation(ctx, body, requestConfiguration); if err != nil { return nil, err } errorMapping := i2ae4187f7daee263371cb1c977df639813ab50ffa529013b7437480d1ec0158f.ErrorMappings { "XXX": ia572726a95efa92ddd544552cd950653dc691023836923576b2f4bf716cf204a.CreateODataErrorFromDiscriminatorValue, } res, err := m.BaseRequestBuilder.RequestAdapter.Send(ctx, requestInfo, CreateGetByIdsResponseFromDiscriminatorValue, errorMapping) if err != nil { return nil, err } if res == nil { return nil, nil } return res.(GetByIdsResponseable), nil } // PostAsGetByIdsPostResponse return the directory objects specified in a list of IDs. Only a subset of user properties are returned by default in v1.0. Some common uses for this function are to: // returns a GetByIdsPostResponseable when successful // returns a ODataError error when the service returns a 4XX or 5XX status code // [Find more info here] // // [Find more info here]: https://learn.microsoft.com/graph/api/directoryobject-getbyids?view=graph-rest-1.0 func (m *GetByIdsRequestBuilder) PostAsGetByIdsPostResponse(ctx context.Context, body GetByIdsPostRequestBodyable, requestConfiguration *GetByIdsRequestBuilderPostRequestConfiguration)(GetByIdsPostResponseable, error) { requestInfo, err := m.ToPostRequestInformation(ctx, body, requestConfiguration); if err != nil { return nil, err } errorMapping := i2ae4187f7daee263371cb1c977df639813ab50ffa529013b7437480d1ec0158f.ErrorMappings { "XXX": ia572726a95efa92ddd544552cd950653dc691023836923576b2f4bf716cf204a.CreateODataErrorFromDiscriminatorValue, } res, err := m.BaseRequestBuilder.RequestAdapter.Send(ctx, requestInfo, CreateGetByIdsPostResponseFromDiscriminatorValue, errorMapping) if err != nil { return nil, err } if res == nil { return nil, nil } return res.(GetByIdsPostResponseable), nil } // ToPostRequestInformation return the directory objects specified in a list of IDs. Only a subset of user properties are returned by default in v1.0. Some common uses for this function are to: // returns a *RequestInformation when successful func (m *GetByIdsRequestBuilder) ToPostRequestInformation(ctx context.Context, body GetByIdsPostRequestBodyable, requestConfiguration *GetByIdsRequestBuilderPostRequestConfiguration)(*i2ae4187f7daee263371cb1c977df639813ab50ffa529013b7437480d1ec0158f.RequestInformation, error) { requestInfo := i2ae4187f7daee263371cb1c977df639813ab50ffa529013b7437480d1ec0158f.NewRequestInformationWithMethodAndUrlTemplateAndPathParameters(i2ae4187f7daee263371cb1c977df639813ab50ffa529013b7437480d1ec0158f.POST, m.BaseRequestBuilder.UrlTemplate, m.BaseRequestBuilder.PathParameters) if requestConfiguration != nil { requestInfo.Headers.AddAll(requestConfiguration.Headers) requestInfo.AddRequestOptions(requestConfiguration.Options) } requestInfo.Headers.TryAdd("Accept", "application/json") err := requestInfo.SetContentFromParsable(ctx, m.BaseRequestBuilder.RequestAdapter, "application/json", body) if err != nil { return nil, err } return requestInfo, nil } // WithUrl returns a request builder with the provided arbitrary URL. Using this method means any other path or query parameters are ignored. // returns a *GetByIdsRequestBuilder when successful func (m *GetByIdsRequestBuilder) WithUrl(rawUrl string)(*GetByIdsRequestBuilder) { return NewGetByIdsRequestBuilder(rawUrl, m.BaseRequestBuilder.RequestAdapter); }