UDENTIVA Platform Manajemen Dental Cerdas
PENGEMBANG

Dokumentasi API UDENTIVA

Integrasikan data klinik Anda secara aman dengan sistem Anda sendiri. API berbasis REST yang konsisten dan dapat diprediksi.

Akses API eksternal akan segera dibuka
Endpoint berikut adalah cakupan penuh yang akan dibuka ke luar. Hubungi kami untuk akses awal.
Model Keamanan API
Isolasi data, penulisan idempoten, kueri terparameter — keamanan berbasis kode. →

Ikhtisar

API UDENTIVA mematuhi prinsip REST; menggunakan badan JSON dan mengembalikan kode status HTTP standar. Semua permintaan dilakukan melalui HTTPS dan diautentikasi dengan kunci API. Setiap permintaan dibatasi pada data klinik yang terkait dengan kunci (isolasi data penuh).

Alamat dasar:

https://api.udentiva.com

Autentikasi

Sertakan kunci API Anda pada header Authorization dalam setiap permintaan. Kunci dihasilkan melalui panel klinik dan dapat dicabut kapan saja.

# Contoh permintaan
curl https://api.udentiva.com/v1/patients \
  -H "Authorization: Bearer udk_live_xxx" \
  -H "Accept: application/json"

Endpoint

81 endpoint · 12 sumber

Semua endpoint yang akan dibuka ke luar tercantum di bawah. Di halaman detail setiap sumber terdapat parameter, contoh permintaan/respons, dan catatan keamanan. Endpoint penulisan mendukung header Idempotency-Key.

Pasien · 9

Detail & contoh →
GET /v1/patients Mengambil daftar pasien secara berhalaman
POST /v1/patients Membuat catatan pasien baru
GET /v1/patients/{id} Mengambil detail satu pasien
PUT /v1/patients/{id} Memperbarui informasi pasien
DELETE /v1/patients/{id} Mengarsipkan pasien (soft-delete)
GET /v1/patients/{id}/medical Mencantumkan anamnesis, alergi, dan riwayat medis
POST /v1/patients/{id}/medical Menambahkan catatan medis/anamnesis
GET /v1/patients/{id}/documents Mencantumkan dokumen pasien
POST /v1/patients/{id}/documents Menambahkan dokumen ke pasien

Janji Temu & Kalender · 10

Detail & contoh →
GET /v1/appointments Mencantumkan janji temu berdasarkan rentang tanggal
POST /v1/appointments Membuat janji temu baru (dengan kontrol bentrokan)
POST /v1/appointments/{id}/status Mengubah status janji temu
POST /v1/appointments/{id}/reschedule Menjadwalkan ulang janji temu
POST /v1/appointments/{id}/remind Mengirim pengingat janji temu
GET /v1/units Mencantumkan kursi/unit
GET /v1/doctors Mencantumkan dokter
GET /v1/waitlist Mengambil daftar tunggu
POST /v1/waitlist Menambahkan pasien ke daftar tunggu
DELETE /v1/waitlist/{id} Menghapus dari daftar tunggu

Odontogram & Perawatan · 14

Detail & contoh →
GET /v1/patients/{id}/odontogram Mengambil peta gigi FDI terkini
POST /v1/patients/{id}/odontogram Menambahkan status gigi (append-only)
GET /v1/patients/{id}/odontogram/{tooth}/history Mengambil riwayat status suatu gigi
GET /v1/services Mencantumkan katalog layanan/tindakan
POST /v1/services Menambahkan item layanan
PUT /v1/services/{id} Memperbarui item layanan
GET /v1/patients/{id}/plans Mencantumkan rencana perawatan pasien
POST /v1/patients/{id}/plans Membuat rencana perawatan
GET /v1/plans/{id} Mengambil detail rencana perawatan
POST /v1/plans/{id}/status Mengubah status rencana
POST /v1/plans/{id}/items Menambahkan tahap/item ke rencana
POST /v1/plan-items/{id}/status Mengubah status item rencana
GET /v1/patients/{id}/prescriptions Mencantumkan resep
POST /v1/patients/{id}/prescriptions Membuat resep

Penagihan & Keuangan · 12

Detail & contoh →
POST /v1/invoices Membuat faktur
GET /v1/invoices Mencantumkan faktur
GET /v1/invoices/{id} Mengambil detail faktur
POST /v1/invoices/{id}/void Membatalkan faktur (jurnal balik)
POST /v1/invoices/{id}/einvoice Mengirim faktur sebagai e-Fatura (GİB)
GET /v1/einvoices Mencantumkan catatan e-Fatura
POST /v1/payments Mencatat penagihan (idempoten)
GET /v1/patients/{id}/balance Mengambil saldo rekening pasien
GET /v1/patients/{id}/ledger Mencantumkan mutasi rekening pasien
GET /v1/cash/day Mengambil ringkasan kas akhir hari
GET /v1/cari Mencantumkan saldo rekening pasien
GET /v1/billing/summary Mengambil ringkasan keuangan/penagihan

Inventaris · 6

Detail & contoh →
GET /v1/stock Mencantumkan kartu stok
GET /v1/stock/critical Mencantumkan stok pada tingkat kritis
POST /v1/stock Membuat kartu stok
PUT /v1/stock/{id} Memperbarui kartu stok
POST /v1/stock/{id}/movement Menambahkan mutasi stok (masuk/keluar)
GET /v1/stock/{id}/movements Mencantumkan mutasi stok

Pencitraan · 3

Detail & contoh →
GET /v1/patients/{id}/images Mencantumkan gambar pasien (rontgen/foto)
POST /v1/patients/{id}/images Mengunggah gambar (S3, stream/presigned)
GET /v1/images/{id}/raw Mengunduh file gambar (presigned)

Lab · 7

Detail & contoh →
GET /v1/lab-orders Mencantumkan pesanan lab
POST /v1/lab-orders Membuat pesanan lab
GET /v1/lab-orders/{id} Mengambil detail pesanan
PUT /v1/lab-orders/{id} Memperbarui pesanan
POST /v1/lab-orders/{id}/status Mengubah status pesanan
GET /v1/labs Mencantumkan laboratorium mitra
POST /v1/labs Menambahkan laboratorium

Lead & CRM · 7

Detail & contoh →
GET /v1/leads Mencantumkan lead/permintaan
POST /v1/leads Membuat lead baru
POST /v1/leads/{id}/status Mengubah status/tahap lead
GET /v1/tasks Mencantumkan tugas
POST /v1/tasks Membuat tugas
GET /v1/messages Mencantumkan pesan komunikasi pasien
POST /v1/messages Membuat catatan pesan/komunikasi

Wisata Kesehatan · 5

Detail & contoh →
GET /v1/tourism-cases Mencantumkan kasus pariwisata kesehatan
POST /v1/tourism-cases Membuat kasus pariwisata
POST /v1/tourism-cases/{id}/status Mengubah tahap kasus
GET /v1/shipments Mencantumkan catatan transfer/pengiriman
POST /v1/shipments Membuat catatan transfer/pengiriman

Pelaporan & BI · 3

Detail & contoh →
GET /v1/bi Mengambil metrik business intelligence
GET /v1/profit Mengambil laporan profitabilitas
GET /v1/rcm Mengambil metrik siklus pendapatan (RCM)

Webhooks · 3

Detail & contoh →
GET /v1/webhooks Mencantumkan langganan webhook yang terdaftar
POST /v1/webhooks Mendaftarkan webhook untuk notifikasi peristiwa
DELETE /v1/webhooks/{id} Menghapus langganan webhook

Transfer Data (Export API) · 2

Detail & contoh →
GET /export/v1 Mengembalikan kumpulan data yang diizinkan untuk kunci beserta informasi penggunaan (penemuan)
GET /export/v1/{dataset} Menarik kumpulan data terpilih secara berhalaman (?limit=1000&offset=0)

Format Kesalahan

Kesalahan dikembalikan dengan amplop yang konsisten; kode ditujukan ke mesin, pesan ke pengguna. Kesalahan/stack internal tidak pernah bocor.

{
  "error": {
    "code": "validation_failed",
    "message": "Bidang tidak valid: e-mail"
  }
}

Batas Kecepatan

Permintaan dibatasi per menit. Ketika batas terlampaui, 429 dikembalikan; header respons membawa informasi sisa kuota.

Versioning

Versi API dibawa di jalur (mis. /v1). Perubahan yang memutus kompatibilitas mundur dirilis dengan versi baru.

Peristiwa Webhook

Seiring peristiwa terjadi di klinik Anda, pemberitahuan bertanda tangan dikirim ke alamat terdaftar Anda. Dengan begitu Anda menjaga sistem Anda sendiri tetap terkini secara seketika.

# Contoh jenis peristiwa
patient.created   appointment.created   appointment.status_changed
invoice.created   payment.created       lab_order.status_changed
treatment_plan.updated   lead.created   tourism_case.status_changed
Ingin akses awal?
Jadilah yang pertama tahu saat API dibuka.
Hubungi