api-platform / core

The server component of API Platform: hypermedia and GraphQL APIs in minutes
https://api-platform.com
MIT License
2.43k stars 863 forks source link

[OpenAPI/Hydra] Validation error schema should be generated #4480

Open alanpoulain opened 2 years ago

alanpoulain commented 2 years ago

Description

In OpenApiFactory, the schema is not generated for the validation error (422): https://github.com/api-platform/core/blob/e649fa1507963102fddb339458a82c426240553b/src/OpenApi/Factory/OpenApiFactory.php#L227

It would be nice to add it at least for Hydra. Hydra normalizes the validation error like this: https://github.com/api-platform/core/blob/e649fa1507963102fddb339458a82c426240553b/src/Core/Hydra/Serializer/ConstraintViolationListNormalizer.php#L46-L50

One way to implement it would be to add a new schema type, like TYPE_VALIDATION_ERROR here: https://github.com/api-platform/core/blob/e649fa1507963102fddb339458a82c426240553b/src/Core/JsonSchema/Schema.php#L30-L31

And handle this new type in this method: https://github.com/api-platform/core/blob/e649fa1507963102fddb339458a82c426240553b/src/Core/Hydra/JsonSchema/SchemaFactory.php#L73

stale[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.