DocsKBLI

API KBLI

Akses data lengkap Klasifikasi Baku Lapangan Usaha Indonesia (KBLI) - kode klasifikasi kegiatan usaha yang wajib untuk pendaftaran perusahaan.

Ringkasan

Base URL:/api/v1/kbli
Total Data:1.500+ kode
Sumber Data:Badan Pusat Statistik (BPS)
Update:Tahunan (Perka BPS)

Apa itu KBLI?

KBLI (Klasifikasi Baku Lapangan Usaha Indonesia) adalah sistem pengkodean kegiatan ekonomi yang digunakan untuk mengklasifikasikan jenis usaha. KBLI wajib digunakan saat:

  • Mendaftarkan perusahaan baru di OSS (Online Single Submission)
  • Mengajukan izin usaha
  • Pelaporan statistik perusahaan
  • Penentuan tingkat risiko usaha untuk perizinan

Struktur Hierarki KBLI

KBLI memiliki 5 tingkat hierarki, dari yang paling umum hingga paling spesifik:

LevelNamaFormat KodeContoh
sectionKategori1 huruf (A-U)J - Informasi dan Komunikasi
divisionGolongan Pokok2 digit62 - Aktivitas Pemrograman
groupGolongan3 digit620 - Aktivitas Pemrograman
classSubgolongan4 digit6201 - Aktivitas Pemrograman Komputer
subclassKelompok5 digit62011 - Aktivitas Pemrograman Komputer

Penting untuk OSS

Saat mendaftarkan perusahaan di OSS, Anda harus memilih kode KBLI 5 digit (subclass). Kode 4 digit ke atas tidak dapat digunakan untuk pendaftaran.

Tingkat Risiko OSS

Setiap kode KBLI memiliki tingkat risiko yang menentukan jenis perizinan yang diperlukan:

Tingkat RisikoPerizinanDeskripsi
lowNIB sajaCukup dengan Nomor Induk Berusaha, langsung operasional
mediumNIB + Sertifikat StandarPerlu sertifikat standar dengan self-declare
highNIB + IzinPerlu izin dari kementerian/lembaga terkait

Endpoints

GET/api/v1/kbli

Mendapatkan daftar kode KBLI dengan pagination

Query Parameters

ParameterTipeDefaultDeskripsi
pageinteger1Nomor halaman untuk pagination
limitinteger50Jumlah data per halaman (maks: 100)
searchstring-Cari berdasarkan kode atau deskripsi
levelstring-Filter level: section, division, group, class, subclass

Contoh Request

curl -X GET "https://api.portaldata.id/api/v1/kbli?search=software&level=subclass" \
  -H "X-API-Key: YOUR_API_KEY"

Contoh Response

{
  "data": [
    {
      "code": "62011",
      "description": "Aktivitas pemrograman komputer",
      "descriptionEn": "Computer programming activities",
      "level": "subclass",
      "parentCode": "6201",
      "ossRiskLevel": "low"
    },
    {
      "code": "62021",
      "description": "Aktivitas konsultasi komputer dan manajemen fasilitas komputer",
      "descriptionEn": "Computer consultancy and computer facilities management activities",
      "level": "subclass",
      "parentCode": "6202",
      "ossRiskLevel": "low"
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 50,
    "total": 2,
    "totalPages": 1
  },
  "meta": {
    "source": "BPS",
    "apiVersion": "1.0.0",
    "regulationRef": "Perka BPS No. 2/2020",
    "riskLevel": "medium"
  },
  "disclaimer": "Reference data only. Not legal or tax advice."
}
GET/api/v1/kbli/:code

Mendapatkan detail kode KBLI beserta hierarkinya

Path Parameters

ParameterTipeDeskripsi
codestringKode KBLI (contoh: 62011, J)

Query Parameters

ParameterTipeDeskripsi
includestringData tambahan: parent, children

Contoh Request

curl -X GET "https://api.portaldata.id/api/v1/kbli/62011?include=parent" \
  -H "X-API-Key: YOUR_API_KEY"

Contoh Response

{
  "data": {
    "code": "62011",
    "description": "Aktivitas pemrograman komputer",
    "descriptionEn": "Computer programming activities",
    "level": "subclass",
    "parentCode": "6201",
    "ossRiskLevel": "low",
    "isicMappings": ["6201"],
    "parent": {
      "code": "6201",
      "description": "Aktivitas pemrograman komputer",
      "level": "class"
    }
  },
  "meta": {
    "source": "BPS",
    "apiVersion": "1.0.0",
    "regulationRef": "Perka BPS No. 2/2020"
  },
  "disclaimer": "Reference data only. Not legal or tax advice."
}

Penjelasan Field Response

FieldTipeDeskripsi
codestringKode KBLI (1-5 karakter)
descriptionstringDeskripsi kegiatan usaha dalam Bahasa Indonesia
descriptionEnstring | nullDeskripsi dalam Bahasa Inggris
levelenumTingkat hierarki: section, division, group, class, subclass
parentCodestring | nullKode induk (null untuk section)
ossRiskLevelenum | nullTingkat risiko OSS: low, medium, high
isicMappingsarrayKode ISIC (International Standard Industrial Classification) terkait
parentobject | undefinedData kode induk (jika include=parent)
childrenarray | undefinedDaftar kode anak (jika include=children)

Contoh Penggunaan

1. Pencarian KBLI untuk Pendaftaran Usaha

Mencari kode KBLI yang sesuai dengan jenis usaha

GET /api/v1/kbli?search=restoran&level=subclass

2. Melihat Semua Kategori KBLI

Menampilkan daftar kategori utama (section) KBLI

GET /api/v1/kbli?level=section

3. Navigasi Hierarki KBLI

Mendapatkan sub-kategori dari kategori tertentu

GET /api/v1/kbli/J?include=children

4. Cek Tingkat Risiko OSS

Melihat tingkat risiko perizinan untuk kode KBLI tertentu

GET /api/v1/kbli/56101

Contoh Kode Lengkap

JavaScript - Autocomplete KBLI
// Fungsi autocomplete untuk pencarian KBLI
async function searchKBLI(query) {
  if (query.length < 2) return [];

  const response = await fetch(
    `https://api.portaldata.id/api/v1/kbli?search=${encodeURIComponent(query)}&level=subclass&limit=10`,
    { headers: { 'X-API-Key': 'YOUR_API_KEY' } }
  );

  const { data } = await response.json();
  return data.map(item => ({
    code: item.code,
    description: item.description,
    riskLevel: item.ossRiskLevel
  }));
}

// Fungsi untuk mendapatkan hierarki lengkap
async function getKBLIHierarchy(code) {
  const response = await fetch(
    `https://api.portaldata.id/api/v1/kbli/${code}?include=parent`,
    { headers: { 'X-API-Key': 'YOUR_API_KEY' } }
  );

  const { data } = await response.json();

  // Bangun path hierarki
  const hierarchy = [data];
  let current = data;

  while (current.parent) {
    hierarchy.unshift(current.parent);
    // Fetch parent jika perlu data lebih lengkap
  }

  return hierarchy;
}

// Contoh penggunaan
const results = await searchKBLI('software');
console.log('Hasil pencarian:', results);
// Output:
// [
//   { code: '62011', description: 'Aktivitas pemrograman komputer', riskLevel: 'low' },
//   { code: '58201', description: 'Penerbitan piranti lunak', riskLevel: 'low' }
// ]
Python - Validasi dan Filter KBLI
import requests

API_KEY = 'YOUR_API_KEY'
BASE_URL = 'https://api.portaldata.id/api/v1'

def get_kbli_by_risk_level(risk_level, limit=100):
    """Mendapatkan daftar KBLI berdasarkan tingkat risiko"""
    all_codes = []
    page = 1

    while True:
        response = requests.get(
            f'{BASE_URL}/kbli',
            params={
                'level': 'subclass',
                'page': page,
                'limit': limit
            },
            headers={'X-API-Key': API_KEY}
        )
        data = response.json()

        # Filter berdasarkan risk level
        filtered = [
            code for code in data['data']
            if code.get('ossRiskLevel') == risk_level
        ]
        all_codes.extend(filtered)

        if page >= data['pagination']['totalPages']:
            break
        page += 1

    return all_codes

def validate_kbli_code(code):
    """Validasi apakah kode KBLI valid dan bisa digunakan di OSS"""
    response = requests.get(
        f'{BASE_URL}/kbli/{code}',
        headers={'X-API-Key': API_KEY}
    )

    if response.status_code == 404:
        return {'valid': False, 'error': 'Kode KBLI tidak ditemukan'}

    data = response.json()['data']

    if data['level'] != 'subclass':
        return {
            'valid': False,
            'error': f'Kode KBLI harus 5 digit (subclass), kode ini adalah {data["level"]}'
        }

    return {
        'valid': True,
        'code': data['code'],
        'description': data['description'],
        'riskLevel': data['ossRiskLevel']
    }

# Contoh penggunaan
print(validate_kbli_code('62011'))
# Output: {'valid': True, 'code': '62011', 'description': 'Aktivitas pemrograman komputer', 'riskLevel': 'low'}

print(validate_kbli_code('620'))
# Output: {'valid': False, 'error': 'Kode KBLI harus 5 digit (subclass), kode ini adalah group'}

Kode KBLI Populer

Berikut adalah beberapa kode KBLI yang sering digunakan:

KodeDeskripsiRisiko
62011Aktivitas pemrograman komputerlow
47111Perdagangan eceran berbagai macam barang yang utamanya makananlow
56101Restoranmedium
73100Periklananlow
70201Aktivitas konsultasi manajemenlow

Lihat Juga