Swagger/OpenAPI would allow the developer API docs to be generated/updated automatically as soon as an API endpoint/model changes, and it will become possible to generate API clients for multiple languages (PHP/Java/JavaScript/etc.). This Symfony bundle might help a lot: https://symfony.com/doc/current/bundles/NelmioApiDocBundle/index.html
I think these groups of people would benefit from this idea:
People who are using the Mautic API to connect to Mautic instances
Why I think they would benefit from this idea:
Improved/more up-to-date API documentation, as well as the possibility to generate API clients (PHP/Java/JavaScript/etc.) on the fly if necessary
In some scenarios it is kind of tricky to describe an endpoint via Nelmio annotations to get desired output. If you are stuck, feel free to ask me. I may help you.
There’s some roadblocks I ran into after spending some hours on researching the internals of both Mautic and the NelmioApiBundle. I have documented them here:
@fedy if you’d have some time to look into this as well, that’d be fantastic. I’ll try to spend some time next weekend to to continue diving into this.
Just had a call with @dongilbert and we’ll try to harmonize efforts for implementing OpenAPI between Acquia and the community, so that we’re all on the same page. We expect to move into the direction of introducing a new API version (v2) using API Platform, which will make maintenance a lot easier for all parties involved, make the API more predictable/stable and will help us to automatically generate OpenAPI docs. A migration path from the old API will of course be provided.
We’re trying to get the requirements clear within the next 30 days (roughly) after which we’ll be looking for community contributors to get this project moving forward. If anyone has thoughts on this idea or would like to help, please do not hesitate to leave a comment here! To be continued
Is there any news on this? I’m looking to move my clients from Dotmailer to Mautic but my main sticking point at the moment is lack of api sdk’s (primarily java). I’ve had a go generating both a java & spring client with swagger using your json file but it just errors. I’m about to start building a java sdk for my needs but figured I’d see if there was any update on the API-Platform collaboration before I begin.