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

After enabling the K2 OData API Feed in the K2 Management site and opening the URL, no SmartObjects are displayed, only the <workspace> tag and nothing underneath.

It looks like this:

<service xmlns="http://www.w3.org/2007/app" xmlns:atom="http://www.w3.org/2005/Atom" xml:base="https://k2.denallix.com/api/odata/v3">

<workspace>

<atom:title type="text">Default</atom:title>

</workspace>

</service>

It should look like this:

<service xmlns="http://www.w3.org/2007/app" xmlns:atom="http://www.w3.org/2005/Atom" xml:base="https://k2.denallix.com/api/odata/v3">

<workspace>

<atom:title type="text">Default</atom:title>

<collection href="SMO_Name">

<atom:title type="text">SMO_Name</atom:title>

</collection>

</workspace>

</service>

Symptoms

We tried the following options to resolve the issue:

- https://help.k2.com/support-services/kbt142686

- Add the K2 SmartForms Application Pool account into the API Management Security.

- https://help.k2.com/support-services/kbt135683

- Restart the K2 Service

- Checked the "Considerations" section here.

- Checked the "Default List Settings" here.

- Gave the K2 SmartForms Application Pool user account Export Rights in K2 Management

- Checked that the K2 SmartForms Application Pool account has SmartBox Load and GetList permissions on the following two objects:
“Published Objects”
“SmartObjects.WebEndpointsPublishing.Management.Settings”

- Tried to install K2 Five 5.0 FP25 and K2 Five 5.1 but both resulted in other issues happening

- As per: https://help.k2.com/kb001857

Q: Can I change the connection pooling setting to improve performance?

C:\Program Files (x86)\K2 blackpearl\WebServices\Identity\Sts\Windows\Web.config


Change the following value to true: 

<add key="ConnectAsAppPool" value="true"/>


- Go to the Management > Integration > SmartBox Object
Make sure the app pool account has at least Load and Get list permissions on SmartObjects.WebEndpointPublishing.Management.Settings

None of the above worked.

The next step would've been to get a lot of log files, like HostServer, SmartObject and SQL Profiler Trace logs. We would've also needed the following file:

C:\Program Files (x86)\K2 blackpearl\WebServices\API\SmartObjectService.OData\web.config

Resolution

The solution to this issue was finally found in the following community article:

http://community.k2.com/t5/K2-Five/K2-Five-OData-API/m-p/103772#M806

The following resolved the issue - manually refresh the URL:

https://k2_site_name/api/odata/op/refresh

For example:

https://k2.domain.com/api/odata/op/refresh