Service Catalog Bridging BPJS - RS Last Modified : 29-09-2014 WS Version : 1.4.1 Daftar isi Overview TOOLS TESTING WEB SERVICE SIGNATURE Java PHP C# VB.Net Ruby Phyton Cocoa (iOS and Mac) Daftar Service 1. Cari peserta berdasarkan no.kartu BPJS 2. Cari peserta berdasarkan NIK Format_Peserta 3. Cari data rujukan berdasarkan no.rujukan 4. Cari data rujukan berdasarkan no.kartu BPJS Format_Rujukan 5. Cari daftar pasien yang di-rujuk berdasarkan tanggal rujukan Format_Rujukan_list 6. Pembuatan SEP 7. Update tanggal pulang pada SEP >> hanya ada pada Web Service lokal 8. Menyimpan mapping data transaksi >> hanya ada pada Web Service lokal 9. Menghapus data transaksi SEP >> hanya ada pada Web Service lokal 10. Mencari 5 (lima) riwayat kunjungan terakhir peserta >> hanya ada pada Web Service lokal Format_Riwayat_Kunjungan_Peserta 11. Mencari detail SEP >> hanya ada pada Web Service lokal Format_Detail_SEP 12. Mencari PPK Rujukan >> hanya ada pada Web Service lokal Format_Nama_PPK Overview Secara umum, hampir setiap pemanggilan web-service, harus dicantumkan beberapa variabel yang dibutuhkan untuk menambahkan informasi ataupun untuk proses validasi yang dikirim pada HTTP Header, antara lain: Nama Header Contoh Nilai Keterangan format data yang diinginkan consumer ID dari X-cons-id 743627386 ASKES Xgenerated unix-based 234234234 timestamp timestamp generated signature XDogC5UiQurNcigrBdQ3QN5oYvXeUF5E82I/LHUcI9v0=dengan pola HMACsignature 256 Accept application/xml, application/json 1. Accept, diisi sesuai permintaan dari client. Jika menginginkan hasil balik dari webservice dalam format XML, maka diisi dengan application/xml. Ataupun jika menginginkan hasil balik dari web-service dalam berupa JSON, maka dapat diisi dengan application/json. Secara default (jika tidak ditulis) maka hasil balik berupa JSON. 2. X-cons-id, merupakan kode consumer (pengakses web-service). Kode ini akan diberikan oleh ASKES. 3. X-timestamp, merupakan waktu yang akan di-generate oleh client saat ingin memanggil setiap service. Format waktu ini ditulis dengan format unix-based-time (berisi angka, tidak dalam format tanggal sebagaimana mestinya). Format waktu menggunakan Coordinated Universal Time ( UTC), dalam penggunaannya untuk mendapatkan timestamp, rumus yang digunakan adalah (local time in UTC timezone in seconds) - (1970-01-01 in seconds). contoh penggunaan dalam php yaitu : date_default_timezone_set('UTC'); $tStamp = strval(time()-strtotime('1970-01-01 00:00:00')); 4. X-signature, merupakan hasil dari pembuatan signature yang dibuat oleh client. Signature yang digunakan menggunakan pola HMAC-SHA256. Untuk dapat mengakses web-service dari BPJS Kesehatan (service provider), pemanggil web service (service consumer) akan mendapatkan: Consumer ID Consumer Secret Informasi Consumer Secret, hanya disimpan oleh service consumer. Tidak dikirim ke server web-service, hal ini untuk menjaga pengamanan yang lebih baik. Sedangkan kebutuhan Consumer Secret ini adalah untuk men-generate Signature (X-signature). Contoh: consumerID : 1234 consumerSecret : pwd timestamp : 433223232 variabel1 : consumerID&timestamp variabel1 : 1234&433223232 Signature : HMAC-256(value : key) value : variabel1 key : consumerSecret Signature : HMAC-256(variabel1 : consumerSecret) TOOLS TESTING WEB SERVICE Sebelum mengakses web service melalui aplikasi, bisa digunakan tools tambahan (add-ons). Add-ons ini bisa di dapat dari software tambahan atau extension dari masing-masing browser favorit anda. Berikut link aplikasi Advanced Rest Client yang bisa digunakan dan didownload dari Chrome Web Store. SIGNATURE Metode signature yang digunakan adalah menggunakan HMAC-SHA256, dimana paramater saat generate signature dibutuhkan parameter message dan key. Berikut contoh hasil generate HMAC-SHA256 message : aaa key : bbb hasil generate HMAC-SHA256 : 20BKS3PWnD3XU4JbSSZvVlGi2WWnDa8Sv9uHJ+wsELA= Diatas adalah hasil generate dari server BPJS Kesehatan Berikut contoh pembuatan signature dari berbagai platform: 1. Java import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.net.URLEncoder; import java.security.GeneralSecurityException; import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; import org.springframework.security.crypto.codec.Base64; public class BpjsApi { public static void main(String[] args) throws GeneralSecurityException, IOException { String secretKey = "secretKey"; String salt = "0123456789"; String generateHmacSHA256Signature = generateHmacSHA256Signature(salt, secretKey); System.out.println("Signature: " + generateHmacSHA256Signature); String urlEncodedSign = URLEncoder.encode(generateHmacSHA256Signature, "UTF8"); System.out.println("Url encoded value: " + urlEncodedSign); } public static String generateHmacSHA256Signature(String data, String key) throws GeneralSecurityException { byte[] hmacData = null; try { SecretKeySpec secretKey = new SecretKeySpec(key.getBytes("UTF-8"), "HmacSHA256"); Mac mac = Mac.getInstance("HmacSHA256"); mac.init(secretKey); hmacData = mac.doFinal(data.getBytes("UTF-8")); return new Base64Encoder().encode(hmacData); } catch (UnsupportedEncodingException e) { throw new GeneralSecurityException(e); } } } 2. PHP <?php $data = "testtesttest"; $secretKey = "secretkey"; // Computes the timestamp date_default_timezone_set('UTC'); $tStamp = strval(time()-strtotime('1970-01-01 00:00:00')); // Computes the signature by hashing the salt with the secret key as the key $signature = hash_hmac('sha256', $data."&".$tStamp, $secretKey, true); // base64 encode… $encodedSignature = base64_encode($signature); // urlencode… // $encodedSignature = urlencode($encodedSignature); echo "X-cons-id: " .$data ."<br>"; echo "X-timestamp:" .$tStamp ."<br>"; echo "X-signature: " .$encodedSignature; ?> 3. C# namespace BpjsIntegration { class Program { static void Main() { var data = "testtesttest"; var secretKey = "secretkey"; // Initialize the keyed hash object using the secret key as the key HMACSHA256 hashObject = new HMACSHA256(Encoding.UTF8.GetBytes(secretKey)); // Computes the signature by hashing the salt with the secret key as the key var signature = hashObject.ComputeHash(Encoding.UTF8.GetBytes(data)); // Base 64 Encode var encodedSignature = Convert.ToBase64String(signature); // URLEncode // encodedSignature = System.Web.HttpUtility.UrlEncode(encodedSignature); Console.WriteLine("Voila! A signature: " + encodedSignature); Console.ReadKey(); } } } 4. VB.Net Imports System.Security.Cryptography Imports System.Text Namespace BpjsIntegration Class Program Private Shared Sub Main() Dim data = "testtesttest" Dim secretKey = "secretkey" ' Initialize the keyed hash object using the secret key as the key Dim hashObject As New HMACSHA256(Encoding.UTF8.GetBytes(secretKey)) ' Computes the signature by hashing the salt with the secret key as the key Dim signature = hashObject.ComputeHash(Encoding.UTF8.GetBytes(data)) ' Base 64 Encode Dim encodedSignature = Convert.ToBase64String(signature) ' URLEncode ' encodedSignature = System.Web.HttpUtility.UrlEncode(encodedSignature) Console.WriteLine("Voila! A signature: " & encodedSignature) Console.ReadKey() End Sub End Class End Namespace 5. Ruby # Required Libraries require 'openssl' require 'base64' require 'URI' data = "testtesttest" secret_key = "secretkey" # URL encode def urlncode(string) URI.escape(string, Regexp.new("[Generating an API Signature^#{URI::PATTERN::UNRESERVED}]")) end # Computes the signature by hashing the salt with the secret key as the key hash = OpenSSL::HMAC.digest('sha256', secret_key, data) # base64 encode... # signature = urlncode(Base64.encode64(hash)); 6. Phyton import hashlib import random import base64 import urllib import hmac data = "testtesttest" secretkey = "secretkey" # Computes the signature by hashing the data with the secret key as the key signature = hmac.new(secretkey, msg=data, digestmod=hashlib.sha256).digest() # base64 encode... encodedSignature = base64.encodestring(signature).replace('\n', '') # urlencode... # encodedSignature = urllib.quote(encodedSignature) print "Voila! A signature: " + encodedSignature 7. Cocoa (iOS and Mac) -(NSUInteger)GenerateSalt { // random number (change the modulus to the length you'd like) NSUInteger r = arc4random() % 100000; return r; } -(NSString *)GenerateSignatureUsingSalt:(NSUInteger)salt { /* Make sure you import: #import <CommonCrypto/CommonHMAC.h> */ NSString *key = SECRET_KEY; string NSString *data = [NSString stringWithFormat:@"%u", salt]; random number // define your Secret Key // convert your const char *cKey = [key cStringUsingEncoding:NSUTF8StringEncoding]; const char *cData = [data cStringUsingEncoding:NSUTF8StringEncoding]; unsigned char cHMAC[CC_SHA256_DIGEST_LENGTH]; // Hash the salt with the secret key CCHmac(kCCHmacAlgSHA256, cKey, strlen(cKey), cData, strlen(cData), cHMAC); // Create a data structure NSData *HMAC = [[NSData alloc] initWithBytes:cHMAC length:sizeof(cHMAC)]; // Base64-encode the signature NSString *hash = [HMAC base64Encoding]; // URL-encode the signature // NSString * signatureURL = (NSString *)CFURLCreateStringByAddingPercentEscapes(NULL, (CFStringRef)hash, NULL, (CFStringRef)@"!*'\"();:@&=+$,/?%#[]% ", kCFStringEncodingUTF8 ); return signatureURL; } Daftar Service Service yang tersedia adalah sebagai berikut: 1. Cari peserta berdasarkan no.kartu BPJS URL Tester URL Production Parameter: : http://api.asterix.co.id/SepWebRest/peserta/{noKartu} : http://IP_ADDRESS:PORT/SepLokalRest/peserta/{noKartu} noKartu : no kartu BPJS Output: Format_Peserta Contoh: URL : http://api.asterix.co.id/SepWebRest/peserta/0000142495694 2. Cari peserta berdasarkan NIK URL Tester URL Production : http://api.asterix.co.id/SepWebRest/peserta/nik/{nik} : http://IP_ADDRESS:PORT/SepLokalRest/peserta/nik/{nik} Parameter: Nik : nomor induk kependudukan / no e-KTP Output: Format_Peserta Contoh: URL : http://api.asterix.co.id/SepWebRest/peserta/nik/3201152704890003 Format_Peserta { "response":{ "peserta":{ "noKartu":"0000142495694", "nik":" ", "nama":"MUJADID ANWAR HASAN", "pisa":"2", "sex":"P", "tglLahir":"1979-05-13 00:00:00", "tglCetakKartu":"1979-05-13 00:00:00", "provUmum":{ "kdProvider":"1301U007", "nmProvider":"MAULIDA JUNIAR, dr", "kdCabang":null, "nmCabang":null }, "jenisPeserta":{ "kdJenisPeserta":"1", "nmJenisPeserta":"PNS PUSAT" }, "kelasTanggungan":{ "kdKelas":null, "nmKelas":null } } },"metaData":{ "message":"200", "code":200 } } 3. Cari data rujukan berdasarkan no.rujukan URL Tester URL Production : http://api.asterix.co.id/SepWebRest/rujukan/{noRujukan} : http://IP_ADDRESS:PORT/SepLokalRest/rujukan/{noRujukan} Parameter : noRujukan : no rujukan pasien BPJS melalui aplikasi PCare (Puskesmas/dokkel) Output: Format_Rujukan Contoh: URL : http://api.asterix.co.id/SepWebRest/rujukan/000108011213Y000004 4. Cari data rujukan berdasarkan no.kartu BPJS URL Tester URL Production : http://api.asterix.co.id/SepWebRest/rujukan/peserta/{noKartu} : http://IP_ADDRESS:PORT/SepLokalRest/rujukan/peserta/{noKartu} Parameter: noKartu : no kartu BPJS Output: Format_Rujukan Contoh: URL : http://api.asterix.co.id/SepWebRest/rujukan/peserta/0001089159052 Format_Rujukan { "response":{ "item":{ "noKunjungan":"000108011213Y000004", "tglKunjungan":"2013-12-14 00:00:00", "provKunjungan":{ "kdProvider":"00010801", "nmProvider":"PUSK LANGSA BARO", "kdCabang":null, "nmCabang":null }, "peserta":{ "noKartu":"0001089159052", "nik":"", "nama":"mr ganteng kaya sholeh", "pisa":"2", "sex":"L", "tglLahir":"1984-06-16 00:00:00", "tglCetakKartu":null, "provUmum":{ "kdProvider":"00010801", "nmProvider":"PUSK LANGSA BARO", "kdCabang":null, "nmCabang":null }, "jenisPeserta":null, "kelasTanggungan":null }, "keluhan":"sakit gigi", "diagnosa":{ "kdDiag":"K05", "nmDiag":"GINGTIVIS AND PERIODONTAL DISEA." }, "catatan":"rujuk", "pemFisikLain":"", "provRujukan":{ "kdProvider":"0105R001", "nmProvider":"RSU LANGSA", "kdCabang":null, "nmCabang":null }, "poliRujukan":{ "kdPoli":"GIG", "nmPoli":"Poli Gigi" } } } ,"metaData":{ "message":"200", "code":200 } } 5. Cari daftar pasien yang di-rujuk berdasarkan tanggal rujukan URL Tester : http://api.asterix.co.id/SepWebRest/rujukan/tglrujuk/{tglRujukan}/query?st art={start}&limit={limit} URL Production : http://IP_ADDRESS:PORT/SepLokalRest/rujukan/tglrujuk/{tglRujukan}/q uery?start={start}&limit={limit} Paramter : {tglRujukan} = tanggal dengan format yyyy-MM-dd {start} = start/mulai urutan data {limit} = jumlah data Output: Format_Rujukan_list Contoh: URL: http://api.asterix.co.id/SepWebRest/rujukan/tglrujuk/2013-1214/query?start=1&limit=10 Mengambil data dari urutan no.1 sebanyak 10 data URL: http://api.asterix.co.id/SepWebRest/rujukan/tglrujuk/2013-1214/query?start=11&limit=10 Mengambil data dari urutan no.11 sebanyak 10 data Fungsi {start} dan {limit} berguna untuk paging pada layout tampilan aplikasi, dengan parameter {start} selalu berubah sesuai parameter, sedangkan parameter {limit} selalu sama. - menampilkan {start} – {limit} dari {count} records - menampilkan 1 – 10 dari 73 records Format_Rujukan_list { "response":{ "start":1, "limit":10, "count":7, "list":[{ "noKunjungan":"000108031213Y000005", "tglKunjungan":"2013-12-14 00:00:00", "provKunjungan":{ "kdProvider":"00010803", "nmProvider":"PUSK LANGSA KOTA", "kdCabang":null, "nmCabang":null }, "peserta":{ "noKartu":"0000149156998", "nik":" ", "nama":"ITA ELLYZA", "pisa":"3", "sex":"P", "tglLahir":"1979-04-17 00:00:00", "tglCetakKartu":null, "provUmum":{ "kdProvider":"00010803", "nmProvider":"PUSK LANGSA KOTA", "kdCabang":null, "nmCabang":null }, "jenisPeserta":null, "kelasTanggungan":null }, "keluhan":"dispepsia", "diagnosa":{ "kdDiag":"M23", "nmDiag":"INTERNAL DERANGEMENT OF KNEE" }, "catatan":",,,,,,,,,,", "pemFisikLain":"", "provRujukan":{ "kdProvider":"0105R001", "nmProvider":"RSU LANGSA", "kdCabang":null, "nmCabang":null }, "poliRujukan":{ "kdPoli":"INT", "nmPoli":"Poli Penyakit Dalam" } }, .... .... .... .... { "noKunjungan":"000108031213Y000009", "tglKunjungan":"2013-12-14 00:00:00", "provKunjungan":{ "kdProvider":"00010803", "nmProvider":"PUSK LANGSA KOTA", "kdCabang":null, "nmCabang":null }, "peserta":{ "noKartu":"0001089159276", "nik":"1174023107830003", "nama":"DEDE KURNIAWAN", "pisa":"1", "sex":"L", "tglLahir":"1985-07-07 00:00:00", "tglCetakKartu":null, "provUmum":{ "kdProvider":"00010803", "nmProvider":"PUSK LANGSA KOTA", "kdCabang":null, "nmCabang":null }, "jenisPeserta":null, "kelasTanggungan":null }, "keluhan":"gigi berlubang", "diagnosa":{ "kdDiag":"K02", "nmDiag":"DENTAL CARIES" }, "catatan":"cabut", "pemFisikLain":"", "provRujukan":{ "kdProvider":"0105R001", "nmProvider":"RSU LANGSA", "kdCabang":null, "nmCabang":null }, "poliRujukan":{ "kdPoli":"GIG", "nmPoli":"Poli Gigi" } }] },"metaData":{ "message":"200", "code":200 } } 6. Pembuatan SEP (hanya untuk testing data. Untuk production, akan di-deploy WebService pada server lokal di RS) URL Tester : http://api.asterix.co.id/SepWebRest/sep/create/ Mulai Versi WS 1.4, URL Create SEP untuk Production menjadi URL Production : http://IP_ADDRESS:PORT/SepLokalRest/sep/ Request Method : POST Header : Content-type: application/xml x-cons-id: …. x-timestamp: …. x-signature: ... Data: <request> <data> <t_sep> <noKartu>1234567890123</noKartu> <tglSep>2013-07-26 13:05:03</tglSep> <tglRujukan>2013-07-26 13:05:03</tglRujukan> <noRujukan>1234590000300003</noRujukan> <ppkRujukan>09010100</ppkRujukan> <ppkPelayanan>0901R001</ppkPelayanan> <jnsPelayanan>1</jnsPelayanan> <catatan>dari WS</catatan> <diagAwal>B010</diagAwal> <poliTujuan>SAR</poliTujuan> <klsRawat>2</klsRawat> <user>JD</user> <noMr>1234</noMr> </t_sep> </data> </request> Keterangan: noKartu : no kartu BPJS tglSep : tanggal kedatangan/tanggal transaksi tglRujukan : tanggal kunjungan ke puskesmas/dokter keluarga noRujukan : no rujukan dari puskesmas/dokter keluarga ppkRujukan : kode puskesmas/dokter keluarga (versi BPJS) ppkPelayanan: kode RS anda (versi BPJS), akan di-validasi oleh service, pastikan gunakan userID service yang sesuai jnsPelayanan : 1: Rawat Inap, 2: Rawat Jalan catatan : catatan tambahan diagAwal : diagnosa dari puskesmas/dokter keluarga (ICD X, sama seperti INA-CBG) poliTujuan : poli tujuan di RS klsRawat : kelas rawat tanggungan peserta user : username pengguna aplikasi noMr : no medical records RS dari pasien 7. Update tanggal pulang pada SEP >> hanya ada pada Web Service lokal Terjadi penolakan saat pembuatan SEP jika sistem mengidentifikasi bahwa pasien masih dalam status menginap. Untuk mengisi tanggal pulang pada sistem BPJS/SEP, hanya dapat dilakukan dengan menerima file hasil entrian dari sistem INA-CBGs (kemenkes). Namun hal ini biasa dilakukan/diberikan oleh pihak RS kepada pihak BPJS pada beberapa hari kemudian. Untuk mengantisipasi kasus penolakan terhadap pasien, dibutuhkan suatu sistem yang dapat meng-update data pasien pada BPJS melalui sistem RS. Disinilah fungsi ini berguna untuk meng-update tanggal pulang pasien pada data BPJS yang mana saat sistem RS melakukan update tanggal pulang pada sistem RS, sekaligus mengakses WebService ini agar data pasien terupdate pada server BPJS. URL Production : http://IP_ADDRESS:PORT/SepLokalRest/sep/updtglplg/ Request Method : PUT Header : Content-type: application/xml x-cons-id: …. x-timestamp: …. x-signature: ... Data: <request> <data> <t_sep> <noSep>1234567890123456789</noSep> <tglPlg>2013-07-26 13:05:03</tglPlg> <ppkPelayanan>0901R001</ppkPelayanan> </t_sep> </data> </request> Keterangan: noSep : no transaksi SEP tglPlg : tanggal pulang pasien ppkPelayanan: kode RS anda (versi BPJS), akan di-validasi oleh service, pastikan gunakan userID service yang sesuai 8. Menyimpan mapping data transaksi >> hanya ada pada Web Service lokal Setelah sistem RS men-generate SEP dan menyimpan transaksi pendaftaran pada sistem RS, maka data masing-masing no transaksi unik disimpan pada 2 sistem (BPJS dan RS). Fungsi ini berguna untuk menyimpan no transaksi tersebut, agar nantinya dapat melakukan audit trail yang lebih efisien URL Production : http://IP_ADDRESS:PORT/SepLokalRest/sep/map/trans/ Request Method : POST Header : Content-type: application/xml x-cons-id: …. x-timestamp: …. x-signature: ... Data: <request> <data> <t_map_sep> <noSep>1234567890123456789</noSep> <noTrans>98765432109876543210</noTrans> <ppkPelayanan>0901R001</ppkPelayanan> </t_map_sep> </data> </request> Keterangan: noSep : no transaksi SEP noTrans : no transaksi pada aplikasi RS ppkPelayanan: kode RS anda (versi BPJS), akan di-validasi oleh service, pastikan gunakan userID service yang sesuai 9. Menghapus data transaksi SEP >> hanya ada pada Web Service lokal Data SEP yang dapat dihapus hanya jika data tersebut belum dibuatkan FPK/tagihan ke Kantor Cabang BPJS setempat. URL Production : http://IP_ADDRESS:PORT/SepLokalRest/sep/ Request Method : DELETE Header : Content-type: application/xml x-cons-id: …. x-timestamp: …. x-signature: ... Data: <request> <data> <t_sep> <noSep>1234567890123456789</noSep> <ppkPelayanan>0901R001</ppkPelayanan> </t_sep> </data> </request> Keterangan: noSep : no transaksi SEP ppkPelayanan: kode RS anda (versi BPJS), akan di-validasi oleh service, pastikan gunakan userID service yang sesuai 10. Mencari 5 (lima) riwayat kunjungan terakhir peserta >> hanya ada pada Web Service lokal Melihat data 5 (lima) riwayat kunjungan terakhir peserta yang dimaksud. Dapat digunakan untuk menjadi acuan dalam meng-update tanggal pulang peserta, jika telah pulang. URL: http://IP_ADDRESS:PORT/SepLokalRest/sep/peserta/{noKartu} Request Method : GET Parameter: noKartu : no kartu BPJS Output: Format_Riwayat_Kunjungan_Peserta Contoh: URL : http://IP_ADDRESS:PORT/SepLokalRest//sep/peserta/0000142495694 Format_Riwayat_Kunjungan_Peserta { response : { start : 1 limit : 5 count: 5 list: [5] 0: { noSep: "0902R00106140001988" tglSep: "2014-06-03 00:00:00" tglPulang: "1900-01-01 12:00:00" jnsPelayanan: "Rawat Jalan" -poliTujuan: { kdPoli: "JIW" nmPoli: "Poli Penyakit Jiwa" } } -1: { noSep: "0902R00105140001855" tglSep: "2014-05-05 00:00:00" tglPulang: "2014-05-05 00:00:00" jnsPelayanan: "Rawat Jalan" -poliTujuan: { kdPoli: "JIW" nmPoli: "Poli Penyakit Jiwa" } } -2: { noSep: "0902R00104140003884" tglSep: "2014-04-04 00:00:00" tglPulang: "2014-04-04 00:00:00" jnsPelayanan: "Rawat Jalan" -poliTujuan: { kdPoli: "JIW" nmPoli: "Poli Penyakit Jiwa" } } -3: { noSep: "0902R00103140022235" tglSep: "2014-03-24 00:00:00" tglPulang: "2014-03-24 00:00:00" jnsPelayanan: "Rawat Jalan" -poliTujuan: { kdPoli: "JIW" nmPoli: "Poli Penyakit Jiwa" } } -4: { noSep: "0902R00103140014204" tglSep: "2014-03-13 00:00:00" tglPulang: "2014-03-13 00:00:00" jnsPelayanan: "Rawat Jalan" -poliTujuan: { kdPoli: "JIW" nmPoli: "Poli Penyakit Jiwa" } } } -metaData: { message: "OK" code: 200 } } 11. Mencari detail SEP >> hanya ada pada Web Service lokal Melihat detail keterangan dari SEP . URL Production : http://IP_ADDRESS:PORT/SepLokalRest/sep/{noSEP} Request Method : GET Parameter: noSEP : no Transaksi SEP Output: Format_Detail_SEP Contoh: URL : http://IP_ADDRESS:PORT/SepLokalRest/sep/0902R00101140000004 Format_Detail_SEP { -response: { sep: { noSep: "0902R00101140000004" -peserta: { noKartu: "0000047622846" nik: null nama: "HJ.UMRAH-HERRIYANRI" pisa: "3" sex: "P" tglLahir: "1951-10-16 00:00:00" tglCetakKartu: "2009-10-30 00:00:00" provUmum: { kdProvider: "10050201" nmProvider: "CIPUTAT" kdCabang: null nmCabang: null } jenisPeserta: { kdJenisPeserta: "15" nmJenisPeserta: "BUKAN PEKERJA LAIN-LAIN" } kelasTanggungan: { kdKelas: "1" nmKelas: "Kelas I" } } tglSep: "2014-01-02 00:00:00" tglRujukan: "2014-01-02 00:00:00" tglPulang: "2014-01-02 00:00:00" noRujukan: "" provRujukan: { kdProvider: "09020100" nmProvider: "KEC TEBET" kdCabang: null nmCabang: null } provPelayanan: { kdProvider: "0902R001" nmProvider: "RSUP FATMAWATI" kdCabang: null nmCabang: null } jnsPelayanan: "Rawat Jalan" catatan: "" diagAwal: { kdDiag: "T843" nmDiag: "Mechanical comp other bone devices implants & grafts" } poliTujuan: { kdPoli: "BED" nmPoli: "Poli Bedah" } klsRawat: { kdKelas: "3" nmKelas: "Kelas III" } statSep: { kdStatSep: "40" nmStatSep: "40_Proses_Cabang" } byTagihan: 378878 } } -metaData: { message: "OK" code: 200 } } 12. Mencari PPK Rujukan >> hanya ada pada Web Service lokal Mencari PPK berdasarkan kode atau nama untuk mengisi PPK rujukan. URL Production : http://IP_ADDRESS:PORT/SepLokalRest/ref/provider/query?nama=xx x&start=1&limit=10 Request Method : GET Parameter: xxx : Kode PPK atau Nama PPK Output: Format_Nama_PPK Contoh: URL : http://IP_ADDRESS:PORT/SepLokalRest/ref/provider/query?nama=kebayoran&start=1&li mit=10 Format_Nama_PPK { response: { start: 1 limit: 10 count: 76 list: [4] 0: { kdProvider: "09020500" nmProvider: "KEC KEBAYORAN BARU (Puskesmas)" kdCabang: "0902" nmCabang: "JAKARTA SELATAN" } -1: { kdProvider: "09020600" nmProvider: "KEC KEBAYORAN LAMA (Puskesmas)" kdCabang: "0902" nmCabang: "JAKARTA SELATAN" } -2: { kdProvider: "09020601" nmProvider: "KEL KEBAYORAN LAMA UTARA (Puskesmas)" kdCabang: "0902" nmCabang: "JAKARTA SELATAN" } -3: { kdProvider: "09020608" nmProvider: "KEL KEBAYORAN LAMA SELATAN (Puskesmas)" kdCabang: "0902" nmCabang: "JAKARTA SELATAN" } } -metaData: { message: "200" code: 200 } } Dipublikasikan oleh Google Drive–Laporkan Penyalahgunaan –Dimutakhirkan secara otomatis setiap 5 menit