kirem.coDokumentasi API
Dokumentasi/Media/Mengunduh Media (Download)
Media

Mengunduh Media (Download)

Ringkasan Teknis (TL;DR)

Mengunduh konten biner file media dari server Meta via API GET /v1/media/:media_id/download.

#media#download#stream

Mengunduh Media (Download)

Endpoint ini mengembalikan konten biner mentah dari berkas media yang tersimpan di server Meta. Gunakan endpoint ini untuk menyimpan media yang dikirim pelanggan ke penyimpanan lokal Anda secara langsung sebagai file.


🛜 Endpoint

GET /v1/media/:media_id/download


📋 Parameter

Endpoint ini tidak memerlukan query parameter tambahan. Cukup sertakan media_id pada path URL dan header Authorization.


📥 Cara Kerja

Server akan mengembalikan data biner file mentah dengan header Content-Type yang sesuai dengan tipe asli file (misalnya image/png, video/mp4, application/pdf). Response bukan JSON — client Anda harus menangani response sebagai binary stream.


🚦 Contoh cURL Request (simpan ke file)

curl -X GET "https://api.kirem.co/v1/media/18471948194819/download" \
  -H "Authorization: Bearer kirem_live_xxx" \
  --output downloaded_image.png

🚦 Contoh Kode (Node.js — stream ke file)

const axios = require('axios');
const fs = require('fs');

axios.get('https://api.kirem.co/v1/media/18471948194819/download', {
  headers: { 'Authorization': 'Bearer kirem_live_xxx' },
  responseType: 'stream'
}).then(res => {
  res.data.pipe(fs.createWriteStream('downloaded_image.png'));
  console.log('File berhasil disimpan!');
});

🚦 Contoh Kode (Go — io.Copy ke file)

package main

import (
	"fmt"
	"io"
	"net/http"
	"os"
)

func main() {
	url := "https://api.kirem.co/v1/media/18471948194819/download"
	req, _ := http.NewRequest("GET", url, nil)
	req.Header.Set("Authorization", "Bearer kirem_live_xxx")

	client := &http.Client{}
	resp, _ := client.Do(req)
	defer resp.Body.Close()

	file, _ := os.Create("downloaded_image.png")
	defer file.Close()
	io.Copy(file, resp.Body)
	fmt.Println("File berhasil disimpan!")
}

🚦 Contoh Kode (PHP — file_put_contents)

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://api.kirem.co/v1/media/18471948194819/download');
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Bearer kirem_live_xxx']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($ch);
curl_close($ch);

file_put_contents('downloaded_image.png', $data);
echo "File berhasil disimpan!";

✅ Respons Sukses (200 OK)

Server mengembalikan data biner mentah (bukan JSON) dengan header Content-Type sesuai tipe file:

Tipe File Content-Type Header
Gambar PNG image/png
Gambar JPEG image/jpeg
Video MP4 video/mp4
Dokumen PDF application/pdf
Audio OGG audio/ogg

⚠️ Catatan Penting

  • Response body adalah data biner mentah. Pastikan client Anda tidak mencoba mem-parse response sebagai JSON.
  • Jika media_id tidak ditemukan atau sudah dihapus, API akan mengembalikan error 404 Not Found.
  • Gunakan endpoint Get Media Metadata terlebih dahulu jika Anda perlu mengetahui tipe file atau ukuran sebelum mengunduh.

Butuh bantuan integrasi lanjutan?

Hubungi tim developer Kirem melalui tiket bantuan.

Buka Tiket Bantuan