PHPackages                             kubuslab/mpdn-api - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. kubuslab/mpdn-api

ActiveLibrary[API Development](/categories/api)

kubuslab/mpdn-api
=================

API Client untuk MPDN

0.0.1(4y ago)0675MITPHPPHP &gt;=7.2.5

Since Feb 9Pushed 3y ago1 watchersCompare

[ Source](https://github.com/kubuslab/mpdn-api)[ Packagist](https://packagist.org/packages/kubuslab/mpdn-api)[ RSS](/packages/kubuslab-mpdn-api/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (3)Versions (3)Used By (0)

MPDN/AMP-SR Client API
======================

[](#mpdnamp-sr-client-api)

Framework pencatatan data kematian Maternal dan Perinatal melalui MPDN/AMP-SR meliputi proses:

- Daftar Agregat Angka Kematian per Daerah
- Notifikasi Kematian (MPDN)
- Format kode dan Struktur Wilayah yang digunakan MPDN
- Daftar User per Fasilitas Pelayanan Kesehatan

Mencatat informasi pemberitahuan (notifikasi) kematian baik Maternal maupun Perinatal berupa:

- MATERNAL
    - Pelaporan Baru
    - Update Data
    - Anulir Data
    - Menandai Data Duplikat
    - Verifikasi Data
    - Finalisasi Data
- PERINATAL
    - Pelaporan Baru
    - Update Data
    - Anulir Data
    - Menandai Data Duplikat
    - Verifikasi Data
    - Finalisasi Data

Cara Penggunaan
---------------

[](#cara-penggunaan)

MPDN API mensyaratkan setiap koneksi menyertakan header `X-GLOBAL-KEY` dan `X-USER-KEY`. Dimana `X-GLOBAL-KEY` bersifat statis untuk tiap Aplikasi pengguna (SIKDA, SIMRS atau SIMPUS). Sementara `X-USER-KEY` mewakili API Key per user yang harus disesuaikan untuk setiap request.

> Sebagai contoh SIKDA/SIMPUS di Kabupaten A untuk dapat mengirimkan Informasi Kematian Maternal **atas nama Puskesmas XYZ**, maka saat mengirim request membuat data kematian baru **harus juga menyertakan API Key** yang dibuat atas nama Puskesmas XYZ.

Untuk dapat melihat daftar `X-USER-KEY` per user yang dimiliki oleh Aplikasi pengguna dapat diakses melalui Web Service `Organization::users`.

### 1. Instalasi

[](#1-instalasi)

Gunakan composer untuk menempelkan Library di project anda.

```
composer require kubuslab/mpdn-api
```

### 2. Inisialisasi

[](#2-inisialisasi)

Sebelum digunakan, library terlebih dahulu harus diinisialisasi secara sederhana dengan cara:

```
use MPDN;
$globalKey = 'example-global-key-123456789';
MPDN::prepare($globalKey, false);
```

**Parameter kedua** pada `MPDN::prepare()` untuk menentukan apakah anda menggunakan MPDN versi FULL(`true`) atau DEMO(`false`).

MPDN API menggunakan library Guzzle sebagai backend HTTP Client. Sehingga untuk konfigurasi spesifik terhadap HTTP Client dapat menggunakan panduan sesuai dokumentasi [Guzzle](https://docs.guzzlephp.org/en/stable). Passing konfigurasi guzzle dapat dilakukan dengan cara:

```
use MPDN;
$globalKey = 'example-global-key-123456789';
$configGuzzle = [
    'timeout' => 60,
    'verify' => true,
];

MPDN::prepare($globalKey, false, $configGuzzle);
```

Jika anda menggunakan library Http client lain, maka anda diharuskan membuat custom interface HTTP client dengan mengimplementasikan `MPDN\Http\ClientInterface` seperti berikut.

```
/**
 * File CustomHttpClient.php
 */
use MPDN\Http\ClientInterface;

class CustomHttpClient implements ClientInterface {

    /**
     * Override fungsi sendRequest
     */
    public function sendRequest($method, string $url, $params, array $headers = []) {
        // ...
        // terapkan logic Http Client library anda disini
        // ...
    }
}
```

Kemudian gunakan `setHttpClient` saat inisialisasi untuk menggunakan client library anda.

```
use MPDN;
use \CustomHttpClient;

$globalKey = 'example-global-key-123456789';

// Custom Http Client
$myClient = new CustomHttpClient();

MPDN::prepare($globalKey, false)
    ->setHttpClient($myClient);
```

### 3. Menggunakan Operation pada MPDN API

[](#3-menggunakan-operation-pada-mpdn-api)

Berikut adalah fitur (disebut dengan **Operation**) yang didukung oleh library.

ClassFunctionOperationMPDN\\Operation\\Notification\\MaternallistMenampilkan daftar agregat Angka Kematian Ibu per daerah sesuai dengan spesifikasi berikut.MPDN\\Operation\\Notification\\MaternalrequestNewMeminta `token` form Notifikasi Kematian Maternal untuk pelaporan kematian baru.MPDN\\Operation\\Notification\\MaternalrequestEditMeminta `token` form Notifikasi Kematian Maternal untuk pengeditan data. idkematian kematian Maternal harus disertakan pada url request.MPDN\\Operation\\Notification\\MaternalcreateMengirim data notifikasi kematian Maternal baru.MPDN\\Operation\\Notification\\MaternaleditMengirim perubahan data notifikasi kematian Maternal.MPDN\\Operation\\Notification\\MaternalmarkAsVerified**Verifikasi** data kematian Maternal.MPDN\\Operation\\Notification\\MaternalmarkAsFinal**Finalisasi** data kematian Maternal.MPDN\\Operation\\Notification\\MaternalmarkAsDuplicateMenandai data kematian Maternal yang belum memiliki Nomor KTP(NIK) Ibu sebagai **TERDUPLIKAT**.MPDN\\Operation\\Notification\\MaternalmarkAsAnnulledMenganulir kematian maternal hanya dapat dilakukan oleh pelapor yang pertama melaporkan data (owner).MPDN\\Operation\\Notification\\MaternalrequestForRejectionMengirim pengajuan penolakan atas sengkata Alamat Domisili.MPDN\\Operation\\Notification\\MaternalacceptForRejectionMengirim persetujuan penolakan atas sengkata Alamat Domisili.MPDN\\Operation\\Notification\\PerinatallistMenampilkan daftar agregat Angka Kematian Ibu per daerah sesuai dengan spesifikasi berikut.MPDN\\Operation\\Notification\\PerinatalrequestNewMeminta `token` form Notifikasi Kematian Perinatal untuk pelaporan kematian baru.MPDN\\Operation\\Notification\\PerinatalrequestEditMeminta `token` form Notifikasi Kematian Perinatal untuk pengeditan data. idkematian kematian Perinatal harus disertakan pada url request.MPDN\\Operation\\Notification\\PerinatalcreateMengirim data notifikasi kematian Perinatal baru.MPDN\\Operation\\Notification\\PerinataleditMengirim perubahan data notifikasi kematian Perinatal.MPDN\\Operation\\Notification\\PerinatalmarkAsVerified**Verifikasi** data kematian Perinatal.MPDN\\Operation\\Notification\\PerinatalmarkAsFinal**Finalisasi** data kematian Perinatal.MPDN\\Operation\\Notification\\PerinatalmarkAsDuplicateMenandai data kematian Perinatal yang belum memiliki Nomor KTP(NIK) Ibu sebagai **TERDUPLIKAT**.MPDN\\Operation\\Notification\\PerinatalmarkAsAnnulledMenganulir kematian maternal hanya dapat dilakukan oleh pelapor yang pertama melaporkan data (owner).MPDN\\Operation\\Notification\\PerinatalrequestForRejectionMengirim pengajuan penolakan atas sengkata Alamat Domisili.MPDN\\Operation\\Notification\\PerinatalacceptForRejectionMengirim persetujuan penolakan atas sengkata Alamat Domisili.MPDN\\Operation\\Admin\\OrganizationsubdivisionsMenampilkan daftar sub-wilayah berdasarkan induk wilayah tertentu.MPDN\\Operation\\Admin\\OrganizationfacilitesMenampilkan daftar FASKES berdasarkan induk wilayah tertentu.MPDN\\Operation\\Admin\\OrganizationusersMenampilkan daftar user terdaftar yang dapat digunakan oleh Aplikasi. User management yang ada di MPDN dapat direlasikan dengan user management yang ada pada internal Aplikasi anda dengan bantuan web service ini.MPDN\\Operation\\FormOperationrequestResetMenghapus(membatalkan) `token` form yang dibuat baik token form ibu maupun bayi.MPDN\\Operation\\SessionOperationcheckMemeriksa hak akses dan kemampuan yang dimiliki oleh session saat ini.

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity17

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity35

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

1550d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/fcfeb30075565de72376d309168a1ced2a440463642c93b1ca865decd44d1890?d=identicon)[timkubus](/maintainers/timkubus)

---

Top Contributors

[![timkubus](https://avatars.githubusercontent.com/u/5964730?v=4)](https://github.com/timkubus "timkubus (18 commits)")

---

Tags

apimpdn

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/kubuslab-mpdn-api/health.svg)

```
[![Health](https://phpackages.com/badges/kubuslab-mpdn-api/health.svg)](https://phpackages.com/packages/kubuslab-mpdn-api)
```

###  Alternatives

[openai-php/laravel

OpenAI PHP for Laravel is a supercharged PHP API client that allows you to interact with the Open AI API

3.7k7.6M74](/packages/openai-php-laravel)[mailchimp/transactional

458.9M16](/packages/mailchimp-transactional)[get-stream/stream-chat

A PHP client for Stream Chat (https://getstream.io/chat/)

301.8M2](/packages/get-stream-stream-chat)[convertkit/convertkitapi

Kit PHP SDK for the Kit API

2167.1k1](/packages/convertkit-convertkitapi)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
