title: How to design and document a non-REST web API?
body: <p>I need to design a Web API, which is not REST. It would work like this:</p>
  
  <p>3rd party website (later called 'consumer') should make a POST call with JSON payload to my service. The call should be performed by a web browser. My service would process the request and show some UI, possibly leading the end user through a series of forms/pages and gathering inputs.
  At the end my service will return a result and control to the 'consumer' by making a POST call to a callback URL specified by 'consumer'.</p>
  
  <p>The technology used will be Spring Boot. My questions:</p>
  
  <ul>
  <li>is there some official name for this kind of API/integration?</li>
  <li>is there some smart (automated) way to document such API? Especially the JSON payload used as input and output. I tried using Swagger, but it does not seems to serve this use case very well. JSON Schema perhaps? I haven't used it before, at first sight it t looks a little abandoned and aimed more for validation.</li>
  </ul>