News: find2follow at oneforty.com
It's a single-call RESTful/JSON interface, which means you can access it via any standard HTTP class your favorite programming language provides. Given a Twitter username, this interface returns a list of user profiles the requesting user may be interested in following.
The find2follow engine realizes a complex graph-navigation algorithm that takes some time to finish properly. Do not expect an instant response, mainly at first-time tries. However, we have created a robust caching strategy that will probably make further requests way faster!
Have you developed a wrapper to this API, and wanna share with others? Great! Let us know, and we'll gladly make it available here.
The request message is a simple HTTP GET call, as presented below. Just replace the username placeholder with any Twitter username. The HTTP 'Accept' header must be set to 'application/json'.
GET /rest/graph/username HTTP/1.1 Accept: application/json Host: find2follow.swatlabs.net
The response message body is a JSON collection of user profiles suggested by our engine. Note that the example below has been truncated as a matter of space saving. If you run into unsuccessful requests, the response message body should present a JSON object depicting the error instead.
[
{
"id":9830902,
"name":"Otavio Ferreira",
"screen_name":"otaviofff",
"location":"Sao Paulo,Brazil",
"description":"Web 2.0 and Semantic Web enthusiastic!",
"url":"http://otavio.tumblr.com/",
"protected":false,
"following":false,
"followers_count":155,
"friends_count":97,
"favourites_count":8,
"statuses_count":527,
"created_at":"Wed Oct 31 17:41:57 +0000 2007",
"utc_offset":-10800,
"time_zone":"Brasilia",
"notifications":false,
"verified_profile":false,
"profile_image_url":"http://(...)/Picture_6_normal.jpg",
"profile_background_color":"EDECE9",
"profile_background_tile":false,
"profile_background_image_url":"http://(...)/bg.gif",
"profile_text_color":"634047",
"profile_link_color":"088253",
"profile_sidebar_fill_color":"E3E2DE"
"profile_sidebar_border_color":"D3D2CF",
"status":
{
"id":2225873132,
"text":"Waterfall is dead since Unified Process, 1999 by Jacobson et al",
"truncated":false,
"favorited":false,
"in_reply_to_status_id":null,
"in_reply_to_user_id":null,
"in_reply_to_screen_name":null,
"created_at":"Thu Jun 18 18:15:07 +0000 2009",
"source":"<a href="http://www.feedalizr.com/">feedalizr</a>"
}
},
...truncated...
]
Each response message will also present one of the following HTTP status codes:
| 200 | OK | Successful request. |
| 400 | Bad Request | The caller either didn't send any username, or the username received is invalid. |
| 404 | Not Found | No suggested graph was found to the username received. |
| 405 | Method Not Allowed | The API supports the GET method only. POST, PUT, or DELETE will be refused. |
| 406 | Not Acceptable | The HTTP header 'Accept' must be set to 'application/json'. |
| 500 | Internal Server Error | The request failed. We hope you'll never get this one! |