All Products
Search
Document Center

Seri Qoder CN:Files and Mounts

Last Updated:Jun 06, 2026

API Files memungkinkan Anda menyediakan konteks ke dalam Session—seperti repositori kode, konfigurasi, dokumen referensi, dan sebagainya. Agent dapat membaca file-file ini untuk memahami tugas.

Alur Kerja

POST /files — unggah konten biner dan tentukan purpose.

POST /sessions/{session_id}/resources — sambungkan file yang diunggah ke Session tersebut.

Agent membaca isi file selama Session berlangsung dan menyelesaikan tugas.

Unggah File

POST https://api.qoder.com.cn/api/v1/cloud/files
Content-Type: multipart/form-data

Parameter

Field Type Required Description
file binary Yes Konten file
purpose string Yes Tujuan file (lihat tabel)
filename string No Nama file kustom

Nilai Tujuan

Nilai Makna Produsen Dapat Diunduh
user_upload File input yang diunggah pengguna User Tidak
tool_output File yang dihasilkan oleh eksekusi tool Agent/tool Ya
skill_output File yang dihasilkan oleh Skill Agent/Skill Ya
session_resource File resource dengan cakupan session User/system Tidak
agent_output File output akhir Agent Agent Tidak

Catatan

Hanya file tool_output dan skill_output yang dapat diunduh melalui titik akhir /content. Tujuan lainnya hanya untuk penggunaan internal Agent.

Contoh Pengunggahan curl

curl -X POST https://api.qoder.com.cn/api/v1/cloud/files \
  -H "Authorization: Bearer $QODER_PAT" \
  -F "file=@./src/main.py" \
  -F "purpose=user_upload"

Respons:

{
  "file_id": "file_019e6a18dc0978e9a2104c9b269748ac",
  "filename": "main.py",
  "purpose": "user_upload",
  "size_bytes": 4096,
  "metadata": {},
  "mime_type": "text/plain",
  "status": "ready",
  "created_at": "2026-05-01T10:00:00Z",
  "updated_at": "2026-05-01T10:00:00Z"
}

Pengunggahan beberapa file:

# Unggah satu per satu
curl -X POST https://api.qoder.com.cn/api/v1/cloud/files \
  -H "Authorization: Bearer $QODER_PAT" \
  -F "file=@./config.yaml" \
  -F "purpose=user_upload"

curl -X POST https://api.qoder.com.cn/api/v1/cloud/files \
  -H "Authorization: Bearer $QODER_PAT" \
  -F "file=@./requirements.txt" \
  -F "purpose=user_upload"

Kaitkan pada Sesi

Setelah mengunggah, gunakan Resources API untuk memasang file pada Session tertentu:

POST https://api.qoder.com.cn/api/v1/cloud/sessions/{session_id}/resources

Badan permintaan — bungkus entri dalam array resources, yang juga mendukung pemasangan batch:

{
  "resources": [
    {
      "type": "file",
      "file_id": "file_abc123"
    }
  ]
}

Contoh Mount curl

curl -X POST https://api.qoder.com.cn/api/v1/cloud/sessions/sess_abc123/resources \
  -H "Authorization: Bearer $QODER_PAT" \
  -H "Content-Type: application/json" \
  -d '{
    "resources": [
      {"type": "file", "file_id": "file_abc123"}
    ]
  }'

Me-mount beberapa file dalam satu permintaan:

curl -X POST https://api.qoder.com.cn/api/v1/cloud/sessions/sess_abc123/resources \
  -H "Authorization: Bearer $QODER_PAT" \
  -H "Content-Type: application/json" \
  -d '{
    "resources": [
      {"type": "file", "file_id": "file_abc123"},
      {"type": "file", "file_id": "file_def456"},
      {"type": "file", "file_id": "file_ghi789"}
    ]
  }'

Unduh File

Hanya file tool_output dan skill_output yang dapat diunduh:

curl https://api.qoder.com.cn/api/v1/cloud/files/file_abc123/content \
  -H "Authorization: Bearer $QODER_PAT" \
  -o output.txt

Untuk tujuan lain, permintaan ke /content akan mengembalikan 403 Forbidden.

Periksa Metadata File

curl https://api.qoder.com.cn/api/v1/cloud/files/file_abc123 \
  -H "Authorization: Bearer $QODER_PAT"

Daftar File

curl "https://api.qoder.com.cn/api/v1/cloud/files?purpose=user_upload" \
  -H "Authorization: Bearer $QODER_PAT"

Pemfilteran berdasarkan purpose didukung.

Contoh Menyeluruh

# 1. Unggah file sumber
FILE_ID=$(curl -s -X POST https://api.qoder.com.cn/api/v1/cloud/files \
  -H "Authorization: Bearer $QODER_PAT" \
  -F "file=@./app.py" \
  -F "purpose=user_upload" | jq -r '.file_id')

echo "Uploaded: $FILE_ID"

# 2. Buat Sesi
SESSION_ID=$(curl -s -X POST https://api.qoder.com.cn/api/v1/cloud/sessions \
  -H "Authorization: Bearer $QODER_PAT" \
  -H "Content-Type: application/json" \
  -d '{"agent": "agent_abc123"}' | jq -r '.id')

# 3. Pasang file pada Sesi
curl -X POST "https://api.qoder.com.cn/api/v1/cloud/sessions/$SESSION_ID/resources" \
  -H "Authorization: Bearer $QODER_PAT" \
  -H "Content-Type: application/json" \
  -d "{\"resources\": [{\"type\": \"file\", \"file_id\": \"$FILE_ID\"}]}"

# 4. Kirim Tugas — Agen dapat mereferensikan file yang dipasang
curl -X POST "https://api.qoder.com.cn/api/v1/cloud/sessions/$SESSION_ID/events" \
  -H "Authorization: Bearer $QODER_PAT" \
  -H "Content-Type: application/json" \
  -d '{
    "events": [
      {"type": "user.message", "content": [{"type": "text", "text": "Review app.py and fix the bugs."}]}
    ]
  }'

Tanya Jawab

T: Berapa lama file yang diunggah disimpan? J: File berbagi siklus hidup dengan sumber daya induknya (Agent atau Session). Saat Session dihapus, file terkait akan dibersihkan.

T: Dapatkah saya menyambungkan file saat membuat Sesi? J: Saat ini, hal ini memerlukan dua langkah: unggah, lalu pasang. Operasi gabungan mungkin akan ditambahkan nanti.

T: Mengapa saya tidak dapat mengunduh file user_upload? J: Demi keamanan, unggahan mentah pengguna hanya tersedia untuk penggunaan internal Agent. Untuk mengekspor hasil, Agent harus menghasilkan file baru dengan tujuan tool_output atau skill_output.

T: Format file apa saja yang didukung? J: File biner apa pun diizinkan. File teks seperti kode, konfigurasi, dan dokumen memberikan pemahaman terbaik.