18

Recently, I've built an application which accesses the SE API to gather certain statistics on each site. (The application gathers the data between 00:00:00UTC+00:00 and 00:05:00UTC+00:00 for the most part.) It does this, by pulling all sites from the /sites API endpoint, then querying the /info endpoint for each site, and saving all the data from both queries to my database. It follows all backoff procedures, and limits requests to no more than 4 requests per second.

Obviously this is a trivial system to implement, and I did this so that I can track certain statistics over a period of time (mostly for the main site I participate in, Code Review) to view graphs and trends on the data.

My questions are the following:

  1. Is it against the SE ToS/Legal for me to make this data publicly available via a web-interface so that users may view graphs/trends of certain types of information from this data. (One of the points is "Zombie Rate", as we call it, or the percentage of questions with no suitable answers.)
  2. Is it against the SE ToS/Legal for me to make this data publicly available via an API so that other developers may access this data for their own uses? Do note: this would be an API endpoint on my end, it would in no way query the SE database, except for the single batch of queries at 00:00:00UTC+00:00.

Obviously I'm looking for an authoritive answer from SE (or someone who knows the ToS/Legal inside and out) regarding these issues.

1
  • 7
    IANAL, and this isn't an official answer, but I've done both in the past and haven't been sued yet.
    – Undo
    Jun 5, 2016 at 21:59

2 Answers 2

25

Semi-Official Not-Quite-Legal-but-Pretty-Authoritative Answer

I don't envision anyone over here suing you in the near future. I may sue Undo, and possibly ArtOfCode, but only if I get super-bored, and most likely for reasons unrelated to their use of SO/SE.

The lawyers would probably want me to be clear that the ToS is supposed to speak for itself, and anything I say that contradicts or takes an interpretive position on it in no way changes or supersedes a reasonable interpretation of it as written. (I don't know if they really always talk that way, but I like to think they do.)

As a layperson, (but someone likely to be contacted prior to any actual suing of someone like yourself), I can't think of anything in the terms that your proposed use would violate.

Couple of things I'd suggest:

  • Be sure to follow any appropriate attribution rules in the Terms and API Terms.
  • Be aware that API use and specific content can be changed or cut off at any time (no plans there - just always want to be up front when a dependency isn't guaranteed).

We like when people build on our data; that's why we make it available. Sounds like you're a force for good here. Rock on.

1
  • Would it be possible to get you to take a quick look at the site I've built, and tell me if it looks like it follows the requirements (your IANAL status in mind)? Sep 21, 2016 at 18:49
17

IANAL, and this isn't an official answer, but I've done both in the past and haven't been sued yet. – Undo 1 min ago

Likewise. SE don't tend to be the type to hammer you into the ground if you make a mistake - if you're doing it wrong, it seems most likely that you'll get a warning, at which point you can change how you're doing things.

I work on metasmoke, which is the web dashboard for SmokeDetector. It displays content that comes from the network; that content is sourced by SmokeDetector from the API and sent to metasmoke to display. That covers your first point (a web interface) - you should have no trouble there.

Metasmoke also provides an API to access some of the data we've got stored. While that's a relatively new feature, I did run through the terms before I pushed it and I believe it's compliant - which covers your second point about an API.

Technically, I suppose it would be @Undo who got sued if I got this wrong... but neither of us have been sued, so that's slightly irrelevant.


The main part of the legal information you need to be concerned with here is the API Terms of Use. If you haven't already, go read them - they're not long or complicated. From your description of your application and intended use, it sounds like the one you need to be concerned about is point 1 - API Attribution.

All Applications must ensure they visually indicate that the Stack Exchange Network is the source of the content provided through the API Services (section 3a of the Stack Exchange Terms of Service).

Make sure you're prominently displaying the fact that your stuff comes from the Stack Exchange network. For a web dashboard, this is potentially indexable by a search engine, so follow all attribution requirements set out in CC BY-SA 3.0 and the TOS (don't nofollow links, in particular). If you use the logos to attribute, be aware of the trademark guidance:

Do feel free to use names or logos for the purpose of labeling our sites within your product, as long as use of such logos could not be confused with the branding or endorsement of the product itself.

Exercise common sense, and you'll be fine - as is the case with most of these things, really.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .