Eng:Scratch APIs

Certain URLs on the Scratch Website could work as headers, or in other words, sends a request to the servers when visited or get specified data. Here is a documentation that lists some of these URLs. Some (not all) of these URLs have to be modified before a specified request can be sent. When opening these URLs, replace the parts that are surrounded in brackets and are in written in capitals, e.g. '(USERNAME)', if there is any. Some of these URLs could only be accessed when one is logged in, as they returns personal data which is invisible to other users. Some APIs may not be documented here; this may be intended, for some APIs are more dangerous than the others when abused. Some of these URLs require different request methods; you browser uses GET when you load a page.

Some of these could be workarounds for some suggestions, or solve problems when computer programs are used to harvest mass data. Others are good for satisfying curious Scratchers. The Scratch Team disallows programs that requests APIs massively (e.g. a program that adds hundreds of random projects per second to a studio), because they slows the servers down.

Front Page

 * What's Happening? Returns the specified number of the activities of the Scratchers' you're following.

Projects

 * General project data Returns you the general data of the specified project.
 * Comments on any given project Returns the project comments of a specified project.
 * More projects by (username) Returns more projects by the same Scratcher who creates the project with the project ID given.
 * Recently viewed projects Returns a list of projects that you have viewed recently.
 * Recently favorited projects Returns a list of projects that you have favorited recently.
 * Recently shared projects Returns a list of projects that you have shared recently.
 * Unshared projects data Returns data about your unshared projects.
 * Trashed projects data Returns data about your trashed projects.

Studios

 * Comments on any given studio Returns the studio comments of a specified studio.
 * Projects in any given studio Returns the projects of a specified studio.
 * List of studios you curate Returns a list of studios that you curate.

Note: These require the PUT method, therefore they cannot be used by clicking this link.
 * Follow a studio Follow a studio
 * Unfollow a studio Unfollow a studio

Users

 * Account information Returns your account information.
 * What (username) is doing  Returns the specified number of activities of a specified Scratcher.
 * User profile comments Returns the profile comments of a specified Scratcher.
 * User's featured project Returns a specified Scratcher's featured project.
 * List of users  Returns the list of users on Scratch, starting at the specified user ID.
 * List of peoples you're following Returns the list of Scratchers you are following, by the order they joined Scratch.
 * List of followers Returns someone's list of followers.
 * List of followings Returns someone's list of followings.

Sending Data
Note: These require the PUT method, therefore they cannot be used by clicking this link.
 * Follow someone
 * Unfollow someone
 * Follow a topic
 * Unfollow a topic

Miscellaneous

 * Message Count Returns the number of your new messages.
 * Your Backpack Returns you the items on your backpack. The username must be your username and you must be logged in.
 * Scratch Statistics Returns basic statistics about Scratch
 * Scratch Blog Returns posts from the Scratch Blog