software licensing
Can an API forbid caching of the data it provides?
<p>Not sure whether this is the best place for this kind of question, happy to move it if needed.</p>
<p>I'm designing a web application that will make use of a (non-free) third-party API. Paying a monthly subscription fee would give me access to a certain amount of API requests per month, after which I'd have to pay a flat fee per individual request above the threshold.</p>
<p>However, one thing that confuses me is that the company providing the service states in their terms and conditions that it's forbidden to cache user-requested data for longer than an hour, after which (and I'm quoting) I must  delete my cache and refreshed the data via the API.</p>
<p>Is this limitation enforceable? What if the end-user is the one caching the data on their end? I'd have no control over this at all... If it makes any difference, the information provided by the API is not proprietary, the only service they offer is an easy-to-use API and some extra functionality on how to query the underlying information.</p>

<blockquote>
<p>Is this limitation enforceable?</p>
</blockquote>
<p>Sure it is; you agree to a TOS or EULA with the company to use the API, and that's a legally binding contract. If the contract stipulates limits to caching, that's enforceable in civil court by lawsuit (<em>possibly</em> criminal court, which will depend on jurisdiction).</p>
<blockquote>
<p>What if the end-user is the one caching the data on their end?</p>
</blockquote>
<p>If your end users might be caching, that's something you may need to outline in your own TOS/EULA to adhere to the API's stipulations. And, the API may not allow you to serve API data to your own users; read it and see.</p>
<blockquote>
<p>the information provided by the API is not proprietary,...</p>
</blockquote>
<p>That doesn't matter; you're using their API and service. If you don't like that, you need to write your own API or develop your own queries for the information.</p>
<blockquote>
<p>I'm designing a web application that will make use of a (non-free) third-party API.</p>
</blockquote>
<p>If that App is going to be distributed and used by others, talk to a lawyer about the API and have them write a TOS/EULA for your App; you run the risk of significant legal liability with a publicly distributed App that uses someone else's API, paid or free.</p>
