SetDirectory["C:\\drorbn\\AcademicPensieve\\2014-04\\MathematicaWikiLink"];
<< WikiLink2.m;
urls={"http://drorbn.net/", "http://katlas.org/w/"};
url=urls[[2]];
username="DrorsRobot";
Clear[password];
password:= password=InputString["Password for "<>username<>": "]

?WikiConnection

?$WikiConnection

?CreateWikiConnection

CreateWikiConnection[url]

CreateWikiConnection[url, username, password]

?WikiGetPageText

WikiGetPageText["The_Mathematica_Package_KnotTheory`"]

WikiGetPageText[{"The_Mathematica_Package_KnotTheory`", "Template:Manual TOC Sidebar"}]

?WikiGetPageTexts

WikiGetPageTexts[{"The_Mathematica_Package_KnotTheory`", "Template:Manual TOC Sidebar"}]

?WikiSetPageText

{
DateString[],
WikiSetPageText["sandbox", "Sandbox by WikiLink2 on "<>DateString[], "Just testing "<>DateString[]]
}

?WikiSetPageTexts

{
DateString[],
WikiSetPageTexts[{
{"sandbox", "Sandbox by WikiLink2 on "<>DateString[]}, 
{"sandbox1", "Sandbox1 by WikiLink2 on "<>ToString[$SessionID]}
}, "Just testing "<>DateString[]]
}

WikiUploadFile - in progress

?WikiUploadFile

BinaryReadList["SandboxDate.png"] //Short

WikiUploadFile[name_String, description_String] := WikiUploadFile[$WikiConnection, name, description];
WikiUploadFile[wc_WikiConnection, name_String, description_String] := URLFetch[wc@"apiurl",
"Parameters" -> {"action" -> "upload", "filename" -> name, "text" -> description, "format" -> "xml", "token" -> wc@"edittoken"},
"MultipartData"->{{"file", "application/octet-stream",BinaryReadList[name]}},
"Method"->"POST", "Cookies"-> wc@"cookies", "StoreCookies"->False
];
{ds=DateString[],
name=Export["SandboxDate.png", ds],
WikiUploadFile[name, "SandboxDate.png by WikiLink2 on "<>ds]
}

f@@@{1->2,2->3}

WikiUploadFile[name_String, description_String] := WikiUploadFile[$WikiConnection, name, description];
WikiUploadFile[wc_WikiConnection, name_String, description_String] := URLFetch[wc@"apiurl",
"MultipartData"->Append[
{#1, "text/plain", ToCharacterCode@#2}& @@@ {
"action" -> "upload", "filename" -> name, "text" -> description, "format" -> "xml", "token" -> wc@"edittoken"
},
{"file", "application/octet-stream",BinaryReadList[name]}
],
"Method"->"POST", "Cookies"-> wc@"cookies", "StoreCookies"->False
];
{ds=DateString[],
name=Export["SandboxDate.png", ds],
WikiUploadFile[name, "SandboxDate.png by WikiLink2 on "<>ds]
}

Attempt following http://mathematica.stackexchange.com/questions/52338/more-complete-mutipartdata-posts-using-urlfetch/97658#97658:

$WikiConnection@"edittoken"

WikiUploadFile[name_String, description_String] := WikiUploadFile[$WikiConnection, name, description];
WikiUploadFile[wc_WikiConnection, name_String, description_String] :=URLExecute[wc@"apiurl"; "http://requestb.in/1jorke91",
"Method"->"POST",
"Cookies"-> wc@"cookies",
"StoreCookies"->False,
"MultipartElements"->{
{"file\"; action=\"upload\"; text=\""<>description<>"\"; format=\"xml\"; token=\""<>(wc@"edittoken")<>"\\\"; filename=\""<>name,"application/octet-stream",Import[name,"Byte"]}
},
"Headers"->{
"Accept"->"application/json; charset=UTF-8","Content-Type"->"multipart/form-data"
}
];
{ds=DateString[],
name=Export["SandboxDate.png", ds],
WikiUploadFile[name, "SandboxDate.png by WikiLink2 on "<>ds]
}