Swagger for camunda rest api?

I just learned about dmn.camunda.cloud/swagger-ui#/

Is there also a swagger ui/file for the regular engine-rest api? Would be really useful

In the jira, i only found a closed spike.

3 Likes

Hi Jan,

no there is no swagger file for the Camunda REST API.

Cheers,
Sebastian

Thanks … thats what I expected.

Did you never do it because it was not important enough, or did you try it and failed because its not possible/too complicated?

I have to write java based clients for the camunda rest api every now and then and really would like to have some sdk or code generation. I would guess (not experienced with swagger so far), that generating a swagger yaml for the engine-rest services would solve that problem not even for java but for all languages that support swagger.

Would you be open for contributions in that field, or do you think its too invasive and vendor specific to have swagger annotations on the camunda rest controllers?

1 Like

Hi @jangalinski,

when I tried to use Swagger with the Engine-Rest project several problems occured.
Something along the lines of:

  • Generated code not complete
  • Problems with Subresource-Locators
  • Correct result type lookup when method uses generics

I tried several tools but none succeeded completely.

It is several years back, maybe swagger improved :slight_smile:

Hi Jan,

my experience with swagger on the DMN Cloud project was that I like it as a documentation approach, but there a quite some limitations what you can express with swagger annotation. As an alternative you can write the swagger json/yml file by hand and do not use annotations. This is more expressive but has to be maintained manually

Personally I didn’t really liked the Java code which was generated by swagger for the client. And that was only for the simple DMN Cloud API.

An approach for you could be to write a swagger file which describes the parts of the REST API which are interesting for your projects and generate a client with that file.

Cheers,
Sebastian

Thanks for sharing the experience … I will investigate how (and if) a manual and partial swagger file really helps a lot.
I also thought about using feign and just model the dto-classes manually via jackson+lombok.

Maybe I pass the question o the community: How do you deal with calling camunda-rest api from java projects?

1 Like

Hello everybody,

I am a beginner in Camunda and I wish to have some help.
-that’s the difference between Camunda Swagger UI and camunda-spring-boot-embedded.
In fact I’m working on a application management module (spring boot: back end and Angular5: Front end). I created a BPMN model and I want to get the result (http: // localhost: 8080 / camunda / app / tasklist /) in the front end. so I do not know yet what used camunda-spring-boot-embedded or Camunda Swagger UI.
I managed to integrate camunda with spring boot starter and create the database.

I know this an old post, but I was also looking for this and found this: https://docs.camunda.org/manual/7.13/reference/rest/openapi/.

1 Like