API mengirim data Rancangan Awal RKPD Pemda ke SIPD

Resource URL

POST https://sipd.go.id/run/serv/push_ranwal?tahun={tahun}&kodepemda={kodepemda}

Headers

NameValue
authentication Bearer [key]
content_type application/json

Parameters

ParameterDescriptionOptionalDefault
tahun Diisi dengan tahun perencanaan
kodepemda Diisi dengan kode pemda

Request Parameter

Field Type Description Example
kodepemda String 4 digit kode pemda sesuai Permendagri 137/2017 9100
tahun Integer perencanaan tahun n 2019
kodebidang String kode kidang SKPD 1.01
uraibidang String uraian bidang SKPD Pendidikan
kodeskpd String kode SKPD 1.01.0101
uraiskpd String uraian SKPD Dinas Pendidikan
pejabat Object data Pejabat
  kepalanip String NIP kepala (Object of pejabat) 19600000 000000 0 001
  kepalanama String nama kepala (Object of pejabat) Dr. Didik, M.Pd.
  kepalajabatan String jabatan kepala (Object of pejabat) Kepala Dinas Pendidikan
  kepalapangkat String pangkat Kepala (Object of pejabat) Pembina Tingkat I
pilihanbidang Array[] bidang urusan SKPD ["1.01", "1.06"]
program Object[] data program (Array of Object)
  kodebidang String kode bidang program 1.01
  uraibidang String uraian bidang Pendidikan
  kodeprogram String kode program 1.01-0001
  uraiprogram String uraian program Program Pelayanan Administrasi Perkantoran
  prioritas Object[] data prioritas nasional, provinsi, daerah (Array of Object) [{"prioritasnasional": "Prioritas Nasional"}, {"prioritasprovinsi": "Meningkatkan indeks provinsi"}]
    prioritasnasional String prioritas nasional (Object of prioritas) {"prioritasnasional": "Prioritas Nasional"}
    prioritasprovinsi String prioritas provinsi (Object of prioritas) {"prioritasprovinsi": "Meningkatkan indeks provinsi"}
    prioritasdaerah String prioritas daerah (Object of prioritas) {"prioritasdaerah": "Meningkatkan kesejahteraan rakyat"}
  capaian Object[] capaian program (Array of Object)
    kodeindikator String kode indikator 1
    tolokukur String uraian tolok ukur Jumlah unit kerja OPD yang terlayani
    satuan String satuan Unit
    real_p3 Numeric realisasi capaian tahun n-3 1500
    pagu_p3 Numeric pagu capaian tahun n-3 0
    real_p2 Numeric realisasi capaian tahun n-2 1500
    pagu_p2 Numeric pagu capaian tahun n-2 0
    real_p1 Numeric realisasi capaian tahun n-1 1500
    pagu_p1 Numeric pagu capaian tahun n-1 0
    target Numeric|String target capaian tahun n 1500
    pagu Numeric pagu capaian tahun n 0
    pagu_p Numeric pagu perubahan tahun n 0
    target_n1 String|Numeric target capaian tahun n+1 1500
    pagu_n1 Numeric pagu capaian tahun n+1 0
  kegiatan Object[] kegiatan (Array of Object)
    kodekegiatan String kode kegiatan 1.01-0001.0001
    uraikegiatan String uraian kegiatan Penyediaan jasa surat menyurat
    pagu Numeric pagu kegiatan tahun n 700000000
    pagu_p Numeric pagu perubahan kegiatan tahun n 0
    sumberdana Object[] sumber dana kegiatan (Array of Object) [{"kodesumberdana": 1, "sumberdana": "DAU","pagu": 700000000}]
      kodesumberdana String kode sumberdana kegiatan (Object of sumberdana) 1
      sumberdana String pagu kegiatan (Object of sumberdana) DAU
      pagu Numeric pagu kegiatan (Object of sumberdana) 700000000
    prioritas Object[] referensi lihat program -> prioritas
    lokasi Object[] lokasi (Array of Object) [{"kodelokasi": "91.71","lokasi": "Kota Jayapura","detaillokasi": }]
      kodelokasi String kode lokasi sesuai Permendagri 137/2017 91.71
      lokasi String nama lokasi sesuai Permendagri 137/2017 Kota Jayapura
      lokasi String detail lokasi
    indikator Object[] indikator kegiatan (Array of Object)
      kodeindikator String kode indikator kegiatan 1
      jenis String jenis indikator KELUARAN
      tolokukur String tolok ukur indikator Jumlah surat yang disediakan
      satuan String satuan indikator Surat
      real_p3 Numeric realisasi indikator tahun n-3 1000
      pagu_p3 Numeric pagu indikator tahun n-3 0
      real_p2 Numeric realisasi indikator tahun n-2 1000
      pagu_p2 Numeric pagu indikator tahun n-2 0
      real_p1 Numeric realisasi indikator tahun n-1 1000
      pagu_p1 Numeric pagu indikator tahun n-1 0
      target String|Numeric target indikator tahun n 1000
      pagu Numeric pagu indikator tahun n 700000000
      pagu_p Numeric pagu perubahan indikator tahun n 0
      target_n1 String|Numeric target indikator tahun n+1 1000
      pagu_n1 Numeric pagu indikator tahun n+1 0
    subkegiatan Object[] sub kegiatan (Array of Object)
      kodesubkegiatan String kode sub kegiatan 1.01-01.01.01
      uraisubkegiatan String uraian sub kegiatan Penyediaan Jasa Surat Menyurat
      pagu Numeric pagu sub kegiatan tahun n 700000000
      pagu_p Numeric pagu perubahan sub kegiatan tahun n 0
      sumberdana Object[] referensi lihat program -> kegiatan -> sumberdana [{"kodesumberdana": 1, "sumberdana": "DAU","pagu": 700000000}]
      prioritas Object[] referensi lihat program -> prioritas [{"prioritasdaerah": "Meningkatkan kesejahteraan rakyat"}]
      lokasi Object[] referensi lihat program -> kegiatan -> lokasi [{"kodelokasi": "91.71","lokasi": "Kota Jayapura","detaillokasi": }]
      indikator Object[] indikator sub kegiatan (Array of Object)
        kodeindikator String kode indikator sub kegiatan 1
        jenis String jenis indikator sub kegiatan KELUARAN
        tolokukur String tolok ukur indikator Jumlah surat yang disediakan
        satuan String satuan indikator sub kegiatan Surat
        real_p3 Numeric realisasi indikator sub kegiatan tahun n-3 1000
        pagu_p3 Numeric pagu indikator sub kegiatan tahun n-3 0
        real_p2 Numeric realisasi indikator sub kegiatan tahun n-2 1000
        pagu_p2 Numeric pagu indikator sub kegiatan tahun n-2 0
        real_p1 Numeric realisasi indikator sub kegiatan tahun n-1 1000
        pagu_p1 Numeric pagu indikator sub kegiatan tahun n-1 0
        target String|Numeric target indikator sub kegiatan tahun n 1000
        pagu Numeric pagu indikator sub kegiatan tahun n 700000000
        pagu_p Numeric pagu perubahan indikator sub kegiatan tahun n 0
        target_n1 String|Numeric target indikator sub kegiatan tahun n+1 4000
        pagu_n1 Numeric pagu indikator sub kegiatan tahun n+1 0

Response Format

JSON

Example

POST https://sipd.go.id/run/serv/push_ranwal?tahun=2019&kodepemda=9100

Header

  authentication: Bearer [key]
content_type: application/json  

Request

  [
    {
        "kodepemda": "9100",
        "tahun": "2019",
        "kodebidang": "1.01",
        "uraibidang": "Pendidikan",
        "kodeskpd": "1.01.0101",
        "uraiskpd": "Dinas Pendidikan",
        "pejabat": {
            "kepalanip": "",
            "kepalanama": "",
            "kepalajabatan": "",
            "kepalapangkat": ""
        },
        "pilihanbidang": [
            "1.01"
        ],
        "uraiurusan": "Urusan Wajib Pelayanan Dasar",
        "program": [
            {
                "kodebidang": "1.01",
                "uraibidang": "Pendidikan",
                "kodeprogram": "1.01-0001",
                "uraiprogram": "Program Pelayanan Administrasi Perkantoran",
                "prioritas": [],
                "capaian": [
                    {
                        "kodeindikator": "1",
                        "tolokukur": "Jumlah unit kerja OPD yang terlayani",
                        "satuan": "Unit",
                        "real_p3": "1500",
                        "pagu_p3": "0",
                        "real_p2": "1500",
                        "pagu_p2": "0",
                        "real_p1": "1500",
                        "pagu_p1": "0",
                        "target": "1500",
                        "pagu": "0.00",
                        "pagu_p": "0",
                        "target_n1": "1500",
                        "pagu_n1": "0"
                    }
                ],
                "kegiatan": [
                    {
                        "kodekegiatan": "1.01-0001.0001",
                        "uraikegiatan": "Penyediaan jasa surat menyurat",
                        "pagu": "700000000.00",
                        "pagu_p": null,
                        "sumberdana": [
                            {
                              "pagu": 500000000,
                              "sumberdana": "DAU",
                              "kodesumberdana": 1
                            },
                            {
                              "pagu": 200000000,
                              "sumberdana": "DAK",
                              "kodesumberdana": 2
                            }
                        ],
                        "prioritas": [
                            {
                                "prioritasnasional": "Prioritas Nasional"
                            },
                            {
                                "prioritasprovinsi": "Meningkatkan indeks provinsi"
                            },
                            {
                                "prioritasdaerah": "Meningkatkan kesejahteraan rakyat"
                            },
                            {
                                "prioritasdaerah": "Pemantapan tata kelola pemerintahan"
                            }
                        ],
                        "lokasi": [
                            {
                                "lokasi": "Kota Jayapura",
                                "kodelokasi": "91.71",
                                "detaillokasi": ""
                            },
                            {
                                "kodelokasi": "",
                                "lokasi": "New York",
                                "detaillokasi": ""
                            }
                        ],
                        "indikator": [
                            {
                                "kodeindikator": "1",
                                "jenis": "KELUARAN",
                                "tolokukur": "Jumlah surat yang disediakan",
                                "satuan": "Surat",
                                "real_p3": "1000",
                                "pagu_p3": "0",
                                "real_p2": "1000",
                                "pagu_p2": "0",
                                "real_p1": "1000",
                                "pagu_p1": "0",
                                "target": "1000",
                                "pagu": "700000000.00",
                                "pagu_p": "0",
                                "target_n1": "4000",
                                "pagu_n1": "0"
                            }
                        ],
                        "subkegiatan": [
                           {
                             "kodesubkegiatan": "1.01-01.01.01",
                             "uraisubkegiatan": "Penyediaan Jasa Surat Menyurat",
                             "pagu": "700000000.00",
                             "pagu_p": null,
                             "sumberdana": [],
                             "prioritas": [],
                             "lokasi": [],
                             "indikator": [
                                  {
                                   "kodeindikator": "1",
                                   "jenis": "KELUARAN",
                                   "tolokukur": "Jumlah surat yang disediakan",
                                   "satuan": "Surat",
                                   "real_p3": "1000",
                                   "pagu_p3": "0",
                                   "real_p2": "1000",
                                   "pagu_p2": "0",
                                   "real_p1": "1000",
                                   "pagu_p1": "0",
                                   "target": "1000",
                                   "pagu": "700000000.00",
                                   "pagu_p": "0",
                                   "target_n1": "4000",
                                   "pagu_n1": "0"
                                }
                               ]
                           }
                        ]
                    }
                ]
            }
        ]
    }
]  

Response

  Response:{"code":200,"msg":"Sukses menyimpan 78902 byte"}
2020.2104.4.03.01.Badan Perencanaan, Penelitian Dan Pengembangan
0.00.4.03.01.001 Program Pelayanan Administrasi Perkantoran
0.00.4.03.01.001(1) Cakupan pelayanan administrasi perkantoran
0.00.4.03.01.001.001 Penyediaan jasa surat menyurat
0.00.4.03.01.001.001(1) jumlah surat administrasi dan bermaterai
Exe time: 0.15083289146423 detik  

Error Response

    

Code Usage Examples

PHP

  function postBangda($postdata,$bearer,$tahun,$kodepemda){
    $opts = array(
      'ssl' => array(
        'verify_peer' => false,
      ),
      'http'=>array(
        'ignore_errors' => true,
        'method'=>  "POST",
        'header'=>  "Accept: application/json\r\n" .
              "Authorization: Bearer {$bearer}\r\n" .
              "Content-Type: application/json\r\n",
        'content' => $postdata
      )
    );


    $context = stream_context_create($opts);
    $result = file_get_contents('/run/serv/push_ranwal?tahun={$tahun}&kodepemda={$kodepemda}', false, $context);
    $result = json_encode($http_response_header,JSON_FORCE_OBJECT|JSON_PRETTY_PRINT)."\n".$result;
    return $result;
  }  

PHP with cURL

  $curl = curl_init();
  curl_setopt_array($curl, array(
   CURLOPT_URL => "/run/serv/push_ranwal?tahun=".$tahun."&kodepemda=".$kodepemda,
   CURLOPT_RETURNTRANSFER => true,
   CURLOPT_POST => true,
   CURLOPT_SSL_VERIFYHOST => false,
   CURLOPT_SSL_VERIFYPEER => false,
   CURLOPT_MAXREDIRS => 10,
   CURLOPT_TIMEOUT => 30,
   CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
   CURLOPT_POSTFIELDS => $postdata,
   CURLOPT_HTTPHEADER => array(
      "Content-Type: application/json",
      "Authorization: Bearer ".$APIKEY,
    )
  ));
  $response = curl_exec($curl);
  curl_close($curl);  

Java

  String TAHUN = "2019";
  String KODEPEMDA = "9100";
  String APIKEY = "diisiapikey";

  // Create a trust manager that does not validate certificate chains
  TrustManager[] trustAllCerts = new TrustManager[]{
      new X509TrustManager() {
          public java.security.cert.X509Certificate[] getAcceptedIssuers() {
              return null;
          }
          public void checkClientTrusted(
              java.security.cert.X509Certificate[] certs, String authType) {
          }
          public void checkServerTrusted(
              java.security.cert.X509Certificate[] certs, String authType) {
          }
      }
  };

  // Install the all-trusting trust manager
  try {
      SSLContext sc = SSLContext.getInstance("SSL");
      sc.init(null, trustAllCerts, new java.security.SecureRandom());
      HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
  } catch (Exception e) {
  }

  URL bangdaurl = new URL("/run/serv/push_ranwal?tahun="+tahun+"&kodepemda="+kodepemda);
  HttpsURLConnection con = (HttpsURLConnection)bangdaurl.openConnection();
  con.setRequestMethod("POST");
  con.setRequestProperty("Content-Type","application/json");
  con.setRequestProperty("Accept","application/json");
  con.setRequestProperty("Authorization","Bearer "+APIKEY);
  con.setDoOutput(true);
  con.setDoInput(true);
  DataOutputStream output = new DataOutputStream(con.getOutputStream());
  output.writeBytes(JSONDATA);
  output.close();

  DataInputStream input = new DataInputStream( con.getInputStream() );
  for( int c = input.read(); c != -1; c = input.read() )
  System.out.print( (char)c );
  input.close();
  System.out.println("Resp Code:"+con .getResponseCode());
  System.out.println("Resp Message:"+ con .getResponseMessage());  

Python

  import requests
  tahun = "2019"
  kodepemda = "9100"
  APIKEY = "APIKEY"
  postdata = "isijsonsesuaiformat"

  headers = {
      "authorization": "Bearer: "+APIKEY,
      "accept": "application/json",
      "content-type": "application/json"
  }
  requests.packages.urllib3.disable_warnings()
  r = requests.post("'/run/serv/push_ranwal?tahun="+tahun+"&kodepemda="+kodepemda, data=postdata, headers=headers, verify=False)
  print(r.text)  

C#

  private static void postBangda(string tahun,string kodepemda,string json){

  HttpClientHandler handler = new HttpClientHandler();
  handler.ClientCertificateOptions = ClientCertificateOption.Manual;
  handler.ServerCertificateCustomValidationCallback = (httpRequestMessage, cert, cetChain, policyErrors) => { return true; };

  HttpClient client = new HttpClient(handler);
  client.DefaultRequestHeaders.Accept.Clear();
  client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
  client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", "APIKEY");
  StringContent postdata = new StringContent(json, Encoding.UTF8, "application/json");
  var res = client.PostAsync("/run/serv/push_ranwal?tahun="+tahun+"&kodepemda="+kodepemda, postdata);

    try
    {
        res.Result.EnsureSuccessStatusCode();

        Console.WriteLine("Response " + res.Result.Content.ReadAsStringAsync().Result);

    }
    catch (Exception ex)
    {
        Console.WriteLine("Error " + res + " Error " + ex.ToString());
    }
  }  

Delphi/Pascal

  uses IdHTTP, IdSSLOpenSSL;

  function postHTTP(tahun,kodepemda,apikey:string;postdata:TStringStream):string;
  var IdHTTP1 : TIdHTTP;
      IdSSLIOHandlerSocket1 : TIdSSLIOHandlerSocket;
      Url : string;
  begin
    //require libeay32.dll dan libssl32.dll

    Url := '/run/serv/push_ranwal?tahun='+tahun+'&kodepemda='+kodepemda;
    IdSSLIOHandlerSocket1 := TIdSSLIOHandlerSocket.Create(nil);
    IdHTTP1 := TIdHTTP.Create(nil);
    try
      with IdSSLIOHandlerSocket1 do
      begin
        SSLOptions.Method := sslvTLSv1;
        SSLOptions.Mode := sslmClient;
        SSLOptions.VerifyMode := [];
        SSLOptions.VerifyDepth := 0;
      end;
      with IdHTTP1 do
      begin
        IOHandler := IdSSLIOHandlerSocket1;
        HandleRedirects := True;
        AllowCookies := True;
        Request.ContentType := 'application/json';
        Request.Accept := 'application/json';
        Request.CustomHeaders.Values['Authorization'] := 'Bearer '+apikey;
        HTTPOptions := [hoForceEncodeParams];
      end;
      try
        IdHTTP1.Head(Url);
      except
        //mancing IOHandler dan OpenSSL e baku tukar key
      end;
      try
        Result := IdHTTP1.Post(Url,postdata);
      except
        raise;
      end;
      IdSSLIOHandlerSocket1.Close;
    finally
      IdHTTP1.Free;
      IdSSLIOHandlerSocket1.Free;
    end;
  end;