Hatena::Grouptumblr

たんぶら覚書 - Lupin1962

2007-12-26

[] APIでprivate 21:22  APIでprivate - たんぶら覚書 - Lupin1962 を含むブックマーク はてなブックマーク -  APIでprivate - たんぶら覚書 - Lupin1962

公式のAPIの説明には載ってないけど、/api/writeでprivateエントリを投稿するには、パラメータとして private = 1 をセットしてやればいいみたい。

要するに、こんな感じ(サンプルプログラムを改良)。


<?php
// Authorization info
$tumblr_email    = 'info@davidville.com';
$tumblr_password = 'secret';

// Data for new record
$post_type  = 'regular';
$post_title = '';
$post_body  = 'ここまで読んだ';

// Prepare POST request
$request_data = http_build_query(
    array(
        'email'     => $tumblr_email,
        'password'  => $tumblr_password,
        'type'      => $post_type,
        'title'     => mb_convert_encoding($post_title, 'UTF-8'),
        'body'      => mb_convert_encoding($post_body, 'UTF-8'),
	'private'   => 1,      // こいつを追加
        'generator' => 'API example'
    )
);

// Send the POST request (with cURL)
$c = curl_init('http://www.tumblr.com/api/write');
curl_setopt($c, CURLOPT_POST, true);
curl_setopt($c, CURLOPT_POSTFIELDS, $request_data);
curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($c);
$status = curl_getinfo($c, CURLINFO_HTTP_CODE);
curl_close($c);

// Check for success
if ($status == 201) {
    echo "Success! The new post ID is $result.\n";
} else if ($status == 403) {
    echo 'Bad email or password';
} else {
    echo "Error: $result\n";
}
?>

これで「しおり」を挟むのにわざわざ入力ページに行かなくてよくなった、と。

って、すでにどっかで言及されてそうだけど(^^;)。