使ってみよう! Windows Live SDK/API

第50回 SkyDrive API 概要(3)──メディアファイルのアクセス

この記事を読むのに必要な時間:およそ 7 分

アルバム情報の取得

アルバムはフォルダーと同じ情報を持っています。SkyDrive直下のアルバム一覧を取得する場合,次のURLにアクセスすると得られます。

  • https://apis.live.net/v5.0/me/albums?access_token=ACCESS_TOKEN

URLにアクセスすると,次のようにJSON形式でアルバム情報を取得できます。

{
   "data": [
      {
         "id": "folder.xxxxx", 
         "from": {
            "name": "梓 中野", 
            "id": "xxxxx"
         }, 
         "name": "ビデオ", 
         "description": null, 
         "parent_id": "folder.XXXXX", 
         "count": 16, 
         "link": "https://skydrive.live.com/redir.aspx?cid...", 
         "type": "album", 
         "created_time": "2010-10-30T14:00:00+0000", 
         "updated_time": "2012-01-25T11:00:00+0000"
      }
   ]
}

アルバムの情報を表すAlbumオブジェクトの内容は,次の通りです。これは第48回で紹介したFolderオブジェクトとまったく同じです。ただし,写真・ビデオのアクセス許可しかない場合,一部の項目は取得できません。

プロパティ 説明
data array Albumオブジェクトを含む配列(複数のアイテムを含む結果の場合)
id string AlbumオブジェクトのID
from object アルバム作成者の情報
name(fromオブジェクト) string 作成者の名前
id(fromオブジェクト) string 作成者のユーザーID
name string アルバムの名前(編集可能,新規作成時必須)
description stringまたはnull アルバムの説明(編集可能)
count number アルバム内のアイテム数
link string SkyDriveでのアルバムのURL
upload_location string アプリから,このアルバムへファイルをアップロードするためのURL
Scope ⁠wl.skydrive」が必要
parent_id string このアルバムの上位階層のリソースID(親フォルダーのID)
type string オブジェクトの種類
アルバムの場合は,album
created_time string アルバムの作成日時(ISO 8601形式)
updated_time string アルバム内のコンテンツの更新日時(ISO 8601形式)
shared_with object アルバムの共有情報
Scope ⁠wl.skydrive」が必要
access(shared_withオブジェクト) string アルバムの共有情報
次の値のいずれか
  • People I selected
  • Just me
  • Everyone (public)
  • Friends
  • My friends and their friends
  • People with a link

フォルダーとアルバムでは,typeの値が「folder」「album」で異なります。

アルバム情報を返すリソースのパスは次の通りです。あわせて第48回のフォルダー情報を返すリソースのパスも参照してください。

パス 説明
/ALBUM_ID 特定のアルバム
/ALBUM_ID/files 特定のアルバム内のアイテム
/me/albums サインインユーザーのSkyDriveのルートにあるアルバム
/me/skydrive/shared/albums サインインユーザーのSkyDriveの共有フォルダー内のアルバム
/USER_ID/albums 特定のユーザーのSkyDriveのルートにあるアルバム

アルバムの作成

アルバムを作成する場合は,Scopewl.skydrive_updateの許可が必要です。作成方法は,第49回で紹介したフォルダー作成と同じです。アルバムはSkyDrive直下にのみ作成可能で,⁠/me/albums」へHTTP POSTメソッドでデータを送信します。HTTPの通信内容は次のようになります。

POST https://apis.live.net/v5.0/me/albums?access_token=ACCESS_TOKEN HTTP/1.1
Content-Type: application/json
Host: apis.live.net
Content-Length: 31
Connection: Keep-Alive

{name: "新しいアルバム"}

著者プロフィール

松江祐輔(まつえゆうすけ)

日本システムウエア株式会社 勤務。現在,ハードウェア設計・検証業務を担当。大学生・大学院生時代はベンチャー企業 有限会社ミレニアムシステムズにプログラマーとして従事。趣味はプログラミング。好きな言語はVisual Basic。Microsoft MVP for Windows Live Platform(Jul 2010 - Jun 2011),Windows Live(Jul 2011 - Jun 2013)。

URL:http://katamari.jp