ニコニコ動画・ニコニコ生放送などの内部APIの備忘録。気が向き次第追記
使用したことによるアカウント凍結とかの責任は負いません。

目次

  1. 目次
  2. ニコニコ動画
    1. ニコレポ
      1. EndPoint
      2. Parameter
      3. Example Result
      4. 備考
  3. ニコニ広告
    1. ニコニ広告の無料福引情報を取得
    2. ニコニ広告に関する動画情報を取得
      1. EndPoint
      2. Parameter
      3. Example Result
    3. ニコニ広告をしたユーザーのリスト取得
      1. Parameter
      2. Example Result
      3. 動画へのニコニ広告の履歴
      4. Parameter
      5. Example Result

ニコニコ動画

ニコニコ動画関連

ニコレポ

ニコニコ動画やニコニコ生放送のレポート

EndPoint

GET www.nicovideo.jp/api/nicorepo/timeline/my/all

ログイン必須。

Parameter

  • client_app (必須)
    原則的にpc_myrepoを指定。これを指定しないと400が返る
  • cursor
    取得する初めのニコレポIDを指定。

Example Result

{
    "meta": {
        "status": 200, // HTTPステータスコードと同じ
        "maxId": "*************-****************************************", // 取得した中で最新のニコレポのID。["data"][0]["id"]と合致する
        "minId": "*************-****************************************", // 取得した中で最古のニコレポのID。["data"][24]["id"]と合致する
        "impressionId": "********-****-****-****-************", // 不明
        "clientAppGroup": "nicorepo",
        "_limit": 25 // 取得数?パラメータで制御不能
    },
    "data": [
        {
            "id": "*************-****************************************", // ニコレポID
            "topic": "nicoad.user.advertise.video", // ニコレポ種別。後で詳細記載
            "createdAt": "2019-01-14T00:25:16.761+09:00", // ニコレポ発行日時
            "isVisible": true, // 見えるかどうか
            "isMuted": false, // ミューとしているかどうか
            "isDeletable": true, // 削除可能かどうか
            "muteContext": { // ミュートする際のコンテキスト
                "task": "nicorepo",
                "sender": {
                    "idType": "user",
                    "id": "41586021",
                    "type": "user"
                },
                "trigger": "video.nicoad_user_advertise_video"
            },
            "senderNiconicoUser": { // ニコレポ発行者情報
                "nickname": "Tomachi", // 発行者名
                "id": 41586021, // 発行者ID
                "icons": { // 発行者アイコン
                    "tags": {
                        "defaultValue": {
                            "urls": {
                                "s50x50": "https://secure-dcdn.cdn.nimg.jp/nicoaccount/usericon/s/4158/41586021.jpg?1497273633",
                                "s150x150": "https://secure-dcdn.cdn.nimg.jp/nicoaccount/usericon/4158/41586021.jpg?1497273633"
                            }
                        }
                    }
                }
            },
            "actionLog": [],
            "video": { // 動画情報
                "id": "sm********", // VideoID
                "status": "PUBLIC", // 動画ステータス
                "thumbnailUrl": { // サムネイル
                    "normal": "https://tn.smilevideo.jp/smile?i=********.*****"
                },
                "title": "******************", // 動画名
                "videoWatchPageId": "sm********" // 動画閲覧時のページVideoID
            },
            "nicoad": { // ニコニ広告情報
                "watchUrls": {
                    "pcUrl": "https://nicoad.nicovideo.jp/video/publish/sm********", // PCでのニコニ広告ページ
                    "spUrl": "https://nicoad.nicovideo.jp/video/publish/sm********" // スマホでのニコニ広告ページ
                }
            }
        }
    ],
    "errors": [], // エラー情報
    "status": "ok" // ステータス
}

備考

ニコレポ種別は以下のjavascriptのプログラムから確認可能。
message/ja-jp.js

ニコニ広告

ニコニ広告関連

ニコニ広告の無料福引情報を取得

別記事にて解説。ニコニ広告の無料福引を取得する

ニコニ広告に関する動画情報を取得

EndPoint

GET api.nicoad.nicovideo.jp/v1/contents/video/{VID}

VIDにはsm32684885などのsmなどが入ったVideoIDを入力。
ログイン不要。

Parameter

無し (未特定の可能性あり)

Example Result

{
    "meta": {
        "status": 200 // HTTPのステータスコードと同じ。
    },
    "data": {
        "id": "sm32684885", // vid
        "title": "ポプテピピックの豆知識BB", // 動画タイトル
        "targetUrl": "https://www.nicovideo.jp/watch/sm32684885", // 動画URL
        "thumbnailUrl": "https://tn.smilevideo.jp/smile?i=32684885.M", // 動画サムネイルURL
        "nonSchemeThumbnail": "//tn.smilevideo.jp/smile?i=32684885.M", // プロトコル(スキーム)無し動画サムネイルURL
        "tags": [ // 設定されているタグ
            "アニメ",
            "ポプテピピック",
            "BB素材"
        ],
        "totalPoint": 100, // 動画に送られたすべてのニコニ広告ポイント
        "activePoint": 100, // 広告期間中ポイント数 (動画なら7日間)
        "publishable": true, // falseに出会ったことがない。広告できるかどうかとか?
        "ownerId": 41586021, // 動画投稿者のID
        "ownerName": "Tomachi", // 動画投稿者名
        "ownerIcon": "https://secure-dcdn.cdn.nimg.jp/nicoaccount/usericon/4158/41586021.jpg?1497273633", // 動画投稿者アイコン
        "decoration": "normal" // 動画枠。silverとかgoldとか。
    }
}

ニコニ広告をしたユーザーのリスト取得

GET api.nicoad.nicovideo.jp/v1/contents/video/{VID}/thanks

VIDにはsm32684885などのsmなどが入ったVideoIDを入力。
ログイン不要。

Parameter

  • limit
    1〜2147483647を指定可能。デフォルト値は10。この数値外だと400が返り、1未満の場合はerrorCode: INVALID_PARAMETERが、2147483648以上の場合は400以外に何も返らない (エラーコードもなし)

Example Result

{
    "meta": {
        "status": 200 // HTTPのステータスコードと同じ
    },
    "data": {
        "sponsors": [
            {
                "userId": 41586021, // 広告者ユーザーID
                "advertiserName": "Tomachi", // 広告者名
                "message": "メッセージ", // 広告メッセージ
                "contribution": 100, // 広告貢数 (投入ポイント数とは異なる?)
                "auxiliary": {
                    "bgColor": "#FFC100" // 指定した背景色
                }
            }
        ]
    }
}

動画へのニコニ広告の履歴

GET api.nicoad.nicovideo.jp/v1/contents/video/{VID}/histories

VIDにはsm32684885などのsmなどが入ったVideoIDを入力。
ログイン不要。

Parameter

  • limit
    0〜2147483647を指定可能。デフォルト値は10。この数値外だと400が返り、0未満の場合はerrorCode: NICOAD_13_0で不具合扱いが返り、2147483648以上の場合は400以外に何も返らない (エラーコードもなし)

Example Result

{
    "meta": {
        "status": 200 // HTTPのステータスコードと同じ
    },
    "data": {
        "count": 1, // データ数
        "serverTime": 1547405280, // ニコニコのサーバの時刻(Unixtime)
        "histories": [
            {
                "advertiserName": "Tomachi", // 広告者名
                "nicoadId": 27222283, // ニコニ広告のID
                "message": "メッセージ", // 広告メッセージ
                "adPoint": 100, // 投入ポイント
                "contribution": 100, // 広告貢数
                "startedAt": 1547404266, // 広告開始時刻
                "endedAt": 1548009066, // 広告有効期限
                "userId": 41586021 // 広告者ユーザーID
            }
        ]
    }
}
Categories: プログラム