microsoft / microsoft/kiota

Investigate how to provide component slicing on top of endpoints slicing

Open
#4,488 5 comments 0 reactions 0 assignees View on GitHub
enhancement needs more information
Dominant language
C#
Stars
3.8k
Forks
333
Avg merge
16h 29m
Merged PRs (30d)
116

Description

As depicted in #4440, it would be useful to allow developers to define the specific properties from the referenced components. For instance, if I'm using the `/users` endpoint on Microsoft Graph, I should be able to say that I only care about the `displayName` and the `id` of the component. The rest will not be useful for my scenarios so I'd rather not have them. This will also limit the number of components retrieved and generated as models (no reference to them so they would become useless).

The big questions:

* Technically, is that even doable and a good idea?
* How to provide a DevX that makes sense and doesn't required complex configurations
* What do we do in cases where 2 paths are using the same component? Do we merge the config for both? Do we have 2 models?

Contributor guide

Open the contributing guide

Research direction

Start by reviewing issue #4440 and the component and endpoint slicing concepts described here, using the Microsoft Graph /users example as a concrete case. Determine whether component property selection is technically feasible, define a simple developer experience, and document how shared components should behave when referenced by multiple paths.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
api, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.