INAPROCAPI Gateway

Download File RUP (Rencana Umum Pengadaan)

Mengunduh file RUP dalam format Excel berdasarkan kriteria yang diberikan

POST
/rup/download-file
AuthorizationBearer <token>

In: header

lpse_idstring

ID LPSE (kode instansi/KL/PD)

tahuninteger

Tahun data RUP

Range2020 <= value <= 2030
bulan?integer

Bulan data (opsional, jika tidak diisi akan mengambil seluruh tahun)

Range1 <= value <= 12
formatstring

Format file yang diinginkan

Value in"excel" | "pdf" | "csv"
jenis_rup?string

Jenis RUP yang akan diunduh

Default"semua"
Value in"penyedia" | "swakelola" | "semua"

Response Body

curl -X POST "http://localhost:3000/api/mock/rup/download-file" \
  -H "Content-Type: application/json" \
  -d '{
    "lpse_id": "123",
    "tahun": 2024,
    "bulan": 6,
    "format": "excel",
    "jenis_rup": "penyedia"
  }'

{
  "status": "success",
  "message": "File RUP berhasil dibuat",
  "download_url": "https://api.inaproc.id/v1/files/download/rup_2024_123.xlsx",
  "file_info": {
    "filename": "rup_penyedia_2024_123.xlsx",
    "size": "2.5 MB",
    "total_records": 1250,
    "created_at": "2024-08-28T10:30:00Z",
    "expires_at": "2024-08-28T22:30:00Z"
  }
}

{
  "error": {
    "code": "INVALID_YEAR",
    "message": "Tahun yang Anda masukkan tidak valid",
    "details": [
      "Tahun harus antara 2020-2030"
    ]
  }
}

{
  "error": {
    "code": "INVALID_TOKEN",
    "message": "Token yang Anda gunakan tidak valid",
    "details": [
      "Silakan login ulang untuk mendapatkan token baru"
    ]
  }
}

{
  "error": {
    "code": "NO_ACCESS_TO_LPSE",
    "message": "Anda tidak memiliki akses ke LPSE ini",
    "details": [
      "Hubungi administrator untuk mendapatkan akses ke LPSE 123"
    ]
  }
}

{
  "error": {
    "code": "NO_DATA_FOUND",
    "message": "Tidak ada data RUP untuk kriteria yang diberikan",
    "details": [
      "Pastikan LPSE ID, tahun, dan bulan benar"
    ]
  }
}

{
  "error": {
    "code": "DOWNLOAD_LIMIT_EXCEEDED",
    "message": "Batas download per hari telah tercapai",
    "details": [
      "Maksimal 10 file per hari per user"
    ]
  }
}

{
  "error": {
    "code": "INTERNAL_SERVER_ERROR",
    "message": "Terjadi kesalahan pada server",
    "details": [
      "Silakan coba lagi beberapa saat"
    ]
  }
}