mixi Connect (English) » mixi Graph API » Technical Specification » Common API Specification
Common API Specification
Common specifications for each API are described here.
Format of the obtained result
Basically, all of the API supports JSON format. The client can choose which format to use, because some of the API
support also Atom format.
Developers can specify in next two ways.
| Type | Description |
|---|---|
| Using a query parameter “format” | Include the query string like “format=json”. |
| Using an URI suffix | Append “/updates.json” as the suffix of the URI. |
If developers have specified both, the “format” parameter would be applied priority. Currently, developers can choose “JSON” and “Atom”. If developers use API that is not support multiple formats, developers don’t need to specify either explicitly.
Paging
The client can restrict the number of results developers want to get, if the API get many results.
And developers can also obtain a result of next by specifying as the “next 10″. This process is called “paging”. Some of the API supports paging.
Developers can use the following query parameters to do paging.
| Parameter name | Value |
|---|---|
| startIndex | Start Index |
| count | Maximum number of results |
When API supports Paging, The following information are included in the obtained results.
| Property name | Description |
|---|---|
| totalResults | Total number of results. |
| startIndex | The first index of the returned results. |
| itemsPerPage | The number of per page. |
These values, if the result’s format is JSON, the object holds them as a direct property.
The other hand, if the result’s format is Atom, these would be written based on the OpenSearch specification.
The client can specify the next or previous set of results by using these values.
Limitation of number of requests
If the number of requests within 1 minute exceeds the limit in the table below, the Graph API will temporarily return a HTTP 503 error (Service Temporarily Unavailable).
Each API has a separate limit, which applies to each user of a registered service. Even if one user reaches the limit, other users of the service will not be affected.
The block time is of 1 minute, after which the API will resume as usual.
| API name | Feature | Max requests per minute (per service/user) |
|---|---|---|
| People API | GET /people/ | 300 times |
| Voice API | POST & DELETE /voice/statuses/ POST & DELETE /voice/replies/ POST & DELETE /voice/favorites/ | Total 60 times Total 60 times Total 100 times |
| Check API | POST /share/ | 50 times |
| Photo API | POST & DELETE /photo/albums/ POST & DELETE /photo/mediaItems/ POST & DELETE /photo/comments/albums/ POST & DELETE /photo/comments/mediaItems/ POST & DELETE /photo/favorites/mediaItems/ | Total 50 times Total 500 times Total 30 times Total 30 times Total 30 times |
| Message API | PUT /messages/ | 60 times |
| Diary API | POST /diary/ | 30 times |
| Check-in API | POST & DELETE /checkins/ POST & DELETE /checkins/comments/ POST & DELETE /checkins/favorites/ POST & DELETE /spots/ | Total 30 times Total 30 times Total 30 times Total 20 times |
| Profile Image API | POST /people/images/ PUT /people/images/ DELETE /people/images/ | 30 times 30 times 30 times |
| Calendar API | POST /calendar/schedules/ | 30 times |
- The limitations above and number of requests are as of May 21, 2012.
- Limitations take effect from June 4, 2012.