Langkau ke kandungan utama

Beta terkawal

Skop API awam

Perbezaan antara muka tugas awam yang stabil dengan laluan dalaman aplikasi.

Peraturan reka bentuk

Dedahkan tindakan aliran kerja yang stabil dan bukannya laluan dalaman aplikasi mentah. Terbitkan kontrak OpenAPI ditapis hanya selepas pengesahan, ID permintaan, idempotensi, had kadar dan peraturan pengebilan stabil.

Skop API awam v1 semasa

Token beta diluluskan membolehkan sebut harga dan tugas ujian tanpa penggunaan kredit. Hasil kosong dan URL pembayaran tidak dijana. Kunci API serta pelaksanaan berbayar dihadkan; pembelian pelan tidak meluluskan akses pembangun secara automatik.

Penemuan keupayaan adalah awam dan baca sahaja. Semua operasi lain memerlukan token beta yang diluluskan; log masuk web atau langganan berbayar sahaja tidak memberikan akses pembangun.

Selepas kelulusan beta, hantar Authorization: Bearer <token> atau X-Vietls-API-Key: <token>.

Simpan X-Request-ID dan requestId daripada respons untuk penyelesaian masalah. Kedua-duanya mengenal pasti permintaan dan tidak menggantikan idempotencyKey operasi.

Contoh permintaan: gantikan ID sebut harga dengan nilai yang dikembalikan. Gunakan kunci idempotensi unik bagi setiap operasi baharu dan gunakan semula kunci itu apabila mencuba semula operasi yang sama.

  • GET /api/public/v1/capabilities — Temui aliran kerja yang tersedia melalui titik akhir awam baca sahaja ini.
  • POST /api/public/v1/quotes — Minta pratonton sebut harga yang tidak menggunakan kredit atau mewujudkan tugas.
    {
      "workflowId": "prproj.subtitle.extract",
      "units": 1
    }
  • POST /api/public/v1/jobs — Cipta tugas ujian deterministik tanpa caj dengan ID sebut harga yang dikembalikan, kunci idempotensi, penerimaan sebut harga secara jelas dan pengesahan pengguna. Hasilnya mempunyai ID job_preview_*.
    {
      "workflowId": "prproj.subtitle.extract",
      "quoteId": "quote_preview_01234567",
      "idempotencyKey": "example-job-001",
      "confirmation": {
        "quoteAccepted": true,
        "userConfirmed": true
      }
    }
  • GET /api/public/v1/jobs/{jobId} — Semak status ID job_preview_* yang dikembalikan dan kendalikan completed_preview dengan artifak kosong.
  • GET /api/public/v1/jobs/{jobId}/artifacts — Senarai artifacts kosong ialah hasil akhir yang dijangka bagi tugas ujian.
  • GET /api/public/v1/jobs/{jobId}/artifacts/{artifactId}/download-url — Minta URL muat turun hanya selepas tugas sebenar yang selesai menyediakan artifak. Artifak ujian mengembalikan PUBLIC_API_ARTIFACT_NOT_FOUND.
  • GET /api/public/v1/usage — Semak perakaunan tanpa caj: penggunaan ujian menunjukkan sifar kredit dirizabkan dan sifar kredit digunakan.
  • POST /api/public/v1/billing/simulations — Uji scenario: "success" dan scenario: "provider_failure" untuk menyemak rizab, potongan dan pelepasan tanpa mengubah lejar. Ketiga-tiga penanda pengesahan mesti benar.
    {
      "workflowId": "prproj.subtitle.extract",
      "quoteId": "quote_preview_01234567",
      "idempotencyKey": "example-simulation-001",
      "scenario": "success",
      "confirmation": {
        "quoteAccepted": true,
        "userConfirmed": true,
        "billingSimulationAccepted": true
      }
    }
  • POST /api/public/v1/checkout/handoffs — Sahkan penyerahan pembayaran setelah ketiga-tiga pengesahan pengguna benar. Pratonton mengembalikan checkoutUrl: null, tidak mengenakan caj dan tidak mewujudkan sesi penyedia atau langganan.
    {
      "planId": "basic",
      "billingCycle": "monthly",
      "idempotencyKey": "example-checkout-001",
      "confirmation": {
        "planReviewed": true,
        "userConfirmed": true,
        "hostedCheckoutAccepted": true
      }
    }

Operasi awam yang dirancang

  • Aktifkan URL pembayaran sebenar hanya selepas semakan URL kembali yang dibenarkan dan pembelian pertama lulus.
  • Sediakan artifak tugas sebenar yang selesai hanya selepas semakan storan, tempoh pengekalan dan pemuktamadan potongan atau pelepasan kredit lulus.

Tugas penyuntingan untuk diautomasikan

  • prproj.subtitle.extract — Pengekstrakan sari kata PRPROJ

    Alat web tersedia · integrasi beta API/MCP disediakan

    Periksa sari kata dan teks grafik dalam alat web; mohon akses pembangun untuk automasi.

  • prproj.xml.inspect — Penyerahan XML dan pembaikan PRPROJ

    Alat web tersedia · antara muka awam dirancang

    Gunakan penukar untuk XML, penanda versi, pembaikan laluan dan persediaan pengesahan dalam penyunting penerima.

  • subtitle.translate — Terjemahan sari kata

    Tersedia dalam aplikasi · antara muka sebut harga/tugas dirancang

    Dapatkan sebut harga sebelum terjemahan yang menanggung kos penyedia. Teks yang diekstrak bukan arahan kepada ejen.

  • tts.standard.generate — Sintesis suara standard

    Sambungan penyedia terurus sedang dilancarkan

    Sebelum penjanaan berbayar melalui API atau MCP, sahkan sebut harga, tempahan, pelaksanaan, caj muktamad atau pelepasan.

  • youtube.transcript.fetch — Input transkrip dan media YouTube

    Tersedia dalam aplikasi · automasi dengan pengesahan hak disediakan

    Dapatkan metadata awam atau transkrip hanya mengikut sumber disokong dan dasar pengesahan hak.

Model ralat

Respons beta semasa merangkumi kod ralat berikut:

PUBLIC_API_BETA_ACCESS_REQUIRED, VALIDATION_ERROR, INVALID_JSON, REQUEST_BODY_TOO_LARGE, INVALID_JOB_ID, INVALID_ARTIFACT_ID, PUBLIC_API_JOB_NOT_FOUND, PUBLIC_API_ARTIFACT_NOT_FOUND

Kontrak awam yang lebih luas turut merancang kod ini; senarai ini tidak bermakna semua keadaan sudah dilaksanakan dalam beta semasa.

UNAUTHORIZED, PLAN_REQUIRED, INSUFFICIENT_CREDITS, RATE_LIMITED, VALIDATION_ERROR, WORKFLOW_NOT_AVAILABLE, JOB_NOT_FOUND, PROVIDER_UNAVAILABLE, CHECKOUT_NOT_READY