Entwicklerdokumentation
Indonesische Daten- & Dokument-APIs, startklar in Minuten
Parse NIK, KK, Kennzeichen und NPWP, schlage Regionen nach, verarbeite PDFs und fasse Texte zusammen – über eine REST-API oder als Tools für deinen KI-Agenten per MCP.
- Base-URL
- https://api.bitaloka.io
- Format
- JSON rein · JSON oder Dateien raus
- Zugang
- Offen während der Preview · API-Keys folgen bald
Dein erster Aufruf — Kein SDK, kein Setup. Anfrage senden, JSON zurückbekommen.
curl -sS "https://api.bitaloka.io/v1/nik/3171014501900001" \
-H "X-API-Key: $BITALOKA_API_KEY" \
--fail-with-body const apiKey = process.env.BITALOKA_API_KEY ?? ''
const res = await fetch("https://api.bitaloka.io/v1/nik/3171014501900001", {
headers: { 'X-API-Key': apiKey },
})
if (!res.ok) throw new Error(`HTTP ${res.status}: ${await res.text()}`)
const data = await res.json()
console.log(data) import os
import requests
API_KEY = os.environ.get("BITALOKA_API_KEY", "")
res = requests.get(
"https://api.bitaloka.io/v1/nik/3171014501900001",
headers={"X-API-Key": API_KEY},
timeout=30,
)
res.raise_for_status()
print(res.json()) <?php
$ch = curl_init('https://api.bitaloka.io/v1/nik/3171014501900001');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['X-API-Key: ' . getenv('BITALOKA_API_KEY')],
]);
$body = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);
if ($body === false || $status >= 400) {
throw new RuntimeException("HTTP $status: $body");
}
print_r(json_decode($body, true)); package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.bitaloka.io/v1/nik/3171014501900001", nil)
check(err)
req.Header.Set("X-API-Key", os.Getenv("BITALOKA_API_KEY"))
res, err := http.DefaultClient.Do(req)
check(err)
defer res.Body.Close()
body, err := io.ReadAll(res.Body)
check(err)
if res.StatusCode >= 400 {
panic(fmt.Sprintf("HTTP %d: %s", res.StatusCode, body))
}
fmt.Println(string(body))
}
func check(err error) {
if err != nil {
panic(err)
}
} {
"valid": true,
"input": "3171014501900001",
"normalized": "3171014501900001",
"gender": "P",
"birthDate": {
"day": 5,
"month": 1,
"yearTwoDigit": 90,
"yearCandidates": [
1990,
2090
],
"yearResolved": 1990,
"yearIsAmbiguous": false
},
"region": {
"province": {
"code": "31",
"name": "Daerah Khusus Ibukota Jakarta"
},
"regency": {
"code": "3171",
"name": "Kota Administrasi Jakarta Pusat"
},
"district": {
"code": "317101",
"name": "Gambir"
}
},
"serial": "0001",
"genderConsistent": false,
"summary": "Perempuan, lahir 5 Januari 1990, Gambir, Kota Administrasi Jakarta Pusat, Daerah Khusus Ibukota Jakarta",
"errors": [],
"warnings": [
{
"code": "GENDER_MISMATCH",
"message": "Gender from birth-day offset does not match serial parity (last digit). Possible data-entry error."
}
]
} Wähle deinen Weg
Alle Dienste
22 Dienste unter einer Base-URL. Filtere nach Kategorie oder suche.
-
KTP-Parser
GET
/v1/nik/{nik}Parst eine indonesische NIK (KTP-Nummer) in Geburtsort, Geburtsdatum, Geschlecht und Region.
Parsing -
KK-Parser
GET
/v1/kk/{kk}Parst eine Kartu-Keluarga-Nummer (Familienkarte) in ihre Struktur.
Parsing -
STNK-Parser
GET
/v1/plate/{plate}Parst ein Kfz-Kennzeichen (STNK) in Region und Zulassungsdaten.
Parsing -
NPWP-Parser
GET
/v1/npwp/{npwp}Validiert und parst eine NPWP-Steuernummer inklusive Prüfziffer.
Parsing -
Regionale Daten
GET
/v1/region/{code}Provinz, Stadt/Regierungsbezirk, Bezirk und Dorf abfragen.
Suche -
Batch parse
POST
/v1/batchParse up to 100 NIK, KK, plate, NPWP or region values in one request.
Parsing -
PDF info
POST
/v1/pdf/infoRead page count, size and metadata of a PDF.
Organisieren -
PDF zusammenführen
POST
/v1/pdf/mergeMehrere PDFs zu einem zusammenfügen.
Organisieren -
PDF teilen
POST
/v1/pdf/splitPDF in eine Datei pro Seite aufteilen.
Organisieren -
Seiten extrahieren
POST
/v1/pdf/extractAusgewählte Seiten als neues PDF extrahieren.
Organisieren -
Seiten entfernen
POST
/v1/pdf/removeAusgewählte Seiten aus einem PDF entfernen.
Organisieren -
PDF organisieren
POST
/v1/pdf/organizeSeiten neu anordnen, drehen oder löschen.
Organisieren -
PDF drehen
POST
/v1/pdf/rotateAlle Seiten um 90° drehen.
Organisieren -
Wasserzeichen
POST
/v1/pdf/watermarkAuf jeder Seite ein Text-Wasserzeichen einprägen.
Organisieren -
Seitenzahlen
POST
/v1/pdf/pagenumbersSeitenzahlen zu einem PDF hinzufügen.
Organisieren -
PDF komprimieren
POST
/v1/pdf/compressDateigröße reduzieren (optimieren + Bilder verkleinern).
Konvertierung -
JPG zu PDF
POST
/v1/pdf/from-imagesKombiniert JPG/PNG-Bilder zu einem PDF.
Konvertierung -
PDF reparieren
POST
/v1/pdf/repairRepariert ein beschädigtes PDF.
Konvertierung -
PDF schützen
POST
/v1/pdf/protectPDF mit einem Passwort verschlüsseln.
Sicherheit -
PDF entsperren
POST
/v1/pdf/unlockPasswort aus einem PDF entfernen.
Sicherheit -
KI-Zusammenfassung
POST
/v1/ai/summaryFasst lange Texte mit kostenloser DeepSeek-KI zusammen.
KI -
KI-Übersetzung
POST
/v1/ai/translateÜbersetzt Text in viele Sprachen.
KI
Kein Dienst entspricht deiner Suche.