API Explorer Limitations Questions


#1

Hello, I was curious about some best practices and limitations we should know about for API Explorer. Here’s some questions:

  1. Is it Ok to have multiple API connectors for the same database? Let’s say I want to pull data for a list view, and when an item is touched, it opens the details view. Is it Ok to have another API connector for the detail view? The goal would be to not manipulate the list view data set; by having a separate API connector that grabs the same data set based on different parameters.

  2. Are there limits to how many API Interface Assets there can be in one XP? Will too many cause memory leaks or performance issues? (for example, it’s not recommended to have multiple web browsers in an XP…is this similar to that?)

  3. Will API explorer “cache” data somehow? So if Player is opened without an internet connection, will API explorer be able to show it’s last called data set? And will clearing browser cache delete this data set?

That’s all I can think of for now, I’m including @Seb and @alban since they may have advice on this. Thank you!


#2

To clarify #3 above, I disconnected the internet from an XP running API explorer and data seemed to be blank upon startup. I was curious if there’s a way to have API Explorer Cache data it has on startup, and not put through any API calls when Player isn’t online (or maybe have a user checkbox in the IA for something like ‘refresh when xp starts’). I’m sure we can manually set this by setting buttons,etc to be disabled when not online, but it seems like there should be an easier way. Thanks!


#3

Hi Alex,

  1. Yes it’s OK. The more data they load, the more memory they will take, but their is no issue having multiple IA Rest connected with the same API. In the future, we will try to have a better way to manage API request leading to another API request (typically a search results leading to an item detail request).

  2. It really depends on how they are used. Memory leaks should not exist, if there is one, it’s a bug an you can report it. Every Interface Asset will consume memory and it will depend on the amont of data it loads. On performance side, it depends on how often Interface Asset are refreshed and if animations or user interaction happens at the same time. And because every REST Interface Asset tries to access its data at startup, Experience startup time might be affected.
    We never had an Experience with a lot of REST Interface Asset, so it’s all based on what I know about how it really works inside.

  3. We’re thinking about cache option for REST Interface Asset. Right now, you need to have Internet access, there is no cache

Hope this will help you.


#4

Awesome. Thanks for the clarification Jeremie, that helps a lot. I can imagine there are some challenges with caching and offline manipulation with API data. Different API’s seem to deliver the data in different ways. Great to hear it’s being considered!