圖片匯出
原始卡面、封面等使用目錄中的圖片位址,見媒體 API;官方譜面 PNG/SVG 見譜面圖片 API,玩家資料卡見玩家資源 API。以下介面補齊其餘網頁圖片。POST JSON 為 {data, locale?, theme?, seed?},完整巢狀欄位已包含在 OpenAPI 和裝置 schema 中。圖片匯出指南提供請求、裝置執行與狀態範例。
/api/v1/team-builder/image.png 直接匯出網頁的實際結果卡片,包含歌曲封面、曲名、難度、成績、隊長置中、留影綁定。data 為 TeamImageOptions:同一次計算的 request 與 hit,以及可選的 settings、catalog、server、release、width(360–1280)。
參數
| 名稱 | 位置 | 型別 | 說明 |
|---|---|---|---|
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 | 網站配色。 |
請求範例
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.jsonconst response = await fetch("https://haneoka.org/api/v1/team-builder/image.png", { method: "POST", headers: { "Content-Type": "application/json", }, body: file,});if (!response.ok) throw new Error(`HTTP ${response.status}`);const blob = await response.blob();回應範例
HTTP/2 200 OK二進位內容(不顯示)。
錯誤
| 狀態碼 | 代碼 | 意義 |
|---|---|---|
400 | invalid_request | 路徑或查詢中的 ID 格式錯誤。 |
404 | not_found | 未知的地區或紀錄。 |
413 | body_too_large | JSON 請求本文超過 8 MiB。 |
429 | renderer_busy | 60 秒後重試。 |
502 | image_render_failed | 圖片或模型資源繪製失敗。 |
503 | renderer_unavailable | 圖片繪製器無法使用,可使用裝置模組或本機服務。 |
/api/v1/gacha/simulation/image.png 共用招募模擬的逐次結果或統計圖。data 為 GachaImageInput。
參數
| 名稱 | 位置 | 型別 | 說明 |
|---|---|---|---|
locale選填 | 查詢 | string | 圖片文字語言,預設 en。 |
theme選填 | 查詢 | string | 網站主題,預設 light。 |
seed選填 | 查詢 | string | 網站配色。 |
請求主體 application/json
| 名稱 | 型別 | 說明 |
|---|---|---|
data必填 | GachaImageInput | 共用招募模擬的逐次結果或統計圖。data 為 GachaImageInput。 |
locale選填 | string | 圖片文字語言,預設 en。 |
theme選填 | string | 網站主題,預設 light。 |
seed選填 | string | 網站配色。 |
請求範例
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.jsonconst response = await fetch("https://haneoka.org/api/v1/gacha/simulation/image.png", { method: "POST", headers: { "Content-Type": "application/json", }, body: file,});if (!response.ok) throw new Error(`HTTP ${response.status}`);const blob = await response.blob();回應範例
HTTP/2 200 OK二進位內容(不顯示)。
錯誤
| 狀態碼 | 代碼 | 意義 |
|---|---|---|
400 | invalid_request | 路徑或查詢中的 ID 格式錯誤。 |
404 | not_found | 未知的地區或紀錄。 |
413 | body_too_large | JSON 請求本文超過 8 MiB。 |
429 | renderer_busy | 60 秒後重試。 |
502 | image_render_failed | 圖片或模型資源繪製失敗。 |
503 | renderer_unavailable | 圖片繪製器無法使用,可使用裝置模組或本機服務。 |
招募歷史報表
Section titled “招募歷史報表”/api/v1/gacha-history/image.png 共用歷史報表,每頁 36 張卡。image.png 讀取指定頁,images.zip 包含全部頁。data 為 GachaHistoryReport。
參數
| 名稱 | 位置 | 型別 | 說明 |
|---|---|---|---|
locale選填 | 查詢 | string | 圖片文字語言,預設 en。 |
theme選填 | 查詢 | string | 網站主題,預設 light。 |
seed選填 | 查詢 | string | 網站配色。 |
page選填 | 查詢 | integer | 從 1 開始的報表頁碼;PNG 使用,ZIP 回傳全部頁。 預設值: 1 |
請求主體 application/json
| 名稱 | 型別 | 說明 |
|---|---|---|
data必填 | GachaHistoryReport | 共用歷史報表,每頁 36 張卡。image.png 讀取指定頁,images.zip 包含全部頁。data 為 GachaHistoryReport。 |
locale選填 | string | 圖片文字語言,預設 en。 |
theme選填 | string | 網站主題,預設 light。 |
seed選填 | string | 網站配色。 |
請求範例
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.jsonconst response = await fetch("https://haneoka.org/api/v1/gacha-history/image.png", { method: "POST", headers: { "Content-Type": "application/json", }, body: file,});if (!response.ok) throw new Error(`HTTP ${response.status}`);const blob = await response.blob();回應範例
HTTP/2 200 OK二進位內容(不顯示)。
錯誤
| 狀態碼 | 代碼 | 意義 |
|---|---|---|
400 | invalid_request | 路徑或查詢中的 ID 格式錯誤。 |
404 | not_found | 未知的地區或紀錄。 |
413 | body_too_large | JSON 請求本文超過 8 MiB。 |
429 | renderer_busy | 60 秒後重試。 |
502 | image_render_failed | 圖片或模型資源繪製失敗。 |
503 | renderer_unavailable | 圖片繪製器無法使用,可使用裝置模組或本機服務。 |
歷史報表 ZIP
Section titled “歷史報表 ZIP”/api/v1/gacha-history/images.zip 共用歷史報表,每頁 36 張卡。image.png 讀取指定頁,images.zip 包含全部頁。data 為 GachaHistoryReport。
參數
| 名稱 | 位置 | 型別 | 說明 |
|---|---|---|---|
locale選填 | 查詢 | string | 圖片文字語言,預設 en。 |
theme選填 | 查詢 | string | 網站主題,預設 light。 |
seed選填 | 查詢 | string | 網站配色。 |
page選填 | 查詢 | integer | 從 1 開始的報表頁碼;PNG 使用,ZIP 回傳全部頁。 預設值: 1 |
請求主體 application/json
| 名稱 | 型別 | 說明 |
|---|---|---|
data必填 | GachaHistoryReport | 共用歷史報表,每頁 36 張卡。image.png 讀取指定頁,images.zip 包含全部頁。data 為 GachaHistoryReport。 |
locale選填 | string | 圖片文字語言,預設 en。 |
theme選填 | string | 網站主題,預設 light。 |
seed選填 | string | 網站配色。 |
請求範例
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.jsonconst response = await fetch("https://haneoka.org/api/v1/gacha-history/images.zip", { method: "POST", headers: { "Content-Type": "application/json", }, body: file,});if (!response.ok) throw new Error(`HTTP ${response.status}`);const blob = await response.blob();回應範例
HTTP/2 200 OK二進位內容(不顯示)。
錯誤
| 狀態碼 | 代碼 | 意義 |
|---|---|---|
400 | invalid_request | 路徑或查詢中的 ID 格式錯誤。 |
404 | not_found | 未知的地區或紀錄。 |
413 | body_too_large | JSON 請求本文超過 8 MiB。 |
429 | renderer_busy | 60 秒後重試。 |
502 | image_render_failed | 圖片或模型資源繪製失敗。 |
503 | renderer_unavailable | 圖片繪製器無法使用,可使用裝置模組或本機服務。 |
/api/v1/stamps/image.png 共用貼圖製作器的圖片、文字圖層與字型。data 包含 image、sourceSize、layers,size 為 1–512;自訂字型使用 fonts[{family,source}]。原畫透過圖片圖層放置。
參數
| 名稱 | 位置 | 型別 | 說明 |
|---|---|---|---|
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 | 網站配色。 |
請求範例
curl -sS -o output.bin -X POST "https://haneoka.org/api/v1/stamps/image.png" \ -H "Content-Type: application/json" \ --data-binary @stamp-image.jsonconst response = await fetch("https://haneoka.org/api/v1/stamps/image.png", { method: "POST", headers: { "Content-Type": "application/json", }, body: file,});if (!response.ok) throw new Error(`HTTP ${response.status}`);const blob = await response.blob();回應範例
HTTP/2 200 OK二進位內容(不顯示)。
錯誤
| 狀態碼 | 代碼 | 意義 |
|---|---|---|
400 | invalid_request | 路徑或查詢中的 ID 格式錯誤。 |
404 | not_found | 未知的地區或紀錄。 |
413 | body_too_large | JSON 請求本文超過 8 MiB。 |
429 | renderer_busy | 60 秒後重試。 |
502 | image_render_failed | 圖片或模型資源繪製失敗。 |
503 | renderer_unavailable | 圖片繪製器無法使用,可使用裝置模組或本機服務。 |
/api/v1/charts/image.png 使用原生遊戲皮膚與網頁概覽排版。data 包含 ChartDocument 格式的 chart、meta,以及 server/release/height。官方譜面使用歌曲譜面圖片介面。
參數
| 名稱 | 位置 | 型別 | 說明 |
|---|---|---|---|
locale選填 | 查詢 | string | 圖片文字語言,預設 en。 |
theme選填 | 查詢 | string | 網站主題,預設 light。 |
seed選填 | 查詢 | string | 網站配色。 |
請求主體 application/json
| 名稱 | 型別 | 說明 |
|---|---|---|
data必填 | CustomChartImageOptions | 使用原生遊戲皮膚與網頁概覽排版。data 包含 ChartDocument 格式的 chart、meta,以及 server/release/height。官方譜面使用歌曲譜面圖片介面。 |
locale選填 | string | 圖片文字語言,預設 en。 |
theme選填 | string | 網站主題,預設 light。 |
seed選填 | string | 網站配色。 |
請求範例
curl -sS -o output.bin -X POST "https://haneoka.org/api/v1/charts/image.png" \ -H "Content-Type: application/json" \ --data-binary @chart-image.jsonconst response = await fetch("https://haneoka.org/api/v1/charts/image.png", { method: "POST", headers: { "Content-Type": "application/json", }, body: file,});if (!response.ok) throw new Error(`HTTP ${response.status}`);const blob = await response.blob();回應範例
HTTP/2 200 OK二進位內容(不顯示)。
錯誤
| 狀態碼 | 代碼 | 意義 |
|---|---|---|
400 | invalid_request | 路徑或查詢中的 ID 格式錯誤。 |
404 | not_found | 未知的地區或紀錄。 |
413 | body_too_large | JSON 請求本文超過 8 MiB。 |
429 | renderer_busy | 60 秒後重試。 |
502 | image_render_failed | 圖片或模型資源繪製失敗。 |
503 | renderer_unavailable | 圖片繪製器無法使用,可使用裝置模組或本機服務。 |
Live2D 預設截圖
Section titled “Live2D 預設截圖”/api/v1/live2d/{id}/image.png 使用網頁的 Cubism 檢視器。POST data 接受 motion、expression、loop、time、parameters、parts、look、background、transform;儲存姿勢的 parameters/parts 可直接傳入,預設透明背景。
參數
| 名稱 | 位置 | 型別 | 說明 |
|---|---|---|---|
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 | 模型實體回傳的名稱。 |
請求範例
curl -sS -o output.bin "https://haneoka.org/api/v1/live2d/001_casual_spring_01/image.png?server=intl&time=0"const response = await fetch("https://haneoka.org/api/v1/live2d/001_casual_spring_01/image.png?server=intl&time=0");if (!response.ok) throw new Error(`HTTP ${response.status}`);const blob = await response.blob();回應範例
HTTP/2 200 OK二進位內容(不顯示)。
錯誤
| 狀態碼 | 代碼 | 意義 |
|---|---|---|
400 | invalid_request | 路徑或查詢中的 ID 格式錯誤。 |
404 | not_found | 未知的地區或紀錄。 |
413 | body_too_large | JSON 請求本文超過 8 MiB。 |
429 | renderer_busy | 60 秒後重試。 |
502 | image_render_failed | 圖片或模型資源繪製失敗。 |
503 | renderer_unavailable | 圖片繪製器無法使用,可使用裝置模組或本機服務。 |
Live2D 截圖
Section titled “Live2D 截圖”/api/v1/live2d/{id}/image.png 使用網頁的 Cubism 檢視器。POST data 接受 motion、expression、loop、time、parameters、parts、look、background、transform;儲存姿勢的 parameters/parts 可直接傳入,預設透明背景。
參數
| 名稱 | 位置 | 型別 | 說明 |
|---|---|---|---|
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 | 網站配色。 |
請求範例
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.jsonconst response = await fetch("https://haneoka.org/api/v1/live2d/001_casual_spring_01/image.png", { method: "POST", headers: { "Content-Type": "application/json", }, body: file,});if (!response.ok) throw new Error(`HTTP ${response.status}`);const blob = await response.blob();回應範例
HTTP/2 200 OK二進位內容(不顯示)。
錯誤
| 狀態碼 | 代碼 | 意義 |
|---|---|---|
400 | invalid_request | 路徑或查詢中的 ID 格式錯誤。 |
404 | not_found | 未知的地區或紀錄。 |
413 | body_too_large | JSON 請求本文超過 8 MiB。 |
429 | renderer_busy | 60 秒後重試。 |
502 | image_render_failed | 圖片或模型資源繪製失敗。 |
503 | renderer_unavailable | 圖片繪製器無法使用,可使用裝置模組或本機服務。 |
Live2D 預設截圖(指定資源服)
Section titled “Live2D 預設截圖(指定資源服)”/api/v1/servers/{server}/live2d/{id}/image.png 使用網頁的 Cubism 檢視器。POST data 接受 motion、expression、loop、time、parameters、parts、look、background、transform;儲存姿勢的 parameters/parts 可直接傳入,預設透明背景。
參數
| 名稱 | 位置 | 型別 | 說明 |
|---|---|---|---|
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 | 模型實體回傳的名稱。 |
請求範例
curl -sS -o output.bin "https://haneoka.org/api/v1/servers/intl/live2d/001_casual_spring_01/image.png?time=0"const response = await fetch("https://haneoka.org/api/v1/servers/intl/live2d/001_casual_spring_01/image.png?time=0");if (!response.ok) throw new Error(`HTTP ${response.status}`);const blob = await response.blob();回應範例
HTTP/2 200 OK二進位內容(不顯示)。
錯誤
| 狀態碼 | 代碼 | 意義 |
|---|---|---|
400 | invalid_request | 路徑或查詢中的 ID 格式錯誤。 |
404 | not_found | 未知的地區或紀錄。 |
413 | body_too_large | JSON 請求本文超過 8 MiB。 |
429 | renderer_busy | 60 秒後重試。 |
502 | image_render_failed | 圖片或模型資源繪製失敗。 |
503 | renderer_unavailable | 圖片繪製器無法使用,可使用裝置模組或本機服務。 |
Live2D 截圖(指定資源服)
Section titled “Live2D 截圖(指定資源服)”/api/v1/servers/{server}/live2d/{id}/image.png 使用網頁的 Cubism 檢視器。POST data 接受 motion、expression、loop、time、parameters、parts、look、background、transform;儲存姿勢的 parameters/parts 可直接傳入,預設透明背景。
參數
| 名稱 | 位置 | 型別 | 說明 |
|---|---|---|---|
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 | 網站配色。 |
請求範例
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.jsonconst response = await fetch("https://haneoka.org/api/v1/servers/intl/live2d/001_casual_spring_01/image.png", { method: "POST", headers: { "Content-Type": "application/json", }, body: file,});if (!response.ok) throw new Error(`HTTP ${response.status}`);const blob = await response.blob();回應範例
HTTP/2 200 OK二進位內容(不顯示)。
錯誤
| 狀態碼 | 代碼 | 意義 |
|---|---|---|
400 | invalid_request | 路徑或查詢中的 ID 格式錯誤。 |
404 | not_found | 未知的地區或紀錄。 |
413 | body_too_large | JSON 請求本文超過 8 MiB。 |
429 | renderer_busy | 60 秒後重試。 |
502 | image_render_failed | 圖片或模型資源繪製失敗。 |
503 | renderer_unavailable | 圖片繪製器無法使用,可使用裝置模組或本機服務。 |
Spine 預設截圖
Section titled “Spine 預設截圖”/api/v1/spine/{id}/image.png 使用網頁的 Spine 舞台。POST data 接受 animation、skin、loop、playbackRate、time、background、transform,預設透明背景。
參數
| 名稱 | 位置 | 型別 | 說明 |
|---|---|---|---|
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 | 模型實體回傳的名稱。 |
請求範例
curl -sS -o output.bin "https://haneoka.org/api/v1/spine/01_mygo_01_cafe_01_anon/image.png?server=intl&time=0"const response = await fetch("https://haneoka.org/api/v1/spine/01_mygo_01_cafe_01_anon/image.png?server=intl&time=0");if (!response.ok) throw new Error(`HTTP ${response.status}`);const blob = await response.blob();回應範例
HTTP/2 200 OK二進位內容(不顯示)。
錯誤
| 狀態碼 | 代碼 | 意義 |
|---|---|---|
400 | invalid_request | 路徑或查詢中的 ID 格式錯誤。 |
404 | not_found | 未知的地區或紀錄。 |
413 | body_too_large | JSON 請求本文超過 8 MiB。 |
429 | renderer_busy | 60 秒後重試。 |
502 | image_render_failed | 圖片或模型資源繪製失敗。 |
503 | renderer_unavailable | 圖片繪製器無法使用,可使用裝置模組或本機服務。 |
Spine 截圖
Section titled “Spine 截圖”/api/v1/spine/{id}/image.png 使用網頁的 Spine 舞台。POST data 接受 animation、skin、loop、playbackRate、time、background、transform,預設透明背景。
參數
| 名稱 | 位置 | 型別 | 說明 |
|---|---|---|---|
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 | 網站配色。 |
請求範例
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.jsonconst response = await fetch("https://haneoka.org/api/v1/spine/01_mygo_01_cafe_01_anon/image.png", { method: "POST", headers: { "Content-Type": "application/json", }, body: file,});if (!response.ok) throw new Error(`HTTP ${response.status}`);const blob = await response.blob();回應範例
HTTP/2 200 OK二進位內容(不顯示)。
錯誤
| 狀態碼 | 代碼 | 意義 |
|---|---|---|
400 | invalid_request | 路徑或查詢中的 ID 格式錯誤。 |
404 | not_found | 未知的地區或紀錄。 |
413 | body_too_large | JSON 請求本文超過 8 MiB。 |
429 | renderer_busy | 60 秒後重試。 |
502 | image_render_failed | 圖片或模型資源繪製失敗。 |
503 | renderer_unavailable | 圖片繪製器無法使用,可使用裝置模組或本機服務。 |
Spine 預設截圖(指定資源服)
Section titled “Spine 預設截圖(指定資源服)”/api/v1/servers/{server}/spine/{id}/image.png 使用網頁的 Spine 舞台。POST data 接受 animation、skin、loop、playbackRate、time、background、transform,預設透明背景。
參數
| 名稱 | 位置 | 型別 | 說明 |
|---|---|---|---|
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 | 模型實體回傳的名稱。 |
請求範例
curl -sS -o output.bin "https://haneoka.org/api/v1/servers/intl/spine/01_mygo_01_cafe_01_anon/image.png?time=0"const response = await fetch("https://haneoka.org/api/v1/servers/intl/spine/01_mygo_01_cafe_01_anon/image.png?time=0");if (!response.ok) throw new Error(`HTTP ${response.status}`);const blob = await response.blob();回應範例
HTTP/2 200 OK二進位內容(不顯示)。
錯誤
| 狀態碼 | 代碼 | 意義 |
|---|---|---|
400 | invalid_request | 路徑或查詢中的 ID 格式錯誤。 |
404 | not_found | 未知的地區或紀錄。 |
413 | body_too_large | JSON 請求本文超過 8 MiB。 |
429 | renderer_busy | 60 秒後重試。 |
502 | image_render_failed | 圖片或模型資源繪製失敗。 |
503 | renderer_unavailable | 圖片繪製器無法使用,可使用裝置模組或本機服務。 |
Spine 截圖(指定資源服)
Section titled “Spine 截圖(指定資源服)”/api/v1/servers/{server}/spine/{id}/image.png 使用網頁的 Spine 舞台。POST data 接受 animation、skin、loop、playbackRate、time、background、transform,預設透明背景。
參數
| 名稱 | 位置 | 型別 | 說明 |
|---|---|---|---|
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 | 網站配色。 |
請求範例
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.jsonconst response = await fetch("https://haneoka.org/api/v1/servers/intl/spine/01_mygo_01_cafe_01_anon/image.png", { method: "POST", headers: { "Content-Type": "application/json", }, body: file,});if (!response.ok) throw new Error(`HTTP ${response.status}`);const blob = await response.blob();回應範例
HTTP/2 200 OK二進位內容(不顯示)。
錯誤
| 狀態碼 | 代碼 | 意義 |
|---|---|---|
400 | invalid_request | 路徑或查詢中的 ID 格式錯誤。 |
404 | not_found | 未知的地區或紀錄。 |
413 | body_too_large | JSON 請求本文超過 8 MiB。 |
429 | renderer_busy | 60 秒後重試。 |
502 | image_render_failed | 圖片或模型資源繪製失敗。 |
503 | renderer_unavailable | 圖片繪製器無法使用,可使用裝置模組或本機服務。 |