開発者向けドキュメント
インドネシアのデータ・ドキュメント API を数分で導入
NIK、KK、ナンバープレート、NPWP の解析、地域の検索、PDF の処理、テキストの要約を、単一の REST API で、または MCP 経由で AI エージェントのツールとして利用できます。
- ベース URL
- https://api.bitaloka.io
- 形式
- 入力は JSON・出力は JSON またはファイル
- アクセス
- プレビュー期間中は公開・API キーは近日対応
最初の呼び出し — SDK もセットアップも不要です。リクエストを送信すると JSON が返されます。
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."
}
]
} 目的を選択
すべてのサービス
1 つのベース URL で 22 個のサービスを提供しています。カテゴリで絞り込むか、検索してください。
-
KTP パーサー
GET
/v1/nik/{nik}インドネシアのNIK(KTP番号)を出生地、生年月日、性別、地域に分解します。
解析 -
KK パーサー
GET
/v1/kk/{kk}Kartu Keluarga(家族カード)番号を構造化します。
解析 -
STNK パーサー
GET
/v1/plate/{plate}車両ナンバー(STNK)を地域・登録情報に分解します。
解析 -
NPWP パーサー
GET
/v1/npwp/{npwp}NPWP納税番号をチェックサム付きで検証・分解します。
解析 -
地域データ
GET
/v1/region/{code}州、市/県、郡、村を検索します。
検索 -
Batch parse
POST
/v1/batchParse up to 100 NIK, KK, plate, NPWP or region values in one request.
解析 -
PDF info
POST
/v1/pdf/infoRead page count, size and metadata of a PDF.
整理 -
PDF を結合
POST
/v1/pdf/merge複数の PDF を 1 つに結合します。
整理 -
PDF を分割
POST
/v1/pdf/splitPDF をページごとに分割します。
整理 -
ページを抽出
POST
/v1/pdf/extract選択したページを新しい PDF に抽出します。
整理 -
ページを削除
POST
/v1/pdf/remove選択したページを PDF から削除します。
整理 -
PDF 整理
POST
/v1/pdf/organizeページの並べ替え・回転・削除。
整理 -
PDF を回転
POST
/v1/pdf/rotate全ページを 90° 回転します。
整理 -
透かし
POST
/v1/pdf/watermark全ページにテキスト透かしを押します。
整理 -
ページ番号
POST
/v1/pdf/pagenumbersPDF にページ番号を追加します。
整理 -
PDFを圧縮
POST
/v1/pdf/compressファイルサイズを縮小します(最適化+画像縮小)。
変換 -
JPG → PDF
POST
/v1/pdf/from-imagesJPG/PNG画像を1つのPDFにまとめます。
変換 -
PDF 修復
POST
/v1/pdf/repair破損したPDFを修復します。
変換 -
PDFを保護
POST
/v1/pdf/protectパスワードで PDF を暗号化します。
セキュリティ -
PDFのロック解除
POST
/v1/pdf/unlockPDF からパスワードを解除します。
セキュリティ -
AI要約
POST
/v1/ai/summary無料のDeepSeek AIで長文を要約します。
AI -
AI翻訳
POST
/v1/ai/translateテキストを多言語に翻訳します。
AI
検索条件に一致するサービスはありません。