MCPcopy Create free account
hub / github.com/MemTensor/MemOS / add_knowledgebase_file_json

Method add_knowledgebase_file_json

src/memos/api/client.py:286–313  ·  view source on GitHub ↗

add knowledgebase-file from json

(
        self, knowledgebase_id: str, file: list[dict[str, Any]]
    )

Source from the content-addressed store, hash-verified

284 raise
285
286 def add_knowledgebase_file_json(
287 self, knowledgebase_id: str, file: list[dict[str, Any]]
288 ) -> MemOSAddKnowledgebaseFileResponse | None:
289 """
290 add knowledgebase-file from json
291 """
292 # Validate required parameters
293 self._validate_required_params(knowledgebase_id=knowledgebase_id, file=file)
294
295 url = f"{self.base_url}/add/knowledgebase-file"
296 payload = {
297 "knowledgebase_id": knowledgebase_id,
298 "file": file,
299 }
300
301 for retry in range(MAX_RETRY_COUNT):
302 try:
303 response = requests.post(
304 url, data=json.dumps(payload), headers=self.headers, timeout=30
305 )
306 response.raise_for_status()
307 response_data = response.json()
308
309 return MemOSAddKnowledgebaseFileResponse(**response_data)
310 except Exception as e:
311 logger.error(f"Failed to add knowledgebase-file json (retry {retry + 1}/3): {e}")
312 if retry == MAX_RETRY_COUNT - 1:
313 raise
314
315 def add_knowledgebase_file_form(
316 self, knowledgebase_id: str, files: list[str]

Callers

nothing calls this directly

Calls 4

errorMethod · 0.65
jsonMethod · 0.45

Tested by

no test coverage detected