Skip to content

Cypher Procedures

This page provides a complete reference to the available procedures.

List of procedures

db.ping

Description

This procedure can be used by client side tooling to test whether they are correctly connected to a database. The procedure always returns true.

Signature

db.ping() :: (success :: BOOLEAN)

db.labels

Description

List all labels attached to nodes.

Signature

db.labels() :: (label :: STRING)

db.propertyKeys

Description

List all attributes in the database.

Signature

db.propertyKeys() :: (propertyKey :: STRING)

db.relationshipTypes

Description

List all types attached to relationships.

Signature

db.relationshipTypes() :: (relationshipType :: STRING)

db.schema.nodeTypeProperties

Description

Show the derived property schema of the nodes in tabular form.

Signature

db.schema.nodeTypeProperties() :: (nodeType :: STRING, nodeLabels :: LIST<STRING>, propertyName :: STRING, propertyTypes :: LIST<STRING>, mandatory :: BOOLEAN)

db.schema.relTypeProperties

Description

Show the derived property schema of the relationships in tabular form.

Signature

db.schema.relTypeProperties() :: (relType :: STRING, propertyName :: STRING, propertyTypes :: LIST<STRING>, mandatory :: BOOLEAN)

db.schema.visualization

Description

Visualizes the schema of the data based on available statistics. A new node is returned for each label. The properties represented on the node include: name (label name), indexes (list of indexes), and constraints (list of constraints). A relationship of a given type is returned for all possible combinations of start and end nodes. The properties represented on the relationship include: name (type name).

Signature

db.schema.visualization() :: (nodes :: LIST<NODE>, relationships :: LIST<RELATIONSHIP>)

db.info

Description

Provides information regarding the database.

Signature

db.info() :: (id :: STRING, name :: STRING, creationDate :: STRING)

dbms.info

Description

Provides information regarding the DBMS. The info returned is the same as db.info

Signature

dbms.info() :: (id :: STRING, name :: STRING, creationDate :: STRING)

dbms.components

Description

Show PuppyGraph's version and edition.

Signature

dbms.components() :: (name :: STRING, versions :: LIST<STRING>, edition :: STRING)

puppy.schema.updateLocalTablePeriodicLoad

Description

Enables, changes, or disables Periodic Load for a local table. Periodic Load is experimental. The argument is a map, or the same content as a JSON string, with localTableName and periodicLoad. Each call replaces the table's whole periodicLoad object, so restate every option you want to keep. See Periodic Load options for the fields of periodicLoad.

An invalid request returns success as false with the reason in error_message. The query fails instead when the procedure is called with other than one argument, or, when authentication is enabled, when the caller lacks GRAPH:write or DATA:write. See Permissions.

Signature

puppy.schema.updateLocalTablePeriodicLoad(request :: MAP) :: (success :: BOOLEAN, error_message :: STRING)

Example

CALL puppy.schema.updateLocalTablePeriodicLoad({
  localTableName: 'orders_local',
  periodicLoad: {
    enabled: true,
    intervalSeconds: 3600
  }
})
YIELD success, error_message