# Dapodik Directory



The national school register kept by Kemendikdasmen: any school by its NPSN, and the count of every kind of school standing in one district.



## Dapodik School Lookup

One school's full official record — level, status, address, coordinates, accreditation, and founding decrees — by its eight-digit NPSN.

- Method: `GET`
- Path: `/v1/education/schools/{npsn}`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `npsn` | path segment | required | The school's NPSN — the eight-digit national identification number every school has. |
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/education/schools/%7Bnpsn%7D \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "npsn": "20205428",
    "name": "SD NEGERI KANANGASARI",
    "level": "SD",
    "level_group": "SD SEDERAJAT",
    "status": "NEGERI",
    "education_type": "PENDIDIKAN UMUM",
    "address": "KP. KANANGASARI RT.03 RW.02",
    "village": "KANANGASARI",
    "district": "KEC. CIKALONGWETAN",
    "regency": "KAB. BANDUNG BARAT",
    "province": "PROV. JAWA BARAT",
    "latitude": -6.7632,
    "longitude": 107.3989,
    "accreditation": "A",
    "phone": null,
    "email": "sdnkanangasari@gmail.com",
    "website": null,
    "founding_decree": "NO.12.TH.1979",
    "founding_date": "1979-11-12T00:00:00Z",
    "operational_decree": "NO.12.TH.1979",
    "operational_date": "1979-04-12T00:00:00Z",
    "data_updated_at": "2026-08-16T17:44:53Z"
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T04:05:00.000Z",
    "age_seconds": 3600,
    "next_update_at": "2026-08-21T04:05:00.000Z"
  }
}
```

## Dapodik School Statistics

How many schools of every kind — KB, TK, SD, SMP, SMA, SMK, SLB, and non-formal — stand in one district, straight from the national register.

- Method: `GET`
- Path: `/v1/education/school-statistics`

**Parameters**

| Name | Type | | Description |
|---|---|---|---|
| `district` | string | required | The six-digit Dapodik district (kecamatan) code — the same code the school lookup reports as its district register, not the Kemendagri one. |
| `max_age` | integer (seconds) | optional | Ask for data no older than this. Clamped to the product's own floor, so it can narrow the window but never force a refresh on every call. |

**Example request**

```bash
curl https://api.diraz.ae/v1/education/school-statistics \
  -H "Authorization: Bearer drz_live_…"
```

**Example response**

```json
{
  "data": {
    "district": "022314",
    "counts": {
      "kb": 22,
      "tk": 20,
      "tpa": 0,
      "sps": 49,
      "sd": 67,
      "smp": 28,
      "sma": 14,
      "smk": 7,
      "slb": 1,
      "dikmas": 4
    },
    "total": 212,
    "data_updated_at": "2026-08-16T17:44:53Z"
  },
  "meta": {
    "request_id": "req_7Q2fK4mZ",
    "as_of": "2026-08-20T04:05:00.000Z",
    "age_seconds": 3600,
    "next_update_at": "2026-08-21T04:05:00.000Z"
  }
}
```