fief-dev / fief

Users and authentication management SaaS
https://www.fief.dev
Other
488 stars 42 forks source link

invalid openapi admin schema #155

Closed filipagh closed 1 year ago

filipagh commented 1 year ago

Describe the bug

validation failed for admin schema tested here https://apitools.dev/swagger-parser/online/# also open api generator fail on client generation

looks like missing refs

openapi generator

2023-03-11 20:16:28,311 [10348599] SEVERE - #us.jimschubert.intellij.openapitools.events.GenerationNotificationManager - There were issues with the specification. The option can be disabled via validateSpec (Maven/Gradle) or --skip-validate-spec (CLI).
 | Error count: 5, Warning count: 0
Errors: 
    -attribute components.schemas.UserFieldConfiguration.items is not of type `object`
    -attribute components.schemas.ClientUpdate.min is unexpected
    -attribute components.schemas.Address.countries is unexpected
    -attribute components.schemas.ClientCreate.min is unexpected
    -attribute components.schemas.UserFieldConfiguration.items is missing

java.lang.Throwable: There were issues with the specification. The option can be disabled via validateSpec (Maven/Gradle) or --skip-validate-spec (CLI).
 | Error count: 5, Warning count: 0
Errors: 
    -attribute components.schemas.UserFieldConfiguration.items is not of type `object`
    -attribute components.schemas.ClientUpdate.min is unexpected
    -attribute components.schemas.Address.countries is unexpected
    -attribute components.schemas.ClientCreate.min is unexpected
    -attribute components.schemas.UserFieldConfiguration.items is missing

swagger validator

``` Swagger schema validation failed. #/paths/~1clients~1/get/parameters/2/schema/exclusiveMinimum must be boolean #/paths/~1clients~1/get/parameters/2/schema must have required property '$ref' #/paths/~1clients~1/get/parameters/2/schema must match exactly one schema in oneOf #/paths/~1clients~1/get/parameters/2 must have required property '$ref' #/paths/~1clients~1/get/parameters/2 must match exactly one schema in oneOf #/paths/~1clients~1/post/requestBody/content/application~1json/schema/properties/authorization_code_lifetime_seconds must NOT have additional properties #/paths/~1clients~1/post/requestBody/content/application~1json/schema/properties/authorization_code_lifetime_seconds must have required property '$ref' #/paths/~1clients~1/post/requestBody/content/application~1json/schema/properties/authorization_code_lifetime_seconds must match exactly one schema in oneOf #/paths/~1clients~1/post/requestBody/content/application~1json/schema/properties/access_id_token_lifetime_seconds must NOT have additional properties #/paths/~1clients~1/post/requestBody/content/application~1json/schema/properties/access_id_token_lifetime_seconds must have required property '$ref' #/paths/~1clients~1/post/requestBody/content/application~1json/schema/properties/access_id_token_lifetime_seconds must match exactly one schema in oneOf #/paths/~1clients~1/post/requestBody/content/application~1json/schema/properties/refresh_token_lifetime_seconds must NOT have additional properties #/paths/~1clients~1/post/requestBody/content/application~1json/schema/properties/refresh_token_lifetime_seconds must have required property '$ref' #/paths/~1clients~1/post/requestBody/content/application~1json/schema/properties/refresh_token_lifetime_seconds must match exactly one schema in oneOf #/paths/~1clients~1/post/requestBody/content/application~1json/schema must have required property '$ref' #/paths/~1clients~1/post/requestBody/content/application~1json/schema must match exactly one schema in oneOf #/paths/~1clients~1/post/requestBody must have required property '$ref' #/paths/~1clients~1/post/requestBody must match exactly one schema in oneOf #/paths/~1clients~1{id}/patch/requestBody/content/application~1json/schema/properties/authorization_code_lifetime_seconds must NOT have additional properties #/paths/~1clients~1{id}/patch/requestBody/content/application~1json/schema/properties/authorization_code_lifetime_seconds must have required property '$ref' #/paths/~1clients~1{id}/patch/requestBody/content/application~1json/schema/properties/authorization_code_lifetime_seconds must match exactly one schema in oneOf #/paths/~1clients~1{id}/patch/requestBody/content/application~1json/schema/properties/access_id_token_lifetime_seconds must NOT have additional properties #/paths/~1clients~1{id}/patch/requestBody/content/application~1json/schema/properties/access_id_token_lifetime_seconds must have required property '$ref' #/paths/~1clients~1{id}/patch/requestBody/content/application~1json/schema/properties/access_id_token_lifetime_seconds must match exactly one schema in oneOf #/paths/~1clients~1{id}/patch/requestBody/content/application~1json/schema/properties/refresh_token_lifetime_seconds must NOT have additional properties #/paths/~1clients~1{id}/patch/requestBody/content/application~1json/schema/properties/refresh_token_lifetime_seconds must have required property '$ref' #/paths/~1clients~1{id}/patch/requestBody/content/application~1json/schema/properties/refresh_token_lifetime_seconds must match exactly one schema in oneOf #/paths/~1clients~1{id}/patch/requestBody/content/application~1json/schema must have required property '$ref' #/paths/~1clients~1{id}/patch/requestBody/content/application~1json/schema must match exactly one schema in oneOf #/paths/~1clients~1{id}/patch/requestBody must have required property '$ref' #/paths/~1clients~1{id}/patch/requestBody must match exactly one schema in oneOf #/paths/~1email-templates~1/get/parameters/0/schema/exclusiveMinimum must be boolean #/paths/~1email-templates~1/get/parameters/0/schema must have required property '$ref' #/paths/~1email-templates~1/get/parameters/0/schema must match exactly one schema in oneOf #/paths/~1email-templates~1/get/parameters/0 must have required property '$ref' #/paths/~1email-templates~1/get/parameters/0 must match exactly one schema in oneOf #/paths/~1oauth-providers~1/get/parameters/1/schema/exclusiveMinimum must be boolean #/paths/~1oauth-providers~1/get/parameters/1/schema must have required property '$ref' #/paths/~1oauth-providers~1/get/parameters/1/schema must match exactly one schema in oneOf #/paths/~1oauth-providers~1/get/parameters/1 must have required property '$ref' #/paths/~1oauth-providers~1/get/parameters/1 must match exactly one schema in oneOf #/paths/~1permissions~1/get/parameters/1/schema/exclusiveMinimum must be boolean #/paths/~1permissions~1/get/parameters/1/schema must have required property '$ref' #/paths/~1permissions~1/get/parameters/1/schema must match exactly one schema in oneOf #/paths/~1permissions~1/get/parameters/1 must have required property '$ref' #/paths/~1permissions~1/get/parameters/1 must match exactly one schema in oneOf #/paths/~1roles~1/get/parameters/1/schema/exclusiveMinimum must be boolean #/paths/~1roles~1/get/parameters/1/schema must have required property '$ref' #/paths/~1roles~1/get/parameters/1/schema must match exactly one schema in oneOf #/paths/~1roles~1/get/parameters/1 must have required property '$ref' #/paths/~1roles~1/get/parameters/1 must match exactly one schema in oneOf #/paths/~1tenants~1/get/parameters/1/schema/exclusiveMinimum must be boolean #/paths/~1tenants~1/get/parameters/1/schema must have required property '$ref' #/paths/~1tenants~1/get/parameters/1/schema must match exactly one schema in oneOf #/paths/~1tenants~1/get/parameters/1 must have required property '$ref' #/paths/~1tenants~1/get/parameters/1 must match exactly one schema in oneOf #/paths/~1users~1/get/parameters/0/schema/exclusiveMinimum must be boolean #/paths/~1users~1/get/parameters/0/schema must have required property '$ref' #/paths/~1users~1/get/parameters/0/schema must match exactly one schema in oneOf #/paths/~1users~1/get/parameters/0 must have required property '$ref' #/paths/~1users~1/get/parameters/0 must match exactly one schema in oneOf #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/fields/additionalProperties/anyOf/0/properties/country must NOT have additional properties #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/fields/additionalProperties/anyOf/0/properties/country/type must be equal to one of the allowed values #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/fields/additionalProperties/anyOf/0/properties/country must have required property '$ref' #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/fields/additionalProperties/anyOf/0/properties/country must match exactly one schema in oneOf #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/fields/additionalProperties/anyOf/0 must have required property '$ref' #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/fields/additionalProperties/anyOf/0 must match exactly one schema in oneOf #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/fields/additionalProperties/anyOf/1/type must be equal to one of the allowed values #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/fields/additionalProperties/anyOf/1 must have required property '$ref' #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/fields/additionalProperties/anyOf/1 must match exactly one schema in oneOf #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/fields/additionalProperties must have required property '$ref' #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/fields/additionalProperties must be boolean #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/fields/additionalProperties must match exactly one schema in oneOf #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/fields must have required property '$ref' #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/fields must match exactly one schema in oneOf #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results/items must have required property '$ref' #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results/items must match exactly one schema in oneOf #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results must have required property '$ref' #/paths/~1users~1/get/responses/200/content/application~1json/schema/properties/results must match exactly one schema in oneOf #/paths/~1users~1/get/responses/200/content/application~1json/schema must have required property '$ref' #/paths/~1users~1/get/responses/200/content/application~1json/schema must match exactly one schema in oneOf #/paths/~1users~1/get/responses/200 must have required property '$ref' #/paths/~1users~1/get/responses/200 must match exactly one schema in oneOf #/paths/~1users~1/post/responses/201/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0/properties/country must NOT have additional properties #/paths/~1users~1/post/responses/201/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0/properties/country/type must be equal to one of the allowed values #/paths/~1users~1/post/responses/201/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0/properties/country must have required property '$ref' #/paths/~1users~1/post/responses/201/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0/properties/country must match exactly one schema in oneOf #/paths/~1users~1/post/responses/201/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0 must have required property '$ref' #/paths/~1users~1/post/responses/201/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0 must match exactly one schema in oneOf #/paths/~1users~1/post/responses/201/content/application~1json/schema/properties/fields/additionalProperties/anyOf/1/type must be equal to one of the allowed values #/paths/~1users~1/post/responses/201/content/application~1json/schema/properties/fields/additionalProperties/anyOf/1 must have required property '$ref' #/paths/~1users~1/post/responses/201/content/application~1json/schema/properties/fields/additionalProperties/anyOf/1 must match exactly one schema in oneOf #/paths/~1users~1/post/responses/201/content/application~1json/schema/properties/fields/additionalProperties must have required property '$ref' #/paths/~1users~1/post/responses/201/content/application~1json/schema/properties/fields/additionalProperties must be boolean #/paths/~1users~1/post/responses/201/content/application~1json/schema/properties/fields/additionalProperties must match exactly one schema in oneOf #/paths/~1users~1/post/responses/201/content/application~1json/schema/properties/fields must have required property '$ref' #/paths/~1users~1/post/responses/201/content/application~1json/schema/properties/fields must match exactly one schema in oneOf #/paths/~1users~1/post/responses/201/content/application~1json/schema must have required property '$ref' #/paths/~1users~1/post/responses/201/content/application~1json/schema must match exactly one schema in oneOf #/paths/~1users~1/post/responses/201 must have required property '$ref' #/paths/~1users~1/post/responses/201 must match exactly one schema in oneOf #/paths/~1users~1{id}/get/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0/properties/country must NOT have additional properties #/paths/~1users~1{id}/get/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0/properties/country/type must be equal to one of the allowed values #/paths/~1users~1{id}/get/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0/properties/country must have required property '$ref' #/paths/~1users~1{id}/get/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0/properties/country must match exactly one schema in oneOf #/paths/~1users~1{id}/get/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0 must have required property '$ref' #/paths/~1users~1{id}/get/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0 must match exactly one schema in oneOf #/paths/~1users~1{id}/get/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/1/type must be equal to one of the allowed values #/paths/~1users~1{id}/get/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/1 must have required property '$ref' #/paths/~1users~1{id}/get/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/1 must match exactly one schema in oneOf #/paths/~1users~1{id}/get/responses/200/content/application~1json/schema/properties/fields/additionalProperties must have required property '$ref' #/paths/~1users~1{id}/get/responses/200/content/application~1json/schema/properties/fields/additionalProperties must be boolean #/paths/~1users~1{id}/get/responses/200/content/application~1json/schema/properties/fields/additionalProperties must match exactly one schema in oneOf #/paths/~1users~1{id}/get/responses/200/content/application~1json/schema/properties/fields must have required property '$ref' #/paths/~1users~1{id}/get/responses/200/content/application~1json/schema/properties/fields must match exactly one schema in oneOf #/paths/~1users~1{id}/get/responses/200/content/application~1json/schema must have required property '$ref' #/paths/~1users~1{id}/get/responses/200/content/application~1json/schema must match exactly one schema in oneOf #/paths/~1users~1{id}/get/responses/200 must have required property '$ref' #/paths/~1users~1{id}/get/responses/200 must match exactly one schema in oneOf #/paths/~1users~1{id}/patch/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0/properties/country must NOT have additional properties #/paths/~1users~1{id}/patch/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0/properties/country/type must be equal to one of the allowed values #/paths/~1users~1{id}/patch/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0/properties/country must have required property '$ref' #/paths/~1users~1{id}/patch/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0/properties/country must match exactly one schema in oneOf #/paths/~1users~1{id}/patch/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0 must have required property '$ref' #/paths/~1users~1{id}/patch/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/0 must match exactly one schema in oneOf #/paths/~1users~1{id}/patch/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/1/type must be equal to one of the allowed values #/paths/~1users~1{id}/patch/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/1 must have required property '$ref' #/paths/~1users~1{id}/patch/responses/200/content/application~1json/schema/properties/fields/additionalProperties/anyOf/1 must match exactly one schema in oneOf #/paths/~1users~1{id}/patch/responses/200/content/application~1json/schema/properties/fields/additionalProperties must have required property '$ref' #/paths/~1users~1{id}/patch/responses/200/content/application~1json/schema/properties/fields/additionalProperties must be boolean #/paths/~1users~1{id}/patch/responses/200/content/application~1json/schema/properties/fields/additionalProperties must match exactly one schema in oneOf #/paths/~1users~1{id}/patch/responses/200/content/application~1json/schema/properties/fields must have required property '$ref' #/paths/~1users~1{id}/patch/responses/200/content/application~1json/schema/properties/fields must match exactly one schema in oneOf #/paths/~1users~1{id}/patch/responses/200/content/application~1json/schema must have required property '$ref' #/paths/~1users~1{id}/patch/responses/200/content/application~1json/schema must match exactly one schema in oneOf #/paths/~1users~1{id}/patch/responses/200 must have required property '$ref' #/paths/~1users~1{id}/patch/responses/200 must match exactly one schema in oneOf #/paths/~1users~1{id}~1permissions/get/parameters/1/schema/exclusiveMinimum must be boolean #/paths/~1users~1{id}~1permissions/get/parameters/1/schema must have required property '$ref' #/paths/~1users~1{id}~1permissions/get/parameters/1/schema must match exactly one schema in oneOf #/paths/~1users~1{id}~1permissions/get/parameters/1 must have required property '$ref' #/paths/~1users~1{id}~1permissions/get/parameters/1 must match exactly one schema in oneOf #/paths/~1users~1{id}~1roles/get/parameters/1/schema/exclusiveMinimum must be boolean #/paths/~1users~1{id}~1roles/get/parameters/1/schema must have required property '$ref' #/paths/~1users~1{id}~1roles/get/parameters/1/schema must match exactly one schema in oneOf #/paths/~1users~1{id}~1roles/get/parameters/1 must have required property '$ref' #/paths/~1users~1{id}~1roles/get/parameters/1 must match exactly one schema in oneOf #/paths/~1users~1{id}~1oauth-accounts/get/parameters/1/schema/exclusiveMinimum must be boolean #/paths/~1users~1{id}~1oauth-accounts/get/parameters/1/schema must have required property '$ref' #/paths/~1users~1{id}~1oauth-accounts/get/parameters/1/schema must match exactly one schema in oneOf #/paths/~1users~1{id}~1oauth-accounts/get/parameters/1 must have required property '$ref' #/paths/~1users~1{id}~1oauth-accounts/get/parameters/1 must match exactly one schema in oneOf #/paths/~1user-fields~1/get/parameters/0/schema/exclusiveMinimum must be boolean #/paths/~1user-fields~1/get/parameters/0/schema must have required property '$ref' #/paths/~1user-fields~1/get/parameters/0/schema must match exactly one schema in oneOf #/paths/~1user-fields~1/get/parameters/0 must have required property '$ref' #/paths/~1user-fields~1/get/parameters/0 must match exactly one schema in oneOf #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/configuration/properties/choices/items/items must be object #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/configuration/properties/choices/items/items must be object #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/configuration/properties/choices/items/items must match exactly one schema in oneOf #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/configuration/properties/choices/items must have required property '$ref' #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/configuration/properties/choices/items must match exactly one schema in oneOf #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/configuration/properties/choices must have required property '$ref' #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/configuration/properties/choices must match exactly one schema in oneOf #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/configuration/properties/default/anyOf/0/type must be equal to one of the allowed values #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/configuration/properties/default/anyOf/0 must have required property '$ref' #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/configuration/properties/default/anyOf/0 must match exactly one schema in oneOf #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/configuration/properties/default must have required property '$ref' #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/configuration/properties/default must match exactly one schema in oneOf #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/configuration must have required property '$ref' #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results/items/properties/configuration must match exactly one schema in oneOf #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results/items must have required property '$ref' #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results/items must match exactly one schema in oneOf #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results must have required property '$ref' #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema/properties/results must match exactly one schema in oneOf #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema must have required property '$ref' #/paths/~1user-fields~1/get/responses/200/content/application~1json/schema must match exactly one schema in oneOf #/paths/~1user-fields~1/get/responses/200 must have required property '$ref' #/paths/~1user-fields~1/get/responses/200 must match exactly one schema in oneOf #/paths/~1user-fields~1/post/requestBody/content/application~1json/schema/properties/configuration/properties/choices/items/items must be object #/paths/~1user-fields~1/post/requestBody/content/application~1json/schema/properties/configuration/properties/choices/items/items must be object #/paths/~1user-fields~1/post/requestBody/content/application~1json/schema/properties/configuration/properties/choices/items/items must match exactly one schema in oneOf #/paths/~1user-fields~1/post/requestBody/content/application~1json/schema/properties/configuration/properties/choices/items must have required property '$ref' #/paths/~1user-fields~1/post/requestBody/content/application~1json/schema/properties/configuration/properties/choices/items must match exactly one schema in oneOf #/paths/~1user-fields~1/post/requestBody/content/application~1json/schema/properties/configuration/properties/choices must have required property '$ref' #/paths/~1user-fields~1/post/requestBody/content/application~1json/schema/properties/configuration/properties/choices must match exactly one schema in oneOf #/paths/~1user-fields~1/post/requestBody/content/application~1json/schema/properties/configuration/properties/default/anyOf/0/type must be equal to one of the allowed values #/paths/~1user-fields~1/post/requestBody/content/application~1json/schema/properties/configuration/properties/default/anyOf/0 must have required property '$ref' #/paths/~1user-fields~1/post/requestBody/content/application~1json/schema/properties/configuration/properties/default/anyOf/0 must match exactly one schema in oneOf #/paths/~1user-fields~1/post/requestBody/content/application~1json/schema/properties/configuration/properties/default must have required property '$ref' #/paths/~1user-fields~1/post/requestBody/content/application~1json/schema/properties/configuration/properties/default must match exactly one schema in oneOf #/paths/~1user-fields~1/post/requestBody/content/application~1json/schema/properties/configuration must have required property '$ref' #/paths/~1user-fields~1/post/requestBody/content/application~1json/schema/properties/configuration must match exactly one schema in oneOf #/paths/~1user-fields~1/post/requestBody/content/application~1json/schema must have required property '$ref' #/paths/~1user-fields~1/post/requestBody/content/application~1json/schema must match exactly one schema in oneOf #/paths/~1user-fields~1/post/requestBody must have required property '$ref' #/paths/~1user-fields~1/post/requestBody must match exactly one schema in oneOf #/paths/~1user-fields~1/post/responses/201/content/application~1json/schema/properties/configuration/properties/choices/items/items must be object #/paths/~1user-fields~1/post/responses/201/content/application~1json/schema/properties/configuration/properties/choices/items/items must be object #/paths/~1user-fields~1/post/responses/201/content/application~1json/schema/properties/configuration/properties/choices/items/items must match exactly one schema in oneOf #/paths/~1user-fields~1/post/responses/201/content/application~1json/schema/properties/configuration/properties/choices/items must have required property '$ref' #/paths/~1user-fields~1/post/responses/201/content/application~1json/schema/properties/configuration/properties/choices/items must match exactly one schema in oneOf #/paths/~1user-fields~1/post/responses/201/content/application~1json/schema/properties/configuration/properties/choices must have required property '$ref' #/paths/~1user-fields~1/post/responses/201/content/application~1json/schema/properties/configuration/properties/choices must match exactly one schema in oneOf #/paths/~1user-fields~1/post/responses/201/content/application~1json/schema/properties/configuration/properties/default/anyOf/0/type must be equal to one of the allowed values #/paths/~1user-fields~1/post/responses/201/content/application~1json/schema/properties/configuration/properties/default/anyOf/0 must have required property '$ref' #/paths/~1user-fields~1/post/responses/201/content/application~1json/schema/properties/configuration/properties/default/anyOf/0 must match exactly one schema in oneOf #/paths/~1user-fields~1/post/responses/201/content/application~1json/schema/properties/configuration/properties/default must have required property '$ref' #/paths/~1user-fields~1/post/responses/201/content/application~1json/schema/properties/configuration/properties/default must match exactly one schema in oneOf #/paths/~1user-fields~1/post/responses/201/content/application~1json/schema/properties/configuration must have required property '$ref' #/paths/~1user-fields~1/post/responses/201/content/application~1json/schema/properties/configuration must match exactly one schema in oneOf #/paths/~1user-fields~1/post/responses/201/content/application~1json/schema must have required property '$ref' #/paths/~1user-fields~1/post/responses/201/content/application~1json/schema must match exactly one schema in oneOf #/paths/~1user-fields~1/post/responses/201 must have required property '$ref' #/paths/~1user-fields~1/post/responses/201 must match exactly one schema in oneOf #/paths/~1user-fields~1{id}/patch/requestBody/content/application~1json/schema/properties/configuration/properties/choices/items/items must be object #/paths/~1user-fields~1{id}/patch/requestBody/content/application~1json/schema/properties/configuration/properties/choices/items/items must be object #/paths/~1user-fields~1{id}/patch/requestBody/content/application~1json/schema/properties/configuration/properties/choices/items/items must match exactly one schema in oneOf #/paths/~1user-fields~1{id}/patch/requestBody/content/application~1json/schema/properties/configuration/properties/choices/items must have required property '$ref' #/paths/~1user-fields~1{id}/patch/requestBody/content/application~1json/schema/properties/configuration/properties/choices/items must match exactly one schema in oneOf #/paths/~1user-fields~1{id}/patch/requestBody/content/application~1json/schema/properties/configuration/properties/choices must have required property '$ref' #/paths/~1user-fields~1{id}/patch/requestBody/content/application~1json/schema/properties/configuration/properties/choices must match exactly one schema in oneOf #/paths/~1user-fields~1{id}/patch/requestBody/content/application~1json/schema/properties/configuration/properties/default/anyOf/0/type must be equal to one of the allowed values #/paths/~1user-fields~1{id}/patch/requestBody/content/application~1json/schema/properties/configuration/properties/default/anyOf/0 must have required property '$ref' #/paths/~1user-fields~1{id}/patch/requestBody/content/application~1json/schema/properties/configuration/properties/default/anyOf/0 must match exactly one schema in oneOf #/paths/~1user-fields~1{id}/patch/requestBody/content/application~1json/schema/properties/configuration/properties/default must have required property '$ref' #/paths/~1user-fields~1{id}/patch/requestBody/content/application~1json/schema/properties/configuration/properties/default must match exactly one schema in oneOf #/paths/~1user-fields~1{id}/patch/requestBody/content/application~1json/schema/properties/configuration must have required property '$ref' #/paths/~1user-fields~1{id}/patch/requestBody/content/application~1json/schema/properties/configuration must match exactly one schema in oneOf #/paths/~1user-fields~1{id}/patch/requestBody/content/application~1json/schema must have required property '$ref' #/paths/~1user-fields~1{id}/patch/requestBody/content/application~1json/schema must match exactly one schema in oneOf #/paths/~1user-fields~1{id}/patch/requestBody must have required property '$ref' #/paths/~1user-fields~1{id}/patch/requestBody must match exactly one schema in oneOf #/paths/~1user-fields~1{id}/patch/responses/200/content/application~1json/schema/properties/configuration/properties/choices/items/items must be object #/paths/~1user-fields~1{id}/patch/responses/200/content/application~1json/schema/properties/configuration/properties/choices/items/items must be object #/paths/~1user-fields~1{id}/patch/responses/200/content/application~1json/schema/properties/configuration/properties/choices/items/items must match exactly one schema in oneOf #/paths/~1user-fields~1{id}/patch/responses/200/content/application~1json/schema/properties/configuration/properties/choices/items must have required property '$ref' #/paths/~1user-fields~1{id}/patch/responses/200/content/application~1json/schema/properties/configuration/properties/choices/items must match exactly one schema in oneOf #/paths/~1user-fields~1{id}/patch/responses/200/content/application~1json/schema/properties/configuration/properties/choices must have required property '$ref' #/paths/~1user-fields~1{id}/patch/responses/200/content/application~1json/schema/properties/configuration/properties/choices must match exactly one schema in oneOf #/paths/~1user-fields~1{id}/patch/responses/200/content/application~1json/schema/properties/configuration/properties/default/anyOf/0/type must be equal to one of the allowed values #/paths/~1user-fields~1{id}/patch/responses/200/content/application~1json/schema/properties/configuration/properties/default/anyOf/0 must have required property '$ref' #/paths/~1user-fields~1{id}/patch/responses/200/content/application~1json/schema/properties/configuration/properties/default/anyOf/0 must match exactly one schema in oneOf #/paths/~1user-fields~1{id}/patch/responses/200/content/application~1json/schema/properties/configuration/properties/default must have required property '$ref' #/paths/~1user-fields~1{id}/patch/responses/200/content/application~1json/schema/properties/configuration/properties/default must match exactly one schema in oneOf #/paths/~1user-fields~1{id}/patch/responses/200/content/application~1json/schema/properties/configuration must have required property '$ref' #/paths/~1user-fields~1{id}/patch/responses/200/content/application~1json/schema/properties/configuration must match exactly one schema in oneOf #/paths/~1user-fields~1{id}/patch/responses/200/content/application~1json/schema must have required property '$ref' #/paths/~1user-fields~1{id}/patch/responses/200/content/application~1json/schema must match exactly one schema in oneOf #/paths/~1user-fields~1{id}/patch/responses/200 must have required property '$ref' #/paths/~1user-fields~1{id}/patch/responses/200 must match exactly one schema in oneOf #/paths/~1webhooks~1/get/parameters/0/schema/exclusiveMinimum must be boolean #/paths/~1webhooks~1/get/parameters/0/schema must have required property '$ref' #/paths/~1webhooks~1/get/parameters/0/schema must match exactly one schema in oneOf #/paths/~1webhooks~1/get/parameters/0 must have required property '$ref' #/paths/~1webhooks~1/get/parameters/0 must match exactly one schema in oneOf #/paths/~1webhooks~1{id}~1logs/get/parameters/1/schema/exclusiveMinimum must be boolean #/paths/~1webhooks~1{id}~1logs/get/parameters/1/schema must have required property '$ref' #/paths/~1webhooks~1{id}~1logs/get/parameters/1/schema must match exactly one schema in oneOf #/paths/~1webhooks~1{id}~1logs/get/parameters/1 must have required property '$ref' #/paths/~1webhooks~1{id}~1logs/get/parameters/1 must match exactly one schema in oneOf #/components/schemas/Address/properties/country must NOT have additional properties #/components/schemas/Address/properties/country/type must be equal to one of the allowed values #/components/schemas/Address/properties/country must have required property '$ref' #/components/schemas/Address/properties/country must match exactly one schema in oneOf #/components/schemas/Address must have required property '$ref' #/components/schemas/Address must match exactly one schema in oneOf #/components/schemas/ClientCreate/properties/authorization_code_lifetime_seconds must NOT have additional properties #/components/schemas/ClientCreate/properties/authorization_code_lifetime_seconds must have required property '$ref' #/components/schemas/ClientCreate/properties/authorization_code_lifetime_seconds must match exactly one schema in oneOf #/components/schemas/ClientCreate/properties/access_id_token_lifetime_seconds must NOT have additional properties #/components/schemas/ClientCreate/properties/access_id_token_lifetime_seconds must have required property '$ref' #/components/schemas/ClientCreate/properties/access_id_token_lifetime_seconds must match exactly one schema in oneOf #/components/schemas/ClientCreate/properties/refresh_token_lifetime_seconds must NOT have additional properties #/components/schemas/ClientCreate/properties/refresh_token_lifetime_seconds must have required property '$ref' #/components/schemas/ClientCreate/properties/refresh_token_lifetime_seconds must match exactly one schema in oneOf #/components/schemas/ClientCreate must have required property '$ref' #/components/schemas/ClientCreate must match exactly one schema in oneOf #/components/schemas/ClientUpdate/properties/authorization_code_lifetime_seconds must NOT have additional properties #/components/schemas/ClientUpdate/properties/authorization_code_lifetime_seconds must have required property '$ref' #/components/schemas/ClientUpdate/properties/authorization_code_lifetime_seconds must match exactly one schema in oneOf #/components/schemas/ClientUpdate/properties/access_id_token_lifetime_seconds must NOT have additional properties #/components/schemas/ClientUpdate/properties/access_id_token_lifetime_seconds must have required property '$ref' #/components/schemas/ClientUpdate/properties/access_id_token_lifetime_seconds must match exactly one schema in oneOf #/components/schemas/ClientUpdate/properties/refresh_token_lifetime_seconds must NOT have additional properties #/components/schemas/ClientUpdate/properties/refresh_token_lifetime_seconds must have required property '$ref' #/components/schemas/ClientUpdate/properties/refresh_token_lifetime_seconds must match exactly one schema in oneOf #/components/schemas/ClientUpdate must have required property '$ref' #/components/schemas/ClientUpdate must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserField_/properties/results/items/properties/configuration/properties/choices/items/items must be object #/components/schemas/PaginatedResults_UserField_/properties/results/items/properties/configuration/properties/choices/items/items must be object #/components/schemas/PaginatedResults_UserField_/properties/results/items/properties/configuration/properties/choices/items/items must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserField_/properties/results/items/properties/configuration/properties/choices/items must have required property '$ref' #/components/schemas/PaginatedResults_UserField_/properties/results/items/properties/configuration/properties/choices/items must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserField_/properties/results/items/properties/configuration/properties/choices must have required property '$ref' #/components/schemas/PaginatedResults_UserField_/properties/results/items/properties/configuration/properties/choices must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserField_/properties/results/items/properties/configuration/properties/default/anyOf/0/type must be equal to one of the allowed values #/components/schemas/PaginatedResults_UserField_/properties/results/items/properties/configuration/properties/default/anyOf/0 must have required property '$ref' #/components/schemas/PaginatedResults_UserField_/properties/results/items/properties/configuration/properties/default/anyOf/0 must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserField_/properties/results/items/properties/configuration/properties/default must have required property '$ref' #/components/schemas/PaginatedResults_UserField_/properties/results/items/properties/configuration/properties/default must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserField_/properties/results/items/properties/configuration must have required property '$ref' #/components/schemas/PaginatedResults_UserField_/properties/results/items/properties/configuration must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserField_/properties/results/items must have required property '$ref' #/components/schemas/PaginatedResults_UserField_/properties/results/items must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserField_/properties/results must have required property '$ref' #/components/schemas/PaginatedResults_UserField_/properties/results must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserField_ must have required property '$ref' #/components/schemas/PaginatedResults_UserField_ must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserRead_/properties/results/items/properties/fields/additionalProperties/anyOf/0/properties/country must NOT have additional properties #/components/schemas/PaginatedResults_UserRead_/properties/results/items/properties/fields/additionalProperties/anyOf/0/properties/country/type must be equal to one of the allowed values #/components/schemas/PaginatedResults_UserRead_/properties/results/items/properties/fields/additionalProperties/anyOf/0/properties/country must have required property '$ref' #/components/schemas/PaginatedResults_UserRead_/properties/results/items/properties/fields/additionalProperties/anyOf/0/properties/country must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserRead_/properties/results/items/properties/fields/additionalProperties/anyOf/0 must have required property '$ref' #/components/schemas/PaginatedResults_UserRead_/properties/results/items/properties/fields/additionalProperties/anyOf/0 must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserRead_/properties/results/items/properties/fields/additionalProperties/anyOf/1/type must be equal to one of the allowed values #/components/schemas/PaginatedResults_UserRead_/properties/results/items/properties/fields/additionalProperties/anyOf/1 must have required property '$ref' #/components/schemas/PaginatedResults_UserRead_/properties/results/items/properties/fields/additionalProperties/anyOf/1 must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserRead_/properties/results/items/properties/fields/additionalProperties must have required property '$ref' #/components/schemas/PaginatedResults_UserRead_/properties/results/items/properties/fields/additionalProperties must be boolean #/components/schemas/PaginatedResults_UserRead_/properties/results/items/properties/fields/additionalProperties must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserRead_/properties/results/items/properties/fields must have required property '$ref' #/components/schemas/PaginatedResults_UserRead_/properties/results/items/properties/fields must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserRead_/properties/results/items must have required property '$ref' #/components/schemas/PaginatedResults_UserRead_/properties/results/items must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserRead_/properties/results must have required property '$ref' #/components/schemas/PaginatedResults_UserRead_/properties/results must match exactly one schema in oneOf #/components/schemas/PaginatedResults_UserRead_ must have required property '$ref' #/components/schemas/PaginatedResults_UserRead_ must match exactly one schema in oneOf #/components/schemas/UserField/properties/configuration/properties/choices/items/items must be object #/components/schemas/UserField/properties/configuration/properties/choices/items/items must be object #/components/schemas/UserField/properties/configuration/properties/choices/items/items must match exactly one schema in oneOf #/components/schemas/UserField/properties/configuration/properties/choices/items must have required property '$ref' #/components/schemas/UserField/properties/configuration/properties/choices/items must match exactly one schema in oneOf #/components/schemas/UserField/properties/configuration/properties/choices must have required property '$ref' #/components/schemas/UserField/properties/configuration/properties/choices must match exactly one schema in oneOf #/components/schemas/UserField/properties/configuration/properties/default/anyOf/0/type must be equal to one of the allowed values #/components/schemas/UserField/properties/configuration/properties/default/anyOf/0 must have required property '$ref' #/components/schemas/UserField/properties/configuration/properties/default/anyOf/0 must match exactly one schema in oneOf #/components/schemas/UserField/properties/configuration/properties/default must have required property '$ref' #/components/schemas/UserField/properties/configuration/properties/default must match exactly one schema in oneOf #/components/schemas/UserField/properties/configuration must have required property '$ref' #/components/schemas/UserField/properties/configuration must match exactly one schema in oneOf #/components/schemas/UserField must have required property '$ref' #/components/schemas/UserField must match exactly one schema in oneOf #/components/schemas/UserFieldConfiguration/properties/choices/items/items must be object #/components/schemas/UserFieldConfiguration/properties/choices/items/items must be object #/components/schemas/UserFieldConfiguration/properties/choices/items/items must match exactly one schema in oneOf #/components/schemas/UserFieldConfiguration/properties/choices/items must have required property '$ref' #/components/schemas/UserFieldConfiguration/properties/choices/items must match exactly one schema in oneOf #/components/schemas/UserFieldConfiguration/properties/choices must have required property '$ref' #/components/schemas/UserFieldConfiguration/properties/choices must match exactly one schema in oneOf #/components/schemas/UserFieldConfiguration/properties/default/anyOf/0/type must be equal to one of the allowed values #/components/schemas/UserFieldConfiguration/properties/default/anyOf/0 must have required property '$ref' #/components/schemas/UserFieldConfiguration/properties/default/anyOf/0 must match exactly one schema in oneOf #/components/schemas/UserFieldConfiguration/properties/default must have required property '$ref' #/components/schemas/UserFieldConfiguration/properties/default must match exactly one schema in oneOf #/components/schemas/UserFieldConfiguration must have required property '$ref' #/components/schemas/UserFieldConfiguration must match exactly one schema in oneOf #/components/schemas/UserFieldCreate/properties/configuration/properties/choices/items/items must be object #/components/schemas/UserFieldCreate/properties/configuration/properties/choices/items/items must be object #/components/schemas/UserFieldCreate/properties/configuration/properties/choices/items/items must match exactly one schema in oneOf #/components/schemas/UserFieldCreate/properties/configuration/properties/choices/items must have required property '$ref' #/components/schemas/UserFieldCreate/properties/configuration/properties/choices/items must match exactly one schema in oneOf #/components/schemas/UserFieldCreate/properties/configuration/properties/choices must have required property '$ref' #/components/schemas/UserFieldCreate/properties/configuration/properties/choices must match exactly one schema in oneOf #/components/schemas/UserFieldCreate/properties/configuration/properties/default/anyOf/0/type must be equal to one of the allowed values #/components/schemas/UserFieldCreate/properties/configuration/properties/default/anyOf/0 must have required property '$ref' #/components/schemas/UserFieldCreate/properties/configuration/properties/default/anyOf/0 must match exactly one schema in oneOf #/components/schemas/UserFieldCreate/properties/configuration/properties/default must have required property '$ref' #/components/schemas/UserFieldCreate/properties/configuration/properties/default must match exactly one schema in oneOf #/components/schemas/UserFieldCreate/properties/configuration must have required property '$ref' #/components/schemas/UserFieldCreate/properties/configuration must match exactly one schema in oneOf #/components/schemas/UserFieldCreate must have required property '$ref' #/components/schemas/UserFieldCreate must match exactly one schema in oneOf #/components/schemas/UserFieldUpdate/properties/configuration/properties/choices/items/items must be object #/components/schemas/UserFieldUpdate/properties/configuration/properties/choices/items/items must be object #/components/schemas/UserFieldUpdate/properties/configuration/properties/choices/items/items must match exactly one schema in oneOf #/components/schemas/UserFieldUpdate/properties/configuration/properties/choices/items must have required property '$ref' #/components/schemas/UserFieldUpdate/properties/configuration/properties/choices/items must match exactly one schema in oneOf #/components/schemas/UserFieldUpdate/properties/configuration/properties/choices must have required property '$ref' #/components/schemas/UserFieldUpdate/properties/configuration/properties/choices must match exactly one schema in oneOf #/components/schemas/UserFieldUpdate/properties/configuration/properties/default/anyOf/0/type must be equal to one of the allowed values #/components/schemas/UserFieldUpdate/properties/configuration/properties/default/anyOf/0 must have required property '$ref' #/components/schemas/UserFieldUpdate/properties/configuration/properties/default/anyOf/0 must match exactly one schema in oneOf #/components/schemas/UserFieldUpdate/properties/configuration/properties/default must have required property '$ref' #/components/schemas/UserFieldUpdate/properties/configuration/properties/default must match exactly one schema in oneOf #/components/schemas/UserFieldUpdate/properties/configuration must have required property '$ref' #/components/schemas/UserFieldUpdate/properties/configuration must match exactly one schema in oneOf #/components/schemas/UserFieldUpdate must have required property '$ref' #/components/schemas/UserFieldUpdate must match exactly one schema in oneOf #/components/schemas/UserRead/properties/fields/additionalProperties/anyOf/0/properties/country must NOT have additional properties #/components/schemas/UserRead/properties/fields/additionalProperties/anyOf/0/properties/country/type must be equal to one of the allowed values #/components/schemas/UserRead/properties/fields/additionalProperties/anyOf/0/properties/country must have required property '$ref' #/components/schemas/UserRead/properties/fields/additionalProperties/anyOf/0/properties/country must match exactly one schema in oneOf #/components/schemas/UserRead/properties/fields/additionalProperties/anyOf/0 must have required property '$ref' #/components/schemas/UserRead/properties/fields/additionalProperties/anyOf/0 must match exactly one schema in oneOf #/components/schemas/UserRead/properties/fields/additionalProperties/anyOf/1/type must be equal to one of the allowed values #/components/schemas/UserRead/properties/fields/additionalProperties/anyOf/1 must have required property '$ref' #/components/schemas/UserRead/properties/fields/additionalProperties/anyOf/1 must match exactly one schema in oneOf #/components/schemas/UserRead/properties/fields/additionalProperties must have required property '$ref' #/components/schemas/UserRead/properties/fields/additionalProperties must be boolean #/components/schemas/UserRead/properties/fields/additionalProperties must match exactly one schema in oneOf #/components/schemas/UserRead/properties/fields must have required property '$ref' #/components/schemas/UserRead/properties/fields must match exactly one schema in oneOf #/components/schemas/UserRead must have required property '$ref' #/components/schemas/UserRead must match exactly one schema in oneOf o@https://apitools.dev/swagger-parser/online/js/bundle.min.js:1:95564 [211]

To Reproduce

try generate client code (python in my case) from admin open api spec from https://[acc].fief.dev/admin/api/openapi.json

Steps to reproduce the behavior:

  1. try generate client code (python in my case) from admin open api spec

Expected behavior

api spec should be valid

A clear and concise description of what you expected to happen.

Configuration

  • Cloud or self-hosted: Cloud

Additional context

Add any other context about the problem here.

frankie567 commented 1 year ago

Thank you for the detailed report, I'll look into this!

frankie567 commented 1 year ago

Fixed in https://github.com/fief-dev/fief/commit/1ef28512843b0fd8150ed781b662dec10f9c1d00! Mostly some small mistakes from my part and weird handling of the tuple type from Pydantic.

frankie567 commented 1 year ago

Released in v0.23.2 and available on Fief Cloud 🚀