มีเดีย & งาน
แนะนำ: Gommo public API — https://v2.api.gommo.net สำหรับ models, jobs, upload
งานมีเดียเป็น async: create → poll → เสร็จ (หรือล้มเหลว / timeout) อ่าน วงจร request · ข้อผิดพลาดที่พบบ่อย · Tier A ไม่มี webhook งาน — Webhooks
flowchart LR
A[POST /ai/models] --> B[POST /ai/jobs/...]
B --> C{Poll POST /ai/jobs/id?media=...}
C -->|result_url| D[เสร็จ]
C -->|รอ| C
C -->|ล้มเหลวหรือ 80 ครั้ง| E[จบ]Poll interval: 3500 ms สูงสุด 80 ครั้ง ส่ง domain ในทุก form body (โดเมนลงทะเบียน — อย่าคัดลอกจาก docs) Auth: Authorization: Bearer <access_token>
แผนที่ endpoint
| การดำเนินการ | URL |
|---|---|
| ลิสต์โมเดล | POST https://v2.api.gommo.net/ai/models?type={type} |
| สร้างงาน | POST https://v2.api.gommo.net/ai/jobs/{type}/{model_id} |
| Poll งาน | POST https://v2.api.gommo.net/ai/jobs/{id}?media={media} |
ประเภทงาน: image, video, tts, music, avatar-lipsync, image-upscale, remove-bg, video-upscale, video-vfx, video-subtitle, video-cut
Poll media: image | video | music
ลิสต์โมเดล
curl.exe -X POST "https://v2.api.gommo.net/ai/models?type=image" ^
-H "Authorization: Bearer %TOKEN%" ^
-H "Content-Type: application/x-www-form-urlencoded" ^
-d "type=image&domain=%REGISTRATION_DOMAIN%"$d = $env:GOMMO_API_DOMAIN; if (-not $d) { throw 'Set GOMMO_API_DOMAIN to the user registration domain (dealer)' }
$h = @{ Authorization = "Bearer $env:TOKEN" }
Invoke-RestMethod -Method POST `
-Uri "https://v2.api.gommo.net/ai/models?type=image" `
-Headers $h `
-ContentType "application/x-www-form-urlencoded" `
-Body "type=image&domain=$d"เลือก model / slug และ ratio, mode, resolution ที่อนุญาตจาก response — ห้ามเดา
สร้างงาน
ratio, mode, resolution, และ duration ต้อง ตรงกับแคตตาล็อกโมเดล
curl.exe -X POST "https://v2.api.gommo.net/ai/jobs/image/MODEL_ID" ^
-H "Authorization: Bearer %TOKEN%" ^
-H "Content-Type: application/x-www-form-urlencoded" ^
-d "domain=%REGISTRATION_DOMAIN%&project_id=default&prompt=Hello&ratio=RATIO_FROM_CATALOG"$d = $env:GOMMO_API_DOMAIN; if (-not $d) { throw 'Set GOMMO_API_DOMAIN to the user registration domain (dealer)' }
$form = "domain=$d&project_id=default&prompt=Hello&ratio=$ratio"
Invoke-RestMethod -Method POST `
-Uri "https://v2.api.gommo.net/ai/jobs/image/$slug" `
-Headers @{ Authorization = "Bearer $env:TOKEN" } `
-ContentType "application/x-www-form-urlencoded" -Body $formPoll งาน
ทำซ้ำทุก 3500 ms สูงสุด 80 ครั้ง:
curl.exe -X POST "https://v2.api.gommo.net/ai/jobs/JOB_ID?media=image" ^
-H "Authorization: Bearer %TOKEN%" ^
-H "Content-Type: application/x-www-form-urlencoded" ^
-d "domain=%REGISTRATION_DOMAIN%&project_id=default"$d = $env:GOMMO_API_DOMAIN; if (-not $d) { throw 'Set GOMMO_API_DOMAIN to the user registration domain (dealer)' }
Invoke-RestMethod -Method POST `
-Uri "https://v2.api.gommo.net/ai/jobs/$jobId?media=image" `
-Headers @{ Authorization = "Bearer $env:TOKEN" } `
-ContentType "application/x-www-form-urlencoded" `
-Body "domain=$d&project_id=default"เมื่อสำเร็จ: หา result_url / file_url ใน imageInfo, videoInfo หรือเทียบเท่าใน response
Self-host (operator เท่านั้น)
REST ทางเลือกเมื่อ deploy repo — Deploy → Self-host ขั้นสูง
รูปแบบ response
Gommo คืน JSON native (success, data, imageInfo / videoInfo, …)
