def search(server_name, url_suff, kbase_id, req_payload, org_id, token, search_size=1): full_addr = server_name + url_suff["search"] full_addr = full_addr.format(knowledgebaseId=kbase_id) req = HTTPRequest(full_addr, "POST") for key in req_payload.keys(): req.payload_append(key, req_payload[key]) req.payload_append("pageSize", search_size) req.payload_append("pageNumber", 1) req.payload_append("languageCode", "en-US") req.payload_append("documentType", "Faq") req.add_header("Content-Type", "application/json") req.add_header("organizationid", org_id) req.add_header("token", token) req.add_header("cache-control", "no-cache") response = (req.post()) print("Response status: ", response.status_code) resp_json = response.json() if resp_json.get("results"): results = resp_json["results"] else: results = [] return results
def create_kbase(server_name, url_suff, payload_info, org_id, token, kbase_responses={}): # Check if # of databases exceeds limit (5) if len(kbase_responses.items()) == 5: return {}, full_addr = server_name + url_suff["create_kbase"] req = HTTPRequest(full_addr, "POST") for key in payload_info.keys(): req.payload_append(key, payload_info[key]) #'Content-Type': "application/json", #'organizationid': "3ae6bd8b-23b6-47c7-a9a0-8dc56833ca18", #'token': "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJvcmdJZCI6IjNhZTZiZDhiLTIzYjYtNDdjNy1hOWEwLThkYzU2ODMzY2ExOCIsImV4cCI6MTU3MTUxNjYyOCwiaWF0IjoxNTcxNTEzMDI4fQ.S1mQ4sdeSaPhTCwUodVOb6QW3yOzTnQKOunSU732SSI", #'cache-control': "no-cache", req.add_header("Content-Type", "application/json") req.add_header("organizationid", org_id) req.add_header("token", token) req.add_header("cache-control", "no-cache") response = req.post() print(response) print("response: ", response.json())
def upload_doc(server_name, url_suff, kbase_id, lang_code, payload, org_id, token, categories={}): full_addr = server_name + url_suff["upload_doc"] full_addr = full_addr.format(knowledgebaseId=kbase_id, languageCode=lang_code) req = HTTPRequest(full_addr, "POST") req.payload_append("type", "faq") key = "faq" val = {"question": payload["question"], "answer": payload["answer"], "alternatives": []} req.payload_append(key, val) key = "categories" val = [] for elem1, elem2 in categories.items(): val.append({elem1: elem2}) req.payload_append(key, val) req.payload_append("externalUrl", "") req.add_header("Content-Type", "application/json") req.add_header("organizationid", org_id) req.add_header("token", token) req.add_header("cache-control", "no-cache") response = req.post() print("RESPONSE CODE: ",response.status_code) print("RESPONSE JSON: ",response.json()) return response.status_code
def delete_kbase(org_id, token, server_name, url_suff, kbase_id): print("IN DELETE!!!!") full_addr = server_name + url_suff["delete_kbase"] full_addr += kbase_id req = HTTPRequest(full_addr, "DELETE") req.add_header("Content-Type", "application/json") req.add_header("organizationid", org_id) req.add_header("token", token) req.add_header("cache-control", "no-cache") response = req.delete() print("Response: ", response, ", Response Code:", response.status_code) return response.status_code
def view_doc(server_name, url_suff, kbase_id, lang_code, doc_id, org_id, token): full_addr = server_name + url_suff["view_doc"] full_addr = full_addr.format(knowledgebaseId=kbase_id, languageCode=lang_code, documentId=doc_id) req = HTTPRequest(full_addr, "GET") #response_list = [] req.add_header("Content-Type", "application/json") req.add_header("organizationid", org_id) req.add_header("token", token) req.add_header("cache-control", "no-cache") response = req.get() return response.json()
def train_model(server_name, url_suff, kbase_id, lang_code, org_id, token): full_addr = server_name + url_suff["train_model"] full_addr = full_addr.format(knowledgebaseId=kbase_id, languageCode=lang_code) req = HTTPRequest(full_addr, "POST") req.add_header("Content-Type", "application/json") req.add_header("organizationid", org_id) req.add_header("token", token) req.add_header("cache-control", "no-cache") response = req.post() response_dict = response.json() print(response.status_code) training_id = response_dict["id"] return (training_id)
def view_trained_model(server_name, url_suff, kbase_id, lang_code, training_id, org_id, token): full_addr = server_name + url_suff["view_trained_model"] full_addr = full_addr.format(knowledgebaseId=kbase_id, languageCode=lang_code, trainingId=training_id) req = HTTPRequest(full_addr, "GET") req.add_header("Content-Type", "application/json") req.add_header("organizationid", org_id) req.add_header("token", token) req.add_header("cache-control", "no-cache") response = req.get() print(response.status_code) resp_json = response.json() print("json response: ", resp_json) return resp_json
def view_kbase(server_name, url_suff, org_id, token, limit=1, kbase_id=None): full_addr = server_name + url_suff["view_kbase"] response_list = [] print('kbase_id in view_kbase', kbase_id) if kbase_id: full_addr += '/' + kbase_id req = HTTPRequest(full_addr, "GET") req.add_header("Content-Type", "application/json") req.add_header("organizationid", org_id) req.add_header("token", token) req.add_header("cache-control", "no-cache") response = req.get() response_dict = response.json() if response_dict.status_code == 200: response_list.append(response_dict) else: full_addr += '?limit={0}'.format(limit) req = HTTPRequest(full_addr, "GET") req.add_header("Content-Type", "application/json") req.add_header("organizationid", org_id) req.add_header("token", token) req.add_header("cache-control", "no-cache") response = req.get() print("Response:", response) response_dict = response.json() if response.status_code == 200: response_list = response_dict["entities"] print("Resp List", response_list) # while response_dict.get("nextUri") != None: # print("in loop") # full_addr = server_name + url_suff["view_kbase"] # full_addr += '?limit={0}'.format(limit) # full_addr += response_dict.get("nextUri") # req = HTTPRequest(full_addr, "GET") # response = req.get() # response_dict = response.json() # if response.status_code == 200: # response_list.append(response_dict) ret_list = [] for elem in response_list: ret_list.append(elem['id']) return ret_list return response_list