Referensi Teknis

Dokumentasi API

Integrasikan kecerdasan klinis SnapPath ke dalam sistem informasi rumah sakit Anda menggunakan REST API yang aman dan terstruktur.

Gambaran Umum

SnapPath menyediakan REST API berbasis JSON untuk mengintegrasikan fitur validasi klaim dan pembuatan clinical pathway ke dalam sistem internal institusi Anda.

Base URL

https://api.snappath.id/api/v1

Format

JSON

Versi API

v1

Protokol

HTTPS only

Autentikasi

Semua request ke API SnapPath harus disertai kredensial yang valid. Tersedia dua metode autentikasi:

Metode 1 — API Key + Secret (Direkomendasikan)

Sertakan dua header berikut pada setiap request:

x-api-key: sp_xxxxxxxxxxxxxxxx

x-api-secret: sps_xxxxxxxxxxxxxxxx

Metode 2 — HTTP Basic Auth

Encode apiKey:apiSecret dalam Base64 dan sertakan sebagai header Authorization:

Authorization: Basic {base64(apiKey:apiSecret)}

Keamanan: Jangan pernah menyertakan API key atau secret dalam kode sumber yang bersifat publik (frontend, repositori publik). Selalu gunakan environment variables di sisi server.

Endpoint Utama

Ringkasan kelompok endpoint yang tersedia di SnapPath API:

POST/api/v1/claims/validate

Validasi klaim pasien secara komprehensif — diagnosis, tarif, obat, dan dokumen

POST/api/v1/pathways/generate

Generate clinical pathway berbasis ICD-10 dan jenis kunjungan

GET/api/v1/jobs/{jobId}/status

Polling status job asynchronous (validasi atau pathway)

GET/api/v1/jobs/{jobId}/result

Ambil hasil lengkap setelah job selesai

GET/api/v1/tariffs

Daftar master tarif tindakan berdasarkan provider

GET/api/v1/providers

Daftar provider klaim/asuransi yang terdaftar untuk tenant

Validasi Klaim

Endpoint POST /api/v1/claims/validate menerima data klaim dan mengembalikan hasil validasi multi-dimensi.

POST/api/v1/claims/validate

Field yang diperlukan:

providerIduuidID provider klaim/tarif milik client
patientobjectData pasien (id, nama, tanggal lahir, jenis kelamin)
encounterobjectData kunjungan (tipe, tanggal masuk/keluar, fasilitas)
diagnosesarrayDaftar diagnosis dengan key canonical: code, name, type, sequence
proceduresarrayTindakan dengan key canonical: code, name, category, quantity, unitPrice, totalPrice
medicationsarrayObat/farmalkes dengan key canonical: code, name, genericName, dosage, quantity, unitPrice, totalPrice
totalClaimAmountnumberTotal tagihan klaim dalam IDR

Struktur Response (async):

{
  "success": true,
  "jobId": "uuid",
  "statusUrl": "/api/v1/jobs/{jobId}/status"
}

Validasi klaim bersifat asynchronous. Gunakan /jobs/{jobId}/result untuk mengambil hasil setelah status COMPLETED.

Clinical Pathway

Endpoint POST /api/v1/pathways/generate menghasilkan clinical pathway klinis berbasis diagnosis.

Field yang diperlukan:

diagnosisCodestringKode diagnosis, contoh: J18.9
encounterTypeenumRAWAT_INAP | RAWAT_JALAN | IGD
diagnosisNamestring(opsional) Nama diagnosis untuk konteks AI
patientProfileobject(opsional) Usia, jenis kelamin, dan komorbiditas

Output mencakup estimasi Length of Stay (LOS), fase perawatan per hari, asesmen, terapi, obat, edukasi pasien, dan kriteria discharge.

Asynchronous Jobs

Semua proses berat (validasi klaim, pembuatan pathway) berjalan secara asynchronous. Gunakan polling untuk memantau status:

QUEUED

Job diterima, menunggu diproses

PROCESSING

Job sedang diproses oleh workflow engine

COMPLETED

Job selesai, result tersedia

FAILED

Job gagal, periksa field error di response

Kode Error

400Bad Request

Input tidak valid atau field yang diperlukan tidak ada

401Unauthorized

Kredensial API tidak valid atau tidak disertakan

403Forbidden

Akun tidak memiliki akses ke resource yang diminta

404Not Found

Resource (job, provider, dll) tidak ditemukan

429Too Many Requests

Rate limit tercapai, coba lagi setelah beberapa saat

500Internal Error

Kesalahan server, hubungi tim SnapPath jika berlanjut

Rate Limits

Rate limit diterapkan per API key untuk menjaga stabilitas platform. Batasan spesifik per tier ditentukan dalam perjanjian layanan institusi Anda.

Jika request melebihi batas, API akan merespons dengan HTTP 429 Too Many Requests. Implementasikan exponential backoff pada integrasi Anda.

Siap Mengintegrasikan?

Daftar sebagai mitra institusi untuk mendapatkan API key dan akses ke dokumentasi interaktif lengkap dengan fitur Try It.