forked from DS4SD/deepsearch-toolkit
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathswagger-kg-create.json
1 lines (1 loc) · 17.6 KB
/
swagger-kg-create.json
1
{"basePath":"/api/kg/create/v1","consumes":["application/json"],"definitions":{"MongoEdge":{"example":{"name":"Documents-to-Paragraphs","source":[{"category":"Documents","fields":["_sources"]}],"symmetric":true,"target":[{"category":"Paragraphs","fields":["_hash"]}]},"properties":{"name":{"type":"string"},"source":{"items":{"$ref":"#/definitions/mongoEdgeItem"},"type":"array"},"symmetric":{"default":true,"type":"boolean"},"target":{"items":{"$ref":"#/definitions/mongoEdgeItem"},"type":"array"}},"required":["name","source","target"],"type":"object"},"arrayOfEdgeMatrices":{"items":{"$ref":"#/definitions/edgeMatrix"},"type":"array"},"arrayOfEdgeMatricesWithHashes":{"items":{"example":{"elements":{"I":["node-hash-i"],"J":["node-hash-j"],"W":[1]},"name":"foo-to-bar"},"properties":{"elements":{"items":{"$ref":"#/definitions/sparseMatrixWithNamesOrHashes"},"type":"object"},"name":{"type":"string"}},"required":["name","elements"],"type":"object"},"type":"array"},"arrayOfEdgeMatricesWithNames":{"items":{"example":{"elements":{"I":["node-name-i"],"J":["node-name-j"],"W":[1]},"name":"foo-to-bar"},"properties":{"elements":{"items":{"$ref":"#/definitions/sparseMatrixWithNamesOrHashes"},"type":"object"},"name":{"type":"string"}},"required":["name","elements"],"type":"object"},"type":"array"},"arrayOfEdgeMatricesWithNamesOrHashes":{"items":{"properties":{"elements":{"items":{"$ref":"#/definitions/sparseMatrixWithNamesOrHashes"},"type":"object"},"name":{"type":"string"}},"required":["name","elements"],"type":"object"},"type":"array"},"arrayOfEdgeNameTriples":{"items":{"properties":{"elements":{"items":{"$ref":"#/definitions/triplet"},"type":"array"},"name":{"type":"string"}},"required":["name","elements"],"type":"object"},"type":"array"},"arrayOfEdgeNames":{"items":{"properties":{"name":{"type":"string"}},"required":["name"],"type":"object"},"type":"array"},"arrayOfEdges":{"items":{"$ref":"#/definitions/edgeModel"},"type":"array"},"arrayOfMongoEdges":{"items":{"$ref":"#/definitions/MongoEdge"},"type":"array"},"arrayOfNodes":{"items":{"$ref":"#/definitions/node"},"type":"array"},"arrayOfSources":{"items":{"$ref":"#/definitions/databaseSource"},"type":"array"},"databaseSource":{"properties":{"categories":{"items":{"type":"string"},"type":"array"},"collections":{"items":{"type":"string"},"type":"array"},"data-fields":{"items":{"type":"string"},"type":"array"},"mongo":{"properties":{"database":{"type":"string"},"uri":{"example":"mongodb://username:password@host:port/?ssl=false","type":"string"}},"required":["uri","database"],"type":"object"},"s3":{"properties":{"access-key":{"type":"string"},"bucket":{"type":"string"},"host":{"type":"string"},"is_secure":{"type":"boolean"},"port":{"type":"integer"},"secret-key":{"type":"string"}},"required":["host","port","access-key","secret-key","bucket"],"type":"object"}},"required":["collections","categories"],"type":"object"},"edgeMatrix":{"example":{"elements":{"I":[0],"J":[1],"W":[1]},"name":"foo-to-bar"},"properties":{"elements":{"items":{"properties":{"I":{"items":{"type":"integer"},"type":"array"},"J":{"items":{"type":"integer"},"type":"array"},"W":{"items":{"format":"float","type":"number"},"type":"array"}},"required":["I","J"],"type":"object"},"type":"object"},"name":{"type":"string"}},"required":["name","elements"],"type":"object"},"edgeModel":{"properties":{"name":{"type":"string"},"source-categories":{"items":{"type":"string"},"type":"array"},"symmetric":{"type":"boolean"},"target-categories":{"items":{"type":"string"},"type":"array"}},"required":["name","symmetric"],"type":"object"},"mongoEdgeItem":{"properties":{"category":{"type":"string"},"fields":{"items":{"type":"string"},"type":"array"}},"required":["category","fields"],"type":"object"},"node":{"properties":{"categories":{"items":{"type":"string"},"type":"array"},"database":{"type":"object"},"hash":{"type":"string"},"name":{"type":"string"},"synonyms":{"items":{"type":"string"},"type":"array"}},"required":["name"],"type":"object"},"s3Source":{"description":"The S3 coordinates","properties":{"access-key":{"type":"string"},"host":{"type":"string"},"is_secure":{"default":false,"type":"boolean"},"location":{"type":"string"},"port":{"type":"integer"},"secret-key":{"type":"string"},"verify":{"default":false,"type":"boolean"}},"required":["host","port","access-key","secret-key"],"type":"object"},"sparseMatrixWithNamesOrHashes":{"properties":{"I":{"items":{"type":"string"},"type":"array"},"J":{"items":{"type":"string"},"type":"array"},"W":{"items":{"format":"float","type":"number"},"type":"array"}},"required":["I","J"],"type":"object"},"triplet":{"properties":{"i":{"type":"string"},"j":{"type":"string"},"w":{"type":"number"}},"required":["i","j"],"type":"object"}},"info":{"title":"Knowledge-Graph Create API","version":"1.0.0"},"paths":{"/clear":{"post":{"description":"Clear the current in-memory graph","operationId":"clear_graph","produces":["application/json"],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Knowledge-Graphs"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/edges/create":{"post":{"description":"Create new edges.","operationId":"create_edges","parameters":[{"description":"The edges is an array of objects. Each of the objects contains the name of the edge, its symmetry and optionally its source and target categories.","in":"body","name":"edges","required":true,"schema":{"$ref":"#/definitions/arrayOfEdges"},"x-examples":{"default":"[\n {\n \"name\": \"foo-to-bar\",\n \"symmetric\": true,\n \"source-categories\" : [\"category-1\"],\n \"target-categories\" : [\"category-2\", \"category-3\"]\n }\n]\n"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Edges"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/edges/delete":{"delete":{"description":"Delete an edge in the graph.","operationId":"delete_edges","parameters":[{"description":"Name of the edges to be deleted","in":"query","items":{"type":"string"},"name":"names","required":true,"type":"array"}],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Edges"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/edges/update/Mongo":{"post":{"description":"Update the edges from documents in Mongo-DB's.","operationId":"update_edges_from_mongo","parameters":[{"description":"The edges is an array of objects. Each of the objects contains the name of the edge, the source and target node-categories (which points to ingested MongoDB's used for the node creation)","in":"body","name":"edges","required":true,"schema":{"$ref":"#/definitions/arrayOfMongoEdges"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Edges"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/edges/update/hashes":{"post":{"description":"Update the matrix of a(n) edge(s) using the node-hashes.","operationId":"update_edges_from_hashes","parameters":[{"description":"The operation-type that is performed when updating the edge.","enum":["SET","ADD"],"in":"query","name":"operation","required":true,"type":"string"},{"description":"The parameters is an array of objects. Each of the objects contains the name of the edge and the elements (the arrays \"I\", \"J\" and \"W\"). The arrays are encoded according to the encoding type.","in":"body","name":"edges","required":true,"schema":{"$ref":"#/definitions/arrayOfEdgeMatricesWithHashes"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Edges"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/edges/update/indices":{"post":{"description":"Update the matrix of a(n) edge(s) using the node-indices.","operationId":"update_edges_from_indices","parameters":[{"description":"The encoding of the indices in the sparse matrix.","enum":["COO"],"in":"query","name":"encoding","required":true,"type":"string"},{"description":"The operation-type that is performed when updating the edge.","enum":["SET","ADD"],"in":"query","name":"operation","required":true,"type":"string"},{"description":"The parameters is an array of objects. Each of the objects contains the name of the edge and the elements (the arrays \"I\", \"J\" and \"W\"). The arrays are encoded according to the encoding type.","in":"body","name":"edges","required":true,"schema":{"$ref":"#/definitions/arrayOfEdgeMatrices"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Edges"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/edges/update/names":{"post":{"description":"Update the matrix of a(n) edge(s) using the node-names.","operationId":"update_edges_from_names","parameters":[{"description":"The operation-type that is performed when updating the edge.","enum":["SET","ADD"],"in":"query","name":"operation","required":true,"type":"string"},{"description":"The parameters is an array of objects. Each of the objects contains the name of the edge and the elements (the arrays \"I\", \"J\" and \"W\"). The arrays are encoded according to the encoding type.","in":"body","name":"edges","required":true,"schema":{"$ref":"#/definitions/arrayOfEdgeMatricesWithNames"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Edges"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/edges/update/triplets":{"post":{"description":"Update the matrix of a(n) edge(s) using triplets (in which node i & j are referred to by name or hash).","operationId":"update_edges_from_triplets","parameters":[{"description":"The operation-type that is performed when updating the edge.","enum":["SET","ADD"],"in":"query","name":"operation","required":true,"type":"string"},{"description":"The edges is an array of objects. Each of the objects contains the name of the edge and the elements.","in":"body","name":"edges","required":true,"schema":{"$ref":"#/definitions/arrayOfEdgeNameTriples"},"x-examples":{"default":"[\n {\n \"name\": \"foo-to-bar\",\n \"elements\": [\n {\n \"i\" : \"name-i\",\n \"j\" : \"name-j\",\n \"w\" : 1.0\n }\n ]\n }\n]\n"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Edges"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/indices/build":{"post":{"description":"Rebuild the indices for fast node-lookup and node-search.","operationId":"rebuild_indices","parameters":[{"default":"true","description":"Rebuild the node sets for the categories and databases.","enum":["true","false"],"in":"query","name":"nodeSets","required":true,"type":"string"},{"default":"true","description":"Rebuild the node tables for the node-name search.","enum":["true","false"],"in":"query","name":"nodeTables","required":true,"type":"string"}],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Indices"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/load/graph/disk":{"post":{"description":"Load a graph from disk","operationId":"load_graph_from_disk","parameters":[{"description":"The root path on disk where we store the KG.","in":"query","name":"root","required":true,"type":"string"},{"description":"The name of the current KG.","in":"query","name":"name","required":true,"type":"string"}],"produces":["application/json"],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Knowledge-Graphs"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/load/graph/s3":{"post":{"description":"Load a graph from object-store using S3-API.","operationId":"load_graph_from_s3","parameters":[{"in":"body","name":"arguments","required":false,"schema":{"properties":{"bucket":{"description":"Bucket name to retrieve graph","type":"string"},"key":{"description":"Object key name","type":"string"},"s3_coordinates":{"$ref":"#/definitions/s3Source"}},"required":["key"],"type":"object"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Knowledge-Graphs"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/nodes/create":{"post":{"description":"Creates a set of new nodes in the graph.","operationId":"create_nodes","parameters":[{"description":"Categories to which the newly created nodes belong","in":"query","items":{"type":"string"},"name":"categories","required":true,"type":"array"},{"description":"number of nodes to be created","in":"query","name":"size","required":true,"type":"integer"}],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Nodes"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/nodes/ingest":{"post":{"description":"Create a set of new nodes in the graph\n","operationId":"ingest_nodes","parameters":[{"description":"Array of nodes","in":"body","name":"nodes","required":true,"schema":{"$ref":"#/definitions/arrayOfNodes"}},{"default":"false","description":"Rebuild the node lookup-indices after ingestion.","enum":["true","false"],"in":"query","name":"rebuildIndices","required":true,"type":"string"}],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Nodes"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/nodes/ingest/Mongo":{"post":{"description":"Create a set of new nodes in the graph from a Mongo-DB","operationId":"ingest_nodes_mongo","parameters":[{"description":"Array of Mongo-databases/collections to ingest.","in":"body","name":"databases","required":true,"schema":{"$ref":"#/definitions/arrayOfSources"}},{"default":"false","description":"Rebuild the node lookup-indices after ingestion.","enum":["true","false"],"in":"query","name":"rebuildIndices","required":true,"type":"string"}],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Nodes"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/save/edges/disk":{"post":{"description":"Saves all edges on disk in CSV format.","operationId":"save_edges_on_disk","parameters":[{"description":"The root path on disk where we store the KG.","in":"query","name":"root","required":true,"type":"string"},{"description":"The name of the folder where all edges will be stored in csv format.","in":"query","name":"name","required":true,"type":"string"}],"produces":["application/json"],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Knowledge-Graphs"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/save/edges/s3":{"post":{"description":"Saves all edges of the graph in CSV format on object-store using S3-API.","operationId":"save_edges_on_s3","parameters":[{"in":"body","name":"arguments","required":true,"schema":{"properties":{"bucket":{"description":"Bucket name to retrieve graph","type":"string"},"key":{"description":"Object key name","type":"string"},"s3_coordinates":{"$ref":"#/definitions/s3Source"}},"required":["key"],"type":"object"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Knowledge-Graphs"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/save/graph/disk":{"post":{"description":"Save a graph on disk","operationId":"save_graph_on_disk","parameters":[{"description":"The root path on disk where we store the KG.","in":"query","name":"root","required":true,"type":"string"},{"description":"The name of the current KG.","in":"query","name":"name","required":true,"type":"string"}],"produces":["application/json"],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Knowledge-Graphs"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/save/graph/s3":{"post":{"description":"Save a graph from object-store using S3-API.","operationId":"save_graph_on_s3","parameters":[{"in":"body","name":"arguments","required":false,"schema":{"properties":{"bucket":{"description":"Bucket name to retrieve graph","type":"string"},"key":{"description":"Object key name","type":"string"},"s3_coordinates":{"$ref":"#/definitions/s3Source"}},"required":["key"],"type":"object"}}],"produces":["application/json"],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Knowledge-Graphs"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/tasks/result":{"get":{"description":"returns the result of the asynchronous task","operationId":"async_task_result","parameters":[{"description":"The UUID of the task.","in":"query","name":"UUID","required":true,"type":"string"}],"produces":["application/json"],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Tasks"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}},"/tasks/status":{"get":{"description":"returns the status of the asynchronous task","operationId":"async_task_status","parameters":[{"description":"The UUID of the task.","in":"query","name":"UUID","required":true,"type":"string"},{"default":false,"in":"query","name":"thorough","required":false,"type":"boolean"}],"produces":["application/json"],"responses":{"200":{"description":"OK"}},"security":[{"Bearer":[]}],"tags":["Tasks"],"x-swagger-router-controller":"create_v1.controllers.default_controller"}}},"produces":["application/json"],"schemes":["https","http"],"securityDefinitions":{"Bearer":{"description":"For accessing the API a valid JWT token must be passed in all the queries in\nthe 'Authorization' header.\n\nA valid JWT token is generated by the API and returned.\n\nThe following syntax must be used in the 'Authorization' header :\n Bearer: xxxxxx.yyyyyyy.zzzzzz\n","in":"header","name":"Authorization","type":"apiKey","x-apikeyInfoFunc":"src.utils.connexion_auth.api_key_info"}},"swagger":"2.0"}