Xiaohongshu / RedNote 動画・画像ダウンロード API
RedNote / Xiaohongshu(小紅書)の対応する公開URLを解析し、ダウンロード可能な動画・画像・音声と、機密項目を除去したプラットフォームデータを取得します。URL形式、レスポンス項目、エラー、実装例を掲載しています。
xhslink.com と xhslink.cn の共有 URL をノート処理前に解決し、投稿メディアだけをマッピングして作者アバターを画像一覧に混在させません。
RedNoteとXiaohongshu(小紅書)の動画ダウンロードに対応し、記載された短縮URLも処理できます。
安定したダウンロードメディアに加えてプラットフォーム固有項目が必要な場合に使用します。
エンドポイント
POST https://api.easydown.org/api/v1/platforms/xiaohongshu/parse
対応URL形式
xiaohongshu.com/explore/{id}xiaohongshu.com/discovery/item/{id}rednote.com/explore/{id}xhslink.com/{path}xhslink.cn/{path}
利用可能な例
https://www.xiaohongshu.com/discovery/item/67f75b07000000000b0154b3https://www.xiaohongshu.com/explore/671e2c6500000000210016b9https://www.rednote.com/explore/6a51ee42000000001702879fhttp://xhslink.com/o/2CxGwu8nSPx
このプラットフォームのレスポンス内容
画像ノートは全コンテンツ画像と first-frame 候補を、動画ノートは動画と関連画像を元の順序で返します。
公開済みプラットフォームデータ項目
対象投稿の最終レスポンスに含まれるその他の公開項目も、機密情報を再帰的に除去したうえで保持します。以下の項目は現在の platformDataVersion 内で安定しています。
| 項目 | 型 | 説明 |
|---|---|---|
data.media | object | 正規化された画像、動画、音声、タイトル、サムネイル、再生時間。 |
data.platformDataVersion | string | RedNote / Xiaohongshu(小紅書)の公開データ契約バージョン。現在は1です。 |
data.platformData.note_id | string | 対象投稿の公開識別子です。大きな数値の精度を失わないよう文字列として保存します。 |
data.platformData.title | string | 対象投稿に公開表示されるタイトル、本文、説明です。 |
data.platformData.desc | string | 対象投稿に公開表示されるタイトル、本文、説明です。 |
data.platformData.type | string | 対象投稿のプラットフォームレスポンスに含まれる公開項目です。 |
data.platformData.user | object | 対象投稿の投稿者に関する公開プロフィール項目です。連絡先や認証情報は含みません。 |
data.platformData.images_list | array | 対象投稿の画像、カバー、カルーセル項目です。配列順はプラットフォームの返却順を維持します。 |
data.platformData.video_info_v2 | object | 動画の再生候補、画質、コーデック、サイズ、メディアURLに関する情報です。 |
data.platformData.interact_info | object | 再生、いいね、コメント、保存、共有など公開されているエンゲージメント指標です。 |
data.platformData.native_voice_info | object | 対象投稿で公開されている楽曲、オリジナル音声、分離音声の情報です。 |
{
"status": 200,
"data": {
"media": {
"platform": "xiaohongshu",
"title": "公開投稿の例",
"thumbnail": "https://public-cdn.example/cover.jpg",
"duration": 18,
"images": [],
"videos": [
{
"url": "https://public-cdn.example/video.mp4",
"quality": "1080p",
"mimeType": "video/mp4",
"width": 1920,
"height": 1080,
"hasAudio": true,
"source": "direct"
}
],
"audios": []
},
"platformData": {
"note_id": "67f75b07000000000b0154b3",
"title": "Example public RedNote post",
"desc": "Example note description",
"type": "video",
"user": {
"user_id": "creator-id",
"nickname": "Example creator"
},
"images_list": [
{
"width": 1080,
"height": 1440,
"url": "https://media.example/image.jpg"
}
],
"interact_info": {
"liked_count": "120",
"collected_count": "24"
}
},
"platformDataVersion": "1"
},
"msg": "success"
}ダウンロードとプロキシの注意点
Xiaohongshu Referer とブラウザー User-Agent を付けてバックエンド取得します。CDN のリファラー、Cookie、期限、地域制限に注意します。
制限と動作
プロフィール、検索、コレクション、非公開・削除済みノート、ログイン限定、地域で利用できない内容には対応しません。
公開コンテンツのみ対象です。非公開、削除済み、年齢・地域制限、ライブ配信、その他利用できないコンテンツは解析に失敗する場合があります。失敗時にクレジットは消費されません。
ダウンロード可能なメディアを返した場合のみ1クレジットを消費します。認証、入力検証、権限、コンテンツ利用不可、メディアなし、外部サービス障害は課金されません。
トラブルシューティング
- 公開ページに必要なアクセスパラメータを含む完全な URL を保持します。
- ブラウザーから CDN を直接呼ばずバックエンドでプロキシします。
- 短縮 URL やメディア URL が期限切れなら再解析します。
よくある質問
失敗したリクエストは課金されますか?
いいえ。ダウンロード可能なメディアを返した場合のみ1クレジットを消費します。
正しい公開URLでも失敗するのはなぜですか?
投稿が削除済み、非公開、地域制限、ライブ、メディアなし、または外部サービスが一時的に利用できない可能性があります。
関連ガイド
対話型APIリファレンス
以下のcurl、JavaScript、Pythonの例とスキーマは、本番環境のOpenAPI 3.1契約から生成されます。
「Try it」パネルはapi.easydown.orgへ直接リクエストします。トークンはページのメモリだけに保持され、再読み込みすると消去されます。
試してみる
Authorization
bearerAuth In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
curl -X POST "https://example.com/api/v1/platforms/xiaohongshu/parse" \ -H "Content-Type: application/json" \ -d '{}'{ "status": 200, "data": { "media": { "platform": "tiktok", "title": "string", "thumbnail": "string", "duration": 0, "images": [ { "url": "http://example.com", "width": 0, "height": 0 } ], "videos": [ { "url": "http://example.com", "quality": "string", "mimeType": "string", "width": 0, "height": 0, "hasAudio": true, "source": "direct", "headers": { "property1": "string", "property2": "string" } } ], "audios": [ { "url": "http://example.com", "quality": "string", "mimeType": "string", "bitrate": 0, "source": "direct", "headers": { "property1": "string", "property2": "string" } } ] }, "platformData": { "note_id": "string", "title": "string", "desc": "string", "type": "string", "user": {}, "images_list": [ null ], "video_info_v2": {}, "interact_info": {}, "native_voice_info": {} }, "platformDataVersion": "1" }, "msg": "success"}