1.0
API mengirim data mapping kegiatan ke SIPD
POST https://sipd.go.id/run/serv/push_mapping?kodepemda={kodepemda}
Name | Value |
---|---|
authentication | Bearer [key] |
content_type | application/json |
Parameter | Description | Optional | Default |
---|---|---|---|
kodepemda | Diisi dengan kode pemda |
Field | Type | Description | Example |
---|---|---|---|
kodepemda | String | 4 digit kode pemda sesuai Permendagri 137/2017 | 9100 |
data | Object[] | data mapping (Array of Object) | |
kodebidang | String | kode bidang program | 1.01 |
kodeprogram | String | kode program | 1.01-001 |
kodekegiatan | String | kode kegiatan | 1.01-001.0001 |
uraikegiatan | String | uraian kegiatan | Penyediaan jasa surat menyurat |
mapping | Array[] | kode sub kegiatan pmdn90 dari basis | ["X.XX.01.1.03.01"] |
JSON
POST | https://sipd.go.id/run/serv/push_mapping?kodepemda=9100 |
authentication: Bearer [key]
content_type: application/json
{
"kodepemda": "9100",
"data": [
{
"kodebidang": "1.01",
"kodeprogram": "1.01-001",
"kodekegiatan": "1.01-001.0001",
"uraikegiatan": "Penyediaan jasa surat menyurat",
"mapping": [
"X.XX.01.1.03.01"
]
},
{
"kodebidang": "1.01",
"kodeprogram": "1.01-001",
"kodekegiatan": "1.01-001.0002",
"uraikegiatan": "Penyediaan jasa komunikasi, sumber daya air dan listrik",
"mapping": null
}
]
}
{
"code": 200,
"msg": "Sukses menyimpan 916 byte tunggu proses ekstraksi",
"log": [
"9100.1.01.1.01-001,1.01-001.0001 OK",
"9100.1.01.1.01-001,1.01-001.0002 OK",
"COMMIT TRANS",
"",
"Exe time: 0.023054122924805 detik"
]
}
{
"code": 200,
"msg": "Sukses menyimpan 916 byte tunggu proses ekstraksi",
"log": [
"9100.1.01.1.01-001,1.01-001.0001 OK",
"ERROR: 9100.1.01.1.01-001,1.01-001.0002x Kegiatan Pemda yang ada di SIPD tidak ditemukan",
"ERROR: 9100.1.01.1.01-001,1.01-001.0002 Subkegiatan [\"X.XX.01.1.03.02x\"] di PMDN90 tidak ditemukan",
"ROLLBACK TRANS",
"",
"Exe time: 0.023054122924805 detik"
]
}
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_mapping?kodepemda={$kodepemda}', false, $context);
$result = json_encode($http_response_header,JSON_FORCE_OBJECT|JSON_PRETTY_PRINT)."\n".$result;
return $result;
}
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "/run/serv/push_mapping?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);
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_mapping?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());
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_mapping?kodepemda="+kodepemda, data=postdata, headers=headers, verify=False)
print(r.text)
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_mapping?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());
}
}
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_mapping?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;