Change Password

Please enter the password.
Please enter the password. Between 8-64 characters. Not identical to your email address. Contain at least 3 of: uppercase, lowercase, numbers, and special characters.
Please enter the password.
Submit

Change Nickname

Current Nickname:
Submit

Apply New License

License Detail

Please complete this required field.

  • Ultipa Graph V4

Standalone

Please complete this required field.

Please complete this required field.

The MAC address of the server you want to deploy.

Please complete this required field.

Please complete this required field.

Cancel
Apply
ID
Product
Status
Cores
Applied Validity Period(days)
Effective Date
Excpired Date
Mac Address
Apply Comment
Review Comment
Close
Profile
  • Full Name:
  • Phone:
  • Company:
  • Company Email:
  • Country:
  • Language:
Change Password
Apply

You have no license application record.

Apply
Certificate Issued at Valid until Serial No. File
Serial No. Valid until File

Not having one? Apply now! >>>

Product Created On ID Amount (USD) Invoice
Product Created On ID Amount (USD) Invoice

No Invoice

v4.5
Search
    Français
    v4.5

      RESTful API

      Cet article présente la procédure minimale d'utilisation du proxy Ultipa RESTful API.

      Change Log (V4.0 à V4.2)

      • Utilisation de Go SDK v4.2
      • Abandon du paramètre de ligne de commande -bodytype
      • Ajout des interfaces /uql/stream, /update/nodes et /update/edges

      Prérequis

      • un terminal en ligne de commande compatible avec votre système d'exploitation :
      • une version de Ultipa Importer compatible avec votre système d'exploitation

      Démarrer le service API

      1. Afficher l'aide

      ./ultipa_restful_api.exe --help
      
      1. Afficher la version actuelle

      ./ultipa_restful_api.exe --version
      
      1. Démarrer le service API

      ./ultipa_restful_api.exe --hosts 192.168.1.85:61095,192.168.1.87:61095,192.168.1.88:61095 -u employee -p joaGsdf -w 3
      

      Note: -hosts, -u et -p sont équivalents à --hosts, --username et --password

      Autres paramètres :

      Paramètre
      Description
      Valeur par défaut
      -l --listen Le réseau et le port initial à écouter 0.0.0.0:7001
      -w --workers Le nombre de workers en arrière-plan (threads), ex : 5 workers seront les 7001-7005 par défaut 0
      -g --graph Le nom du graphset 'default'
      -b --boost Utiliser SimpleCache (Ne pas utiliser le cache)
      -c --consistency Utiliser le leader pour garantir une lecture cohérente (Ne pas utiliser le leader)
      -batch --batch La taille du lot (nombre d'enregistrements) pour /insert/nodes et /insert/edges 5000
      -d --duration Le temps d'attente pour l'insertion par lot (millisecondes) 1000
      -hb --heartbeat Les secondes du heartbeat pour toutes les instances 5
      -sd --schema_cache_duration Les millisecondes du heartbeat lors de l'acquisition de la liste des schémas pendant l'insertion 5000

      Informations de base de l'API

      • Type de requête : POST
      • URL de la requête :
        • Linux : le serveur Ultipa auquel le service API actuel se connecte, par exemple 'http://192.168.1.88'
        • Windows/MacOS : l'adresse locale du service API actuel, 'http://127.0.0.1'
      • Port de la requête : les ports valides définis via -w et -l lors du démarrage du service API
      • Type de paramètre du corps : JSON, FORM

      Se connecter au service Ultipa

      • URL de la requête

      .../login
      
      • Exemple de requête

      {
          "username": "employee",
          "password": "joaGsdf"
      }
      
      • Réponse : la valeur du token après connexion

      Les autres interfaces API doivent toutes comporter cette valeur token dans le Cookie dans les En-têtes, ultipa=<token_value>, avec Content_Type application/json.

      Envoyer UQL

      • URL de la requête

      .../uql
      
      • Paramètre de la requête
      Paramètre Type Obligatoire
      Description
      uql string oui Instruction UQL
      graph string non Le nom du graphset (valeur par défaut : le graphset désigné lors du démarrage du service API)
      • Exemple de requête

      {
          "uql": "find().nodes({name == \"abc\"}) return count(nodes)",
          "graph": "test_text"
      }
      
      • Réponse de succès

      {
          "Data": [
              {
                  "Name": "count(nodes)",
                  "PropertyType": 4,
                  "Rows": [
                      2
                  ]
              }
          ],
          "Graph": "test_text",
          "Statistic": {
              "NodeAffected": 0,
              "EdgeAffected": 0,
              "TotalCost": 0,
              "EngineCost": 0
          },
          "Status": {
              "Message": "",
              "Code": 0
          }
      }
      

      Envoyer UQL et limiter les retours

      • URL de la requête

      .../uql/stream
      
      • Paramètre de la requête
      Paramètre Type Obligatoire
      Description
      uql string oui Instruction UQL
      graph string non Le nom du graphset (valeur par défaut : le graphset désigné lors du démarrage du service API)
      package_num int non Le nombre de paquets à retourner (valeur par défaut : 0, requête mais ne pas retourner)
      • Exemple de requête

      {
          "uql": "find().nodes({name == \"abc\"}) return nodes",
          "graph": "test_text",
          "package_num": 1
      }
      
      • Réponse de succès

      Insérer des Nodes

      • URL de la requête

      .../insert/nodes
      
      • Paramètre de la requête
      Paramètre Type Obligatoire
      Description
      nodes [{},{},...] (JSON), map (FORM) oui Propriétés de Node, doivent inclure toutes les propriétés personnalisées, ne pas supporter _uuid; dans des outils tels que Postman, définir plusieurs nodes de type {} comme paramètre FORM
      schema string oui Node schema
      graph string non Le nom du graphset (valeur par défaut : le graphset désigné lors du démarrage du service API)
      sync bool non Si retourner le statut de la requête (valeur par défaut : false). Une valeur 'true' induira un temps d'attente de batch (-d, --duration) lorsque le volume de données est inférieur à la taille de batch (-b, --batch), ce qui affectera la performance d'insertion
      • Exemple de requête

      {
          "nodes": [{"name":"Jason","_id":"USER001"},{"name":"Alice"}],
          "schema": "default",
          "graph": "test_text",
          "sync": true
      }
      
      • Réponse de succès

      {
          "Msg": "Insert Nodes Success: [{\"_id\":\"USER001\",\"name\":\"Jason\"},{\"name\":\"Alice\"}]"
      }
      

      Insérer des Edges

      • URL de la requête

      .../insert/edges
      
      • Paramètre de la requête
      Paramètre Type Obligatoire
      Description
      edges [{},{},...] (JSON), map (FORM) oui Propriétés d'Edge, doivent inclure _from&_to et toutes les propriétés personnalisées, ne pas supporter _uuid, _from_uuid ou _to_uuid; dans des outils tels que Postman, définir plusieurs edges de type {} comme paramètre FORM
      schema string oui Edge schema
      graph string non Le nom du graphset (valeur par défaut : le graphset désigné lors du démarrage du service API)
      sync bool non Si retourner le statut de la requête (valeur par défaut : false). Une valeur 'true' induira un temps d'attente de batch (-d, --duration) lorsque le volume de données est inférieur à la taille de batch (-b, --batch), ce qui affectera la performance d'insertion
      • Exemple de requête

      {
          "edges": [{"year":"1998", "_from":"USER001", "_to":"USER002"}],
          "schema": "default",
          "graph": "test_text",
          "sync": true
      }
      
      • Réponse de succès

      {
          "Msg": "Insert Edges Success: [{\"_from\":\"USER001\",\"_to\":\"USER002\",\"year\":\"1998\"}]"
      }
      

      Mettre à jour des Nodes

      Mettre à jour des nodes basés sur _id ou _uuid.

      • URL de la requête

      .../update/nodes
      
      • Paramètre de la requête
      Paramètre Type Obligatoire
      Description
      nodes [{},{},...] (JSON), map (FORM) oui Propriétés de Node, doivent inclure _id ou _uuid, si les deux sont inclus alors ignorer _uuid; dans des outils tels que Postman, définir plusieurs nodes de type {} comme paramètre FORM
      graph string non Le nom du graphset (valeur par défaut : le graphset désigné lors du démarrage du service API)
      • Exemple de requête

      {
          "nodes": [{"age":"35", "_id":"USER001"}, {"name":"John", "_id": "USER002"}],
          "graph": "test_text"
      }
      
      • Réponse de succès

      {
          "Msg": "Update nodes on test_text",
          "SuccessCount": 2
      }
      

      Mettre à jour des Edges

      Mettre à jour des edges basés sur _from&_to ou _uuid.

      • URL de la requête

      .../update/edges
      
      • Paramètre de la requête
      Paramètre Type Obligatoire
      Description
      edges [{},{},...] (JSON), map (FORM) oui Propriétés d'Edge, doivent inclure _from&_to ou _uuid, si les deux sont inclus alors ignorer _uuid; dans des outils tels que Postman, définir plusieurs edges de type {} comme paramètre FORM
      graph string non Le nom du graphset (valeur par défaut : le graphset désigné lors du démarrage du service API)
      • Exemple de requête

      {
          "edges": [{"_uuid":"1","_from_uuid":"2", "age":"55"}],
          "graph": "test_text"
      }
      
      • Réponse de succès

      {
          "Msg": "Update edges on test_text",
          "SuccessCount": 1
      }
      
      Please complete the following information to download this book
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写