API Documentation

WilayahID API — 1.0.0

GET
/

Health check

Public
GET
/v1/wilayah

List/filter wilayah (single table)

Public
GET
/v1/provinces

List provinces

Public
GET
/v1/regencies

List regencies/cities

Public
GET
/v1/regencies/{kode}

Get regency detail by kode

Public
POST
/admin/auth/login

Admin login (JWT)

Admin Auth
GET
/admin/tokens

List API tokens

Admin Tokens
POST
/admin/tokens

Create API token (plaintext returned once)

Admin Tokens
POST
/admin/tokens/{id}/revoke

Revoke API token

Admin Tokens
GET
/admin/usage/daily

Daily usage rows

Admin Usage
GET
/admin/usage/summary/tokens

Usage summary by token

Admin Usage
GET
/admin/usage/summary/endpoints

Usage summary by endpoint

Admin Usage
GET
/admin/upgrade-requests

List all upgrade requests

Admin Upgrade Requests
POST
/admin/upgrade-requests/{id}/approve

Approve upgrade request

Admin Upgrade Requests
POST
/admin/upgrade-requests/{id}/reject

Reject upgrade request

Admin Upgrade Requests
GET
/admin/developers

List all developers with active plan

Admin Developers
GET
/admin/plans

List all plans

Admin Plans
POST
/auth/register

Register developer (self-serve)

Auth
POST
/auth/verify-email

Verify email and get free-tier API token

Auth
POST
/auth/login

Developer login (JWT)

Auth
POST
/auth/forgot-password

Request password reset link (always 200)

Auth
POST
/auth/reset-password

Reset password with token

Auth
GET
/developer/me

Get developer profile + active plan

Developer
GET
/developer/tokens

List own API tokens

Developer
POST
/developer/tokens

Create new API token (enforce plan max_tokens)

Developer
POST
/developer/tokens/{id}/revoke

Revoke own API token

Developer
GET
/developer/usage

Usage summary for own tokens

Developer
GET
/developer/upgrade-requests

List own upgrade requests

Developer
POST
/developer/upgrade-requests

Submit upgrade request

Developer