kiota icon indicating copy to clipboard operation
kiota copied to clipboard

Support deepobject parameter style

Open soenneker opened this issue 8 months ago • 1 comments

Is your feature request related to a problem? Please describe the problem.

Hi @baywet

Recently one of the APIs I use moved over to deepobject style parameters.

See the following OpenAPI:

{
      "name": "page",
      "in": "query",
      "style": "deepObject",
      "explode": true,
      "description": "Consolidated page parameter (deepObject style). Originally: page[number], page[size]",
      "schema": {
        "type": "object",
        "properties": {
          "number": {
            "type": "integer",
            "default": 1
          },
          "size": {
            "maximum": 250,
            "type": "integer",
            "default": 20
          }
        }
      },
      "examples": {
        "page[number]=1&page[size]=20": {
          "value": {
            "number": 1,
            "size": 20
          },
          "summary": "Default pagination with first page and 20 records per page"
        },
          "summary": "Fifth page with 100 records per page"
        }
      }

After generating, I receive a xyzQueryParameters object in C#, but it's just a string Page property. I can set that property, but in the url it ends up building something like Page=xyz, and that doesn't work.

Client library/SDK language

Csharp

Describe the solution you'd like

If xyzQueryParameter at least had like an AdditionalProperties backing dictionary or a raw AddQueryParameter() method, I could use that, but right now I'm having to build the url manually and use WithUrl() which isn't fun. Overall, I'm hoping for some robust, non-fragile way that works with intellisense... but I'm not sure if that's possible.

If there's some sort of massaging I can do to the OpenAPI file, I'd also take that solution...

Additional context

I saw this: https://github.com/microsoft/kiota/issues/3800, I was unsure what exactly was the overall determination there

soenneker avatar Aug 19 '25 18:08 soenneker

I have transitioned to a new team and won't be replying to this issue/pull request moving forward. Thank you for your understanding.

baywet avatar Aug 19 '25 18:08 baywet