Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
TumblrKit is a Cocoa interface for Tumblr
Objective-C
Tree: c714e1b12f

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
English.lproj
TumblrKit Tests for Mac
TumblrKit for Mac
TumblrKit for iOS
TumblrKit.xcodeproj
.gitignore
Info.plist
MIT-LICENSE.txt
NSDictionary+TumblrKit.h
NSDictionary+TumblrKit.m
NSString+TumblrKit.h
NSString+TumblrKit.m
README.md
TKPost.h
TKPost.m
TKPostsRequest.h
TKPostsRequest.m
TKPostsResponse.h
TKPostsResponse.m
TKRequest.h
TKRequest.m
TKTumblelog.h
TKTumblelog.m
TKTumblelogsRequest.h
TKTumblelogsRequest.m
TKTumblelogsResponse.h
TKTumblelogsResponse.m
TKTumblr.h
TKTumblr.m
TKTumblrReadRequest.h
TKTumblrReadRequest.m
doxygen.config

README.md

TumblrKit

TumblrKit is a light-weight wrapper around Tumblr's API in Objective-C.

Currently you can:

  • Fetch posts from Tumblr (regular, conversation, quote and link)
  • Upload posts to Tumblr (regular, conversation, quote, link and photo)

Usage

You can fetch a post with a specific POST_ID using the following:

TKTumblr *tumblr = [[TKTumblr alloc] initWithEmail:EMAIL andPassword:PASSWORD];
TKPost *thePost = [tumblr postWithID:[NSNumber numberWithInt:POST_ID] andDomain:@"example.tumblr.com"];
NSLog(@"thePost: %@", thePost);

If you want to fetch more than one post:

// Instantiate a new TKTumblr object.
TKTumblr *tumblr = [[TKTumblr alloc] initWithEmail:EMAIL andPassword:PASSWORD];

// Configure a delegate implementing the TKTumblrDelegate protocol.
tumblr.delegate = aDelegate;

// Configure the read request object.
TKTumblrReadRequest *theReadRequest = [[TKTumblrReadRequest alloc] init];

// Return the post in raw text (if you wrote using Markdown).
theReadRequest.filter = TKPostFilterNone;

// Execute the read request. For each post, TKTumblr will send the
// tumblrDidReceivePost:withDomain: message to the delegate object.
[tumblr postsWithReadRequest:theReadRequest];

To upload a TKPost:

// Create a new TKPost
TKPostRegular *thePost = [[TKPostRegular alloc] init];
thePost.title = @"The title";
thePost.body = @"The body";

// Upload it to Tumblr. The delegate will receive either
// tumblrDidUploadPost:withDomain:postId: or
// tumblrDidFailToUploadPost:withDomain:returnCode:
[tumblr uploadPost:thePost withDomain:@"another-example.tumblr.com"];

// If you're lazy, you can dismiss the withDomain to upload to your main
// Tumblelog.
[tumblr uploadPost:thePost];

To Do

  • Currently network connections are synchronous. Need to add support for asynchronous connections, and respective delegate methods.
Something went wrong with that request. Please try again.