Skip to content

composable functions with optional arguments lead to duplicate operationId #580

Closed
@baywet

Description

@baywet

consider the two follow endpoints:

  • /drives/{drive-id}/items/{driveItem-id}/workbook/worksheets/{workbookWorksheet-id}/range(address=''{address}'')/resizedRange(deltaRows={deltaRows},deltaColumns={deltaColumns})
  • /drives/{drive-id}/items/{driveItem-id}/workbook/worksheets/{workbookWorksheet-id}/range()/resizedRange(deltaRows={deltaRows},deltaColumns={deltaColumns})

Get the same operation Id: drives.drive.items.driveItem.workbook.worksheets.workbookWorksheet.range.resizedRange

This results in an invalid OAS description.

As far as I know, the only thing that depends on operation ids anymore on our end is PowerShell generation. But this is likely not impacting PowerShell since, as far as I know, we're stripping all functions out when slicing the description for PowerShell.

I believe the solution here would be to come up with a convention when the parameter is expanded, so the first endpoint Id should in fact be something like this:

drives.drive.items.driveItem.workbook.worksheets.workbookWorksheet.rangeByAddress.resizedRange

Metadata

Metadata

Assignees

Labels

priority:p1High priority but not blocking. Causes major but not critical loss of functionality SLA <=7daystype:bugA broken experience

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions