This article was created in response to a support issue logged with K2. The content may include typographical errors and may be revised at any time without notice This article is not considered official documentation for K2 software and is provided “as is” with no warranties.

Issue

When you have created a swagger definition, which is supposed to return results, but when ran in the smart object explorer only two fields are populated in which are the HTTPResponseCode and Status. If you go into the smart object tester and execute the smartobject based on the swagger definition you will see that only 2 fields are returned.

Symptoms

Due to badly created swagger definition, that may be missing key elements.

Troubleshooting Steps

It may be a good idea to check if the swagger definition was formatted correctly. Please check that the outer responses have been populated correctly. It may be a good idea to have a look at the following document in regards Swagger reference formats: http://help.k2.com/onlinehelp/k2appit/userguide/1.5_update3/default.htm#servicebrokers/endpoints/rest_swaggerfilereferenceformat.html

Please note that Swagger DOES NOT support the following:
• Defining complex objects elsewhere in the descriptor (e.g. in a Response object). Such objects must be defined here and then referenced using $ref.
• Inline definitions: Meaning that if an entity contains a property of another entity type you must declare each entity separately and then reference them for nesting purposes.
• It may be necessary to define an object to hold the response that is actually not part of the response model. See When to Use a Root Object for more information.

For info on deserialization please have a look at the following document: https://help.k2.com/kb000712