Skip to main content
Referensi Open API Adventure

Referensi API HappyOyster-Adventure-Query Travel Artifacts

Kueri rekaman asli dan tiga varian komposit dari Adventure Travel yang telah selesai. Untuk distribusi eksternal, withInstructionAndWatermark direkomendasikan.

Cakupan

Kueri rekaman asli dan tiga varian komposit dari Adventure Travel yang telah selesai. Dalam Adventure, withInstruction berarti varian overlay interaksi eksplorasi, bukan varian subtitle instruksi teks. Untuk distribusi eksternal, withInstructionAndWatermark direkomendasikan. Sebelum memanggil, pastikan hal berikut:
  • Autentikasi: Hanya API Key utama yang didukung; API Key sementara tidak dapat digunakan (kode kesalahan 403003).
  • Prasyarat: Status Travel adalah completed. URL asli yang tersedia merupakan prasyarat untuk mengembalikan respons artifacts. Konfirmasikan melalui Query Travel Status.
  • Pemanggil: Dipanggil oleh server Anda.

Permintaan HTTP

  • Singapore
  • Tiongkok (Beijing)
  • AS (Virginia)
GET https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v2/apps/happyoyster-1.0-adventure/openapi/v1/travels/artifactsGanti {WorkspaceId} dengan ID Workspace Anda yang sebenarnya.

Parameter permintaan

  • Kueri artifacts Travel
curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v2/apps/happyoyster-1.0-adventure/openapi/v1/travels/artifacts?encryptedTravelId={encryptedTravelId}' \
    -H "Authorization: Bearer $DASHSCOPE_API_KEY"
Authorization string (Wajib)Autentikasi API Key. Hanya API Key utama yang didukung; dimulai dengan sk-, misalnya sk-xxx. Biasanya dikonfigurasi sebagai variabel lingkungan $DASHSCOPE_API_KEY. API Key sementara (dimulai dengan st-) akan mengembalikan 403003.
Parameter kueri
encryptedTravelId string (Wajib)ID Travel terenkripsi Adventure dengan status completed. Dikembalikan oleh Masuk Travel.

Parameter respons

  • Keempat artifacts siap
  • Komposisi masih diproses
{
    "code": 0,
    "message": null,
    "data": {
        "encryptedTravelId": "trvl_a1b2****",
        "composeStatus": "ready",
        "video": {
            "original": {
                "url": "https://cdn.happyoyster.com/exports/trvl_a1b2c3d4e5f6_raw.mp4?v=2",
                "status": "ready",
                "resolution": "720p",
                "durationSec": 90
            },
            "withWatermark": {
                "url": "https://cdn.happyoyster.com/exports/trvl_a1b2c3d4e5f6_wm.mp4?v=2",
                "status": "ready",
                "resolution": null,
                "durationSec": 90
            },
            "withInstruction": {
                "url": "https://cdn.happyoyster.com/exports/trvl_a1b2c3d4e5f6_overlay.mp4?v=2",
                "status": "ready",
                "resolution": null,
                "durationSec": 90
            },
            "withInstructionAndWatermark": {
                "url": "https://cdn.happyoyster.com/exports/trvl_a1b2c3d4e5f6_all.mp4?v=2",
                "status": "ready",
                "resolution": null,
                "durationSec": 90
            }
        }
    }
}
code integerKode pengembalian. 0 berarti berhasil; bukan nol adalah kode kesalahan.
message stringPesan kesalahan. null jika berhasil.
data objectData respons. null jika gagal.

Properti

encryptedTravelId stringID Travel Terenkripsi.composeStatus stringStatus agregat dari tiga varian komposit:
  • ready: withWatermark, withInstruction, dan withInstructionAndWatermark semuanya ready
  • partial: setidaknya satu varian komposit adalah ready, tetapi tidak semuanya
  • processing: none dari tiga varian komposit adalah ready
Ini hanya mengagregasi tiga varian komposit dan tidak mencakup original.video objectEmpat varian tetap dari video utama. Setiap item berisi url, status, resolution, dan durationSec.
  • original: rekaman asli; representasi 720p dikembalikan secara prioritas jika tersedia
  • withWatermark: varian komposit khusus watermark
  • withInstruction: khusus varian komposit overlay interaksi eksplorasi (bukan varian subtitle instruksi teks)
  • withInstructionAndWatermark: varian komposit overlay interaksi eksplorasi + watermark, direkomendasikan untuk distribusi eksternal
video.*.url stringURL unduhan; null saat processing atau unavailable.video.*.status stringStatus per item:
  • ready: siap, url dapat diakses
  • processing: masih melakukan kompositing, url=null
  • unavailable: kompositing gagal atau URL tidak tersedia untuk sementara, url=null
video.*.resolution string"720p" saat original cocok dengan 720p; jika tidak, nilainya mungkin null.video.*.durationSec integerDurasi video yang diparsing secara seragam dalam detik; jika dapat diparsing, semua varian ready akan membawa nilai ini. Nilainya mungkin null saat processing / unavailable atau saat durasi belum dapat diparsing.

Status prasyarat dan catatan pemanggilan

  • Ketika Travel tidak completed, tidak ada, bukan milik Anda atau bukan Adventure, atau aslinya belum tersedia, maka 404000 akan dikembalikan; materi asli merupakan gerbang utama bagi seluruh endpoint.
  • Klien dapat melakukan polling pada interval terkendali sementara composeStatus != ready.
  • Jangan menafsirkan withInstruction sebagai subtitle teks pengarahan; dalam Adventure, ini adalah overlay interaksi eksplorasi.
  • Untuk pengiriman eksternal, baca video.withInstructionAndWatermark; jika bisnis Anda hanya memerlukan versi asli, lanjutkan membaca video.original.url.
  • Keempat varian video memiliki hasil parsing durasi yang sama, sehingga dalam satu respons, varian yang siap dengan durasi yang dapat di-parse akan mengembalikan nilai durationSec yang konsisten.
  • Travel yang diakhiri oleh TRAVEL_NO_STREAM_AUTO_END berstatus failed dan tidak menghasilkan artefak yang dapat dikueri.

Kode kesalahan

Jika pemanggilan model gagal dan mengembalikan kesalahan, lihat Kode Kesalahan HappyOyster untuk menyelesaikannya.

Langkah selanjutnya

Pembuatan Gambar
  • FAQ
Video Generation
Audio
  • Pembuatan audio
Realtime API
Penyematan Teks
TokenPlan
Model production