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