コンテンツにスキップ

画像エクスポート

原画はメディア API、公式譜面は譜面画像 API、プロフィールカードはプレイヤー API。以下は残りの画像保存に対応。POST JSON は {data, locale?, theme?, seed?}。全フィールドは OpenAPI と端末スキーマ。例は画像ガイド。

POST /api/v1/team-builder/image.png

サイトと同じ結果カードを撮影。楽曲の画像・曲名・難易度、スコア、中央のリーダー、スナップを保持。data は TeamImageOptions:同じ計算の request と hit、任意の settings、catalog、server、release、width(360〜1280)。

認証
不要。誰でも匿名で読み取れます。
キャッシュ
no-store

パラメーター

名前場所型説明
locale任意 クエリ string 画像の言語。既定 en。
theme任意 クエリ string サイトのテーマ。既定 light。
seed任意 クエリ string サイトの配色。

リクエストボディ application/json

名前型説明
data必須 TeamImageOptions サイトと同じ結果カードを撮影。楽曲の画像・曲名・難易度、スコア、中央のリーダー、スナップを保持。data は TeamImageOptions:同じ計算の request と hit、任意の settings、catalog、server、release、width(360〜1280)。
locale任意 string 画像の言語。既定 en。
theme任意 string サイトのテーマ。既定 light。
seed任意 string サイトの配色。

リクエスト例

Terminal window
curl -sS -o output.bin -X POST "https://haneoka.org/api/v1/team-builder/image.png" \
-H "Content-Type: application/json" \
--data-binary @team-image.json

レスポンス例

HTTP/2 200 OK

バイナリ本文(表示しません)。

エラー

ステータスコード意味
400invalid_requestパスまたはクエリの ID が不正です。
404not_found地域または記録が見つかりません。
413body_too_largeJSON が 8 MiB を超過。
429renderer_busy60 秒後に再試行。
502image_render_failed画像またはモデルを描画できません。
503renderer_unavailable画像処理を利用できません。端末モジュールかローカルサービスを使用。
POST /api/v1/gacha/simulation/image.png

ガチャ画面と同じ pulls/stats の描画。data は GachaImageInput。

認証
不要。誰でも匿名で読み取れます。
キャッシュ
no-store

パラメーター

名前場所型説明
locale任意 クエリ string 画像の言語。既定 en。
theme任意 クエリ string サイトのテーマ。既定 light。
seed任意 クエリ string サイトの配色。

リクエストボディ application/json

名前型説明
data必須 GachaImageInput ガチャ画面と同じ pulls/stats の描画。data は GachaImageInput。
locale任意 string 画像の言語。既定 en。
theme任意 string サイトのテーマ。既定 light。
seed任意 string サイトの配色。

リクエスト例

Terminal window
curl -sS -o output.bin -X POST "https://haneoka.org/api/v1/gacha/simulation/image.png" \
-H "Content-Type: application/json" \
--data-binary @gacha-image.json

レスポンス例

HTTP/2 200 OK

バイナリ本文(表示しません)。

エラー

ステータスコード意味
400invalid_requestパスまたはクエリの ID が不正です。
404not_found地域または記録が見つかりません。
413body_too_largeJSON が 8 MiB を超過。
429renderer_busy60 秒後に再試行。
502image_render_failed画像またはモデルを描画できません。
503renderer_unavailable画像処理を利用できません。端末モジュールかローカルサービスを使用。
POST /api/v1/gacha-history/image.png

履歴画面と同じ 1 ページ 36 枚の描画。image.png は指定ページ、images.zip は全ページ。data は GachaHistoryReport。

認証
不要。誰でも匿名で読み取れます。
キャッシュ
no-store

パラメーター

名前場所型説明
locale任意 クエリ string 画像の言語。既定 en。
theme任意 クエリ string サイトのテーマ。既定 light。
seed任意 クエリ string サイトの配色。
page任意 クエリ integer 1 から始まるページ。PNG のみ。ZIP は全ページ。 既定値: 1

リクエストボディ application/json

名前型説明
data必須 GachaHistoryReport 履歴画面と同じ 1 ページ 36 枚の描画。image.png は指定ページ、images.zip は全ページ。data は GachaHistoryReport。
locale任意 string 画像の言語。既定 en。
theme任意 string サイトのテーマ。既定 light。
seed任意 string サイトの配色。

リクエスト例

Terminal window
curl -sS -o output.bin -X POST "https://haneoka.org/api/v1/gacha-history/image.png" \
-H "Content-Type: application/json" \
--data-binary @history-image.json

レスポンス例

HTTP/2 200 OK

バイナリ本文(表示しません)。

エラー

ステータスコード意味
400invalid_requestパスまたはクエリの ID が不正です。
404not_found地域または記録が見つかりません。
413body_too_largeJSON が 8 MiB を超過。
429renderer_busy60 秒後に再試行。
502image_render_failed画像またはモデルを描画できません。
503renderer_unavailable画像処理を利用できません。端末モジュールかローカルサービスを使用。
POST /api/v1/gacha-history/images.zip

履歴画面と同じ 1 ページ 36 枚の描画。image.png は指定ページ、images.zip は全ページ。data は GachaHistoryReport。

認証
不要。誰でも匿名で読み取れます。
キャッシュ
no-store

パラメーター

名前場所型説明
locale任意 クエリ string 画像の言語。既定 en。
theme任意 クエリ string サイトのテーマ。既定 light。
seed任意 クエリ string サイトの配色。
page任意 クエリ integer 1 から始まるページ。PNG のみ。ZIP は全ページ。 既定値: 1

リクエストボディ application/json

名前型説明
data必須 GachaHistoryReport 履歴画面と同じ 1 ページ 36 枚の描画。image.png は指定ページ、images.zip は全ページ。data は GachaHistoryReport。
locale任意 string 画像の言語。既定 en。
theme任意 string サイトのテーマ。既定 light。
seed任意 string サイトの配色。

リクエスト例

Terminal window
curl -sS -o output.bin -X POST "https://haneoka.org/api/v1/gacha-history/images.zip" \
-H "Content-Type: application/json" \
--data-binary @history-image.json

レスポンス例

HTTP/2 200 OK

バイナリ本文(表示しません)。

エラー

ステータスコード意味
400invalid_requestパスまたはクエリの ID が不正です。
404not_found地域または記録が見つかりません。
413body_too_largeJSON が 8 MiB を超過。
429renderer_busy60 秒後に再試行。
502image_render_failed画像またはモデルを描画できません。
503renderer_unavailable画像処理を利用できません。端末モジュールかローカルサービスを使用。
POST /api/v1/stamps/image.png

スタンプ画面と同じ画像・文字レイヤーとフォント。data に image、sourceSize、layers、size(1〜512)。独自フォントは fonts[{family,source}]。画像レイヤーで絵を配置。

認証
不要。誰でも匿名で読み取れます。
キャッシュ
no-store

パラメーター

名前場所型説明
locale任意 クエリ string 画像の言語。既定 en。
theme任意 クエリ string サイトのテーマ。既定 light。
seed任意 クエリ string サイトの配色。

リクエストボディ application/json

名前型説明
data必須 StampImageOptions スタンプ画面と同じ画像・文字レイヤーとフォント。data に image、sourceSize、layers、size(1〜512)。独自フォントは fonts[{family,source}]。画像レイヤーで絵を配置。
locale任意 string 画像の言語。既定 en。
theme任意 string サイトのテーマ。既定 light。
seed任意 string サイトの配色。

リクエスト例

Terminal window
curl -sS -o output.bin -X POST "https://haneoka.org/api/v1/stamps/image.png" \
-H "Content-Type: application/json" \
--data-binary @stamp-image.json

レスポンス例

HTTP/2 200 OK

バイナリ本文(表示しません)。

エラー

ステータスコード意味
400invalid_requestパスまたはクエリの ID が不正です。
404not_found地域または記録が見つかりません。
413body_too_largeJSON が 8 MiB を超過。
429renderer_busy60 秒後に再試行。
502image_render_failed画像またはモデルを描画できません。
503renderer_unavailable画像処理を利用できません。端末モジュールかローカルサービスを使用。
POST /api/v1/charts/image.png

ChartDocument をゲームのスキンとサイトの配置で描画。data に chart、meta、server/release/height。公式楽曲は楽曲画像 API。

認証
不要。誰でも匿名で読み取れます。
キャッシュ
no-store

パラメーター

名前場所型説明
locale任意 クエリ string 画像の言語。既定 en。
theme任意 クエリ string サイトのテーマ。既定 light。
seed任意 クエリ string サイトの配色。

リクエストボディ application/json

名前型説明
data必須 CustomChartImageOptions ChartDocument をゲームのスキンとサイトの配置で描画。data に chart、meta、server/release/height。公式楽曲は楽曲画像 API。
locale任意 string 画像の言語。既定 en。
theme任意 string サイトのテーマ。既定 light。
seed任意 string サイトの配色。

リクエスト例

Terminal window
curl -sS -o output.bin -X POST "https://haneoka.org/api/v1/charts/image.png" \
-H "Content-Type: application/json" \
--data-binary @chart-image.json

レスポンス例

HTTP/2 200 OK

バイナリ本文(表示しません)。

エラー

ステータスコード意味
400invalid_requestパスまたはクエリの ID が不正です。
404not_found地域または記録が見つかりません。
413body_too_largeJSON が 8 MiB を超過。
429renderer_busy60 秒後に再試行。
502image_render_failed画像またはモデルを描画できません。
503renderer_unavailable画像処理を利用できません。端末モジュールかローカルサービスを使用。
GETHEAD /api/v1/live2d/{id}/image.png

サイトと同じ Cubism 表示。POST data は motion、expression、loop、time、parameters、parts、look、background、transform。保存したポーズの parameters/parts を指定可。既定背景は透明。

認証
不要。誰でも匿名で読み取れます。
キャッシュ
no-store

パラメーター

名前場所型説明
id必須 パス string Live2D 撮影
server任意 クエリ string リソースサーバー。 既定値: intl
release任意 クエリ string モデルと素材を固定する release。省略時は現在。
width任意 クエリ integer 表示領域のピクセル数。サイトと同じ最大 400 万画素の撮影。出力寸法はヘッダーを参照。 既定値: 1024
height任意 クエリ integer 表示領域のピクセル数。サイトと同じ最大 400 万画素の撮影。出力寸法はヘッダーを参照。 既定値: 1024
time任意 クエリ number 撮影するアニメーション位置(秒)。60 Hz で更新。 既定値: 0
locale任意 クエリ string 画像の言語。既定 en。
theme任意 クエリ string サイトのテーマ。既定 light。
seed任意 クエリ string サイトの配色。
blink任意 クエリ boolean 表示設定。true/false。 既定値: true
breath任意 クエリ boolean 表示設定。true/false。 既定値: true
loop任意 クエリ boolean 表示設定。true/false。 既定値:
motion任意 クエリ string モデル詳細の名前。
expression任意 クエリ string モデル詳細の名前。

リクエスト例

Terminal window
curl -sS -o output.bin "https://haneoka.org/api/v1/live2d/001_casual_spring_01/image.png?server=intl&time=0"

レスポンス例

HTTP/2 200 OK

バイナリ本文(表示しません)。

エラー

ステータスコード意味
400invalid_requestパスまたはクエリの ID が不正です。
404not_found地域または記録が見つかりません。
413body_too_largeJSON が 8 MiB を超過。
429renderer_busy60 秒後に再試行。
502image_render_failed画像またはモデルを描画できません。
503renderer_unavailable画像処理を利用できません。端末モジュールかローカルサービスを使用。
POST /api/v1/live2d/{id}/image.png

サイトと同じ Cubism 表示。POST data は motion、expression、loop、time、parameters、parts、look、background、transform。保存したポーズの parameters/parts を指定可。既定背景は透明。

認証
不要。誰でも匿名で読み取れます。
キャッシュ
no-store

パラメーター

名前場所型説明
locale任意 クエリ string 画像の言語。既定 en。
theme任意 クエリ string サイトのテーマ。既定 light。
seed任意 クエリ string サイトの配色。
id必須 パス string Live2D 撮影

リクエストボディ application/json

名前型説明
data必須 Live2DImageOptions サイトと同じ Cubism 表示。POST data は motion、expression、loop、time、parameters、parts、look、background、transform。保存したポーズの parameters/parts を指定可。既定背景は透明。
locale任意 string 画像の言語。既定 en。
theme任意 string サイトのテーマ。既定 light。
seed任意 string サイトの配色。

リクエスト例

Terminal window
curl -sS -o output.bin -X POST "https://haneoka.org/api/v1/live2d/001_casual_spring_01/image.png" \
-H "Content-Type: application/json" \
--data-binary @live2d-image.json

レスポンス例

HTTP/2 200 OK

バイナリ本文(表示しません)。

エラー

ステータスコード意味
400invalid_requestパスまたはクエリの ID が不正です。
404not_found地域または記録が見つかりません。
413body_too_largeJSON が 8 MiB を超過。
429renderer_busy60 秒後に再試行。
502image_render_failed画像またはモデルを描画できません。
503renderer_unavailable画像処理を利用できません。端末モジュールかローカルサービスを使用。

Live2D の既定撮影(サーバー指定)

Section titled “Live2D の既定撮影(サーバー指定)”
GETHEAD /api/v1/servers/{server}/live2d/{id}/image.png

サイトと同じ Cubism 表示。POST data は motion、expression、loop、time、parameters、parts、look、background、transform。保存したポーズの parameters/parts を指定可。既定背景は透明。

認証
不要。誰でも匿名で読み取れます。
キャッシュ
no-store

パラメーター

名前場所型説明
server必須 パス string リソースサーバー。 既定値: intl
id必須 パス string Live2D 撮影
release任意 クエリ string モデルと素材を固定する release。省略時は現在。
width任意 クエリ integer 表示領域のピクセル数。サイトと同じ最大 400 万画素の撮影。出力寸法はヘッダーを参照。 既定値: 1024
height任意 クエリ integer 表示領域のピクセル数。サイトと同じ最大 400 万画素の撮影。出力寸法はヘッダーを参照。 既定値: 1024
time任意 クエリ number 撮影するアニメーション位置(秒)。60 Hz で更新。 既定値: 0
locale任意 クエリ string 画像の言語。既定 en。
theme任意 クエリ string サイトのテーマ。既定 light。
seed任意 クエリ string サイトの配色。
blink任意 クエリ boolean 表示設定。true/false。 既定値: true
breath任意 クエリ boolean 表示設定。true/false。 既定値: true
loop任意 クエリ boolean 表示設定。true/false。 既定値:
motion任意 クエリ string モデル詳細の名前。
expression任意 クエリ string モデル詳細の名前。

リクエスト例

Terminal window
curl -sS -o output.bin "https://haneoka.org/api/v1/servers/intl/live2d/001_casual_spring_01/image.png?time=0"

レスポンス例

HTTP/2 200 OK

バイナリ本文(表示しません)。

エラー

ステータスコード意味
400invalid_requestパスまたはクエリの ID が不正です。
404not_found地域または記録が見つかりません。
413body_too_largeJSON が 8 MiB を超過。
429renderer_busy60 秒後に再試行。
502image_render_failed画像またはモデルを描画できません。
503renderer_unavailable画像処理を利用できません。端末モジュールかローカルサービスを使用。
POST /api/v1/servers/{server}/live2d/{id}/image.png

サイトと同じ Cubism 表示。POST data は motion、expression、loop、time、parameters、parts、look、background、transform。保存したポーズの parameters/parts を指定可。既定背景は透明。

認証
不要。誰でも匿名で読み取れます。
キャッシュ
no-store

パラメーター

名前場所型説明
server必須 パス string リソースサーバー。 既定値: intl
locale任意 クエリ string 画像の言語。既定 en。
theme任意 クエリ string サイトのテーマ。既定 light。
seed任意 クエリ string サイトの配色。
id必須 パス string Live2D 撮影

リクエストボディ application/json

名前型説明
data必須 Live2DImageOptions サイトと同じ Cubism 表示。POST data は motion、expression、loop、time、parameters、parts、look、background、transform。保存したポーズの parameters/parts を指定可。既定背景は透明。
locale任意 string 画像の言語。既定 en。
theme任意 string サイトのテーマ。既定 light。
seed任意 string サイトの配色。

リクエスト例

Terminal window
curl -sS -o output.bin -X POST "https://haneoka.org/api/v1/servers/intl/live2d/001_casual_spring_01/image.png" \
-H "Content-Type: application/json" \
--data-binary @live2d-image.json

レスポンス例

HTTP/2 200 OK

バイナリ本文(表示しません)。

エラー

ステータスコード意味
400invalid_requestパスまたはクエリの ID が不正です。
404not_found地域または記録が見つかりません。
413body_too_largeJSON が 8 MiB を超過。
429renderer_busy60 秒後に再試行。
502image_render_failed画像またはモデルを描画できません。
503renderer_unavailable画像処理を利用できません。端末モジュールかローカルサービスを使用。
GETHEAD /api/v1/spine/{id}/image.png

サイトと同じ Spine 描画。POST data は animation、skin、loop、playbackRate、time、background、transform。既定背景は透明。

認証
不要。誰でも匿名で読み取れます。
キャッシュ
no-store

パラメーター

名前場所型説明
id必須 パス string Spine 撮影
server任意 クエリ string リソースサーバー。 既定値: intl
release任意 クエリ string モデルと素材を固定する release。省略時は現在。
width任意 クエリ integer 表示領域のピクセル数。サイトと同じ最大 400 万画素の撮影。出力寸法はヘッダーを参照。 既定値: 1024
height任意 クエリ integer 表示領域のピクセル数。サイトと同じ最大 400 万画素の撮影。出力寸法はヘッダーを参照。 既定値: 1024
time任意 クエリ number 撮影するアニメーション位置(秒)。60 Hz で更新。 既定値: 0
locale任意 クエリ string 画像の言語。既定 en。
theme任意 クエリ string サイトのテーマ。既定 light。
seed任意 クエリ string サイトの配色。
loop任意 クエリ boolean 表示設定。true/false。 既定値: true
playbackRate任意 クエリ number 撮影前に適用する再生速度。 既定値: 1
animation任意 クエリ string モデル詳細の名前。
skin任意 クエリ string モデル詳細の名前。

リクエスト例

Terminal window
curl -sS -o output.bin "https://haneoka.org/api/v1/spine/01_mygo_01_cafe_01_anon/image.png?server=intl&time=0"

レスポンス例

HTTP/2 200 OK

バイナリ本文(表示しません)。

エラー

ステータスコード意味
400invalid_requestパスまたはクエリの ID が不正です。
404not_found地域または記録が見つかりません。
413body_too_largeJSON が 8 MiB を超過。
429renderer_busy60 秒後に再試行。
502image_render_failed画像またはモデルを描画できません。
503renderer_unavailable画像処理を利用できません。端末モジュールかローカルサービスを使用。
POST /api/v1/spine/{id}/image.png

サイトと同じ Spine 描画。POST data は animation、skin、loop、playbackRate、time、background、transform。既定背景は透明。

認証
不要。誰でも匿名で読み取れます。
キャッシュ
no-store

パラメーター

名前場所型説明
locale任意 クエリ string 画像の言語。既定 en。
theme任意 クエリ string サイトのテーマ。既定 light。
seed任意 クエリ string サイトの配色。
id必須 パス string Spine 撮影

リクエストボディ application/json

名前型説明
data必須 SpineImageOptions サイトと同じ Spine 描画。POST data は animation、skin、loop、playbackRate、time、background、transform。既定背景は透明。
locale任意 string 画像の言語。既定 en。
theme任意 string サイトのテーマ。既定 light。
seed任意 string サイトの配色。

リクエスト例

Terminal window
curl -sS -o output.bin -X POST "https://haneoka.org/api/v1/spine/01_mygo_01_cafe_01_anon/image.png" \
-H "Content-Type: application/json" \
--data-binary @spine-image.json

レスポンス例

HTTP/2 200 OK

バイナリ本文(表示しません)。

エラー

ステータスコード意味
400invalid_requestパスまたはクエリの ID が不正です。
404not_found地域または記録が見つかりません。
413body_too_largeJSON が 8 MiB を超過。
429renderer_busy60 秒後に再試行。
502image_render_failed画像またはモデルを描画できません。
503renderer_unavailable画像処理を利用できません。端末モジュールかローカルサービスを使用。

Spine の既定撮影(サーバー指定)

Section titled “Spine の既定撮影(サーバー指定)”
GETHEAD /api/v1/servers/{server}/spine/{id}/image.png

サイトと同じ Spine 描画。POST data は animation、skin、loop、playbackRate、time、background、transform。既定背景は透明。

認証
不要。誰でも匿名で読み取れます。
キャッシュ
no-store

パラメーター

名前場所型説明
server必須 パス string リソースサーバー。 既定値: intl
id必須 パス string Spine 撮影
release任意 クエリ string モデルと素材を固定する release。省略時は現在。
width任意 クエリ integer 表示領域のピクセル数。サイトと同じ最大 400 万画素の撮影。出力寸法はヘッダーを参照。 既定値: 1024
height任意 クエリ integer 表示領域のピクセル数。サイトと同じ最大 400 万画素の撮影。出力寸法はヘッダーを参照。 既定値: 1024
time任意 クエリ number 撮影するアニメーション位置(秒)。60 Hz で更新。 既定値: 0
locale任意 クエリ string 画像の言語。既定 en。
theme任意 クエリ string サイトのテーマ。既定 light。
seed任意 クエリ string サイトの配色。
loop任意 クエリ boolean 表示設定。true/false。 既定値: true
playbackRate任意 クエリ number 撮影前に適用する再生速度。 既定値: 1
animation任意 クエリ string モデル詳細の名前。
skin任意 クエリ string モデル詳細の名前。

リクエスト例

Terminal window
curl -sS -o output.bin "https://haneoka.org/api/v1/servers/intl/spine/01_mygo_01_cafe_01_anon/image.png?time=0"

レスポンス例

HTTP/2 200 OK

バイナリ本文(表示しません)。

エラー

ステータスコード意味
400invalid_requestパスまたはクエリの ID が不正です。
404not_found地域または記録が見つかりません。
413body_too_largeJSON が 8 MiB を超過。
429renderer_busy60 秒後に再試行。
502image_render_failed画像またはモデルを描画できません。
503renderer_unavailable画像処理を利用できません。端末モジュールかローカルサービスを使用。
POST /api/v1/servers/{server}/spine/{id}/image.png

サイトと同じ Spine 描画。POST data は animation、skin、loop、playbackRate、time、background、transform。既定背景は透明。

認証
不要。誰でも匿名で読み取れます。
キャッシュ
no-store

パラメーター

名前場所型説明
server必須 パス string リソースサーバー。 既定値: intl
locale任意 クエリ string 画像の言語。既定 en。
theme任意 クエリ string サイトのテーマ。既定 light。
seed任意 クエリ string サイトの配色。
id必須 パス string Spine 撮影

リクエストボディ application/json

名前型説明
data必須 SpineImageOptions サイトと同じ Spine 描画。POST data は animation、skin、loop、playbackRate、time、background、transform。既定背景は透明。
locale任意 string 画像の言語。既定 en。
theme任意 string サイトのテーマ。既定 light。
seed任意 string サイトの配色。

リクエスト例

Terminal window
curl -sS -o output.bin -X POST "https://haneoka.org/api/v1/servers/intl/spine/01_mygo_01_cafe_01_anon/image.png" \
-H "Content-Type: application/json" \
--data-binary @spine-image.json

レスポンス例

HTTP/2 200 OK

バイナリ本文(表示しません)。

エラー

ステータスコード意味
400invalid_requestパスまたはクエリの ID が不正です。
404not_found地域または記録が見つかりません。
413body_too_largeJSON が 8 MiB を超過。
429renderer_busy60 秒後に再試行。
502image_render_failed画像またはモデルを描画できません。
503renderer_unavailable画像処理を利用できません。端末モジュールかローカルサービスを使用。