Is returned if the module is available and the graphs could be listed.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
graphs*[object]
A list of all named graphs.
graph*object
The properties of the named graph.
_id*string
The internal id value of this graph.
_rev*string
The revision of this graph. Can be used to make sure to not override
concurrent modifications to this graph.
edgeDefinitions*[object]
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edge are stored in.
from*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _to is in any of the collections here.
isDisjoint*boolean
Whether the graph is a Disjoint SmartGraph (Enterprise Edition only).
isSatellite*boolean
Flag if the graph is a SatelliteGraph (Enterprise Edition only) or not.
isSmart*boolean
Whether the graph is a SmartGraph (Enterprise Edition only).
name*string
The name of the graph.
numberOfShards*integer
Number of shards created for every new collection in the graph.
orphanCollections*[string]
An array of additional vertex collections.
Documents within these collections do not have edges within this graph.
replicationFactor*integer
The replication factor used for every new collection in the graph.
For SatelliteGraphs, it is the string "satellite" (Enterprise Edition only).
smartGraphAttribute*string
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcern*integer
The default write concern for new collections in the graph.
It determines how many copies of each shard are required to be
in sync on the different DB-Servers. If there are less than these many copies
in the cluster, a shard refuses to write. Writes to shards with enough
up-to-date copies succeed at the same time, however. The value of
writeConcern cannot be greater than replicationFactor.
For SatelliteGraphs, the writeConcern is automatically controlled to equal the
number of DB-Servers and the attribute is not available. (cluster only)
The creation of a graph requires the name of the graph and a
definition of its edges.
Path Parameters
Query Parameters
waitForSync boolean
define if the request should wait until everything is synced to disc.
Will change the success response code.
Request Body application/json
edgeDefinitions[object]
An array of definitions for the relations of the graph.
Each has the following type:
collectionstring
Name of the edge collection, where the edge are stored in.
from[string]
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to[string]
List of vertex collection names.
Edges in collection can only be inserted if their _to is in any of the collections here.
isDisjointboolean
Whether to create a Disjoint SmartGraph instead of a regular SmartGraph
(Enterprise Edition only).
isSmartboolean
Define if the created graph should be smart (Enterprise Edition only).
name*string
Name of the graph.
optionsobject
a JSON object to define options for creating collections within this graph.
It can contain the following attributes:
numberOfShardsinteger
The number of shards that is used for every collection within this graph.
Cannot be modified later.
replicationFactorinteger
The replication factor used when initially creating collections for this graph.
Can be set to "satellite" to create a SatelliteGraph, which then ignores
numberOfShards, minReplicationFactor, and writeConcern
(Enterprise Edition only).
satellites[string]
An array of collection names that is used to create SatelliteCollections
for a (Disjoint) SmartGraph using SatelliteCollections (Enterprise Edition only).
Each array element must be a string and a valid collection name.
The collection type cannot be modified later.
smartGraphAttributestring
Only has effect in Enterprise Edition and it is required if isSmart is true.
The attribute name that is used to smartly shard the vertices of a graph.
Every vertex in this SmartGraph has to have this attribute.
Cannot be modified later.
writeConcerninteger
Write concern for new collections in the graph.
It determines how many copies of each shard are required to be
in sync on the different DB-Servers. If there are less than these many copies
in the cluster, a shard refuses to write. Writes to shards with enough
up-to-date copies succeed at the same time, however. The value of
writeConcern cannot be greater than replicationFactor.
For SatelliteGraphs, the writeConcern is automatically controlled to equal the
number of DB-Servers and the attribute is not available. (cluster only)
orphanCollections[string]
An array of additional vertex collections.
Documents within these collections do not have edges within this graph.
Responses
201
Is returned if the graph could be created and waitForSync is enabled
for the _graphs collection, or given in the request.
The response body contains the graph configuration that has been stored.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
graph*object
The information about the newly created graph.
_id*string
The internal id value of this graph.
_rev*string
The revision of this graph. Can be used to make sure to not override
concurrent modifications to this graph.
edgeDefinitions*[object]
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edge are stored in.
from*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _to is in any of the collections here.
isDisjoint*boolean
Whether the graph is a Disjoint SmartGraph (Enterprise Edition only).
isSatellite*boolean
Flag if the graph is a SatelliteGraph (Enterprise Edition only) or not.
isSmart*boolean
Whether the graph is a SmartGraph (Enterprise Edition only).
name*string
The name of the graph.
numberOfShards*integer
Number of shards created for every new collection in the graph.
orphanCollections*[string]
An array of additional vertex collections.
Documents within these collections do not have edges within this graph.
replicationFactor*integer
The replication factor used for every new collection in the graph.
For SatelliteGraphs, it is the string "satellite" (Enterprise Edition only).
smartGraphAttribute*string
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcern*integer
The default write concern for new collections in the graph.
It determines how many copies of each shard are required to be
in sync on the different DB-Servers. If there are less than these many copies
in the cluster, a shard refuses to write. Writes to shards with enough
up-to-date copies succeed at the same time, however. The value of
writeConcern cannot be greater than replicationFactor.
For SatelliteGraphs, the writeConcern is automatically controlled to equal the
number of DB-Servers and the attribute is not available. (cluster only)
202
Is returned if the graph could be created and waitForSync is disabled
for the _graphs collection and not given in the request.
The response body contains the graph configuration that has been stored.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
graph*object
The information about the newly created graph.
_id*string
The internal id value of this graph.
_rev*string
The revision of this graph. Can be used to make sure to not override
concurrent modifications to this graph.
edgeDefinitions*[object]
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edge are stored in.
from*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _to is in any of the collections here.
isDisjoint*boolean
Whether the graph is a Disjoint SmartGraph (Enterprise Edition only).
isSatellite*boolean
Flag if the graph is a SatelliteGraph (Enterprise Edition only) or not.
isSmart*boolean
Whether the graph is a SmartGraph (Enterprise Edition only).
name*string
The name of the graph.
numberOfShards*integer
Number of shards created for every new collection in the graph.
orphanCollections*[string]
An array of additional vertex collections.
Documents within these collections do not have edges within this graph.
replicationFactor*integer
The replication factor used for every new collection in the graph.
For SatelliteGraphs, it is the string "satellite" (Enterprise Edition only).
smartGraphAttribute*string
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcern*integer
The default write concern for new collections in the graph.
It determines how many copies of each shard are required to be
in sync on the different DB-Servers. If there are less than these many copies
in the cluster, a shard refuses to write. Writes to shards with enough
up-to-date copies succeed at the same time, however. The value of
writeConcern cannot be greater than replicationFactor.
For SatelliteGraphs, the writeConcern is automatically controlled to equal the
number of DB-Servers and the attribute is not available. (cluster only)
400
Returned if the request is in a wrong format.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
403
Returned if your user has insufficient rights.
In order to create a graph you at least need to have the following privileges
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
409
Returned if there is a conflict storing the graph. This can occur
either if a graph with this name is already stored, or if there is one
edge definition with a the same edge collection but a different signature
used in any other graph.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
Examples
Create a General Graph. This graph type does not make use of any sharding
strategy and is useful on the single server.
Create a disjoint SmartGraph. This graph uses 9 shards and
is sharded by the “region” attribute.
Available in the Enterprise Edition only.
Note that as you are using a disjoint version, you can only
create edges between vertices sharing the same region.
Create a SmartGraph with a satellite vertex collection.
It uses the collection “endVertices” as a satellite collection.
This collection is cloned to all servers, all other vertex
collections are split into 9 shards
and are sharded by the “region” attribute.
Available in the Enterprise Edition only.
Create a SatelliteGraph. A SatelliteGraph does not use
shards, but uses “satellite” as replicationFactor.
Make sure to keep this graph small as it is cloned
to every server.
Available in the Enterprise Edition only.
Selects information for a given graph.
Will return the edge definitions as well as the orphan collections.
Or returns a 404 if the graph does not exist.
Path Parameters
graph* string
The name of the graph.
Query Parameters
Responses
200
Returns the graph if it could be found.
The result will have the following format
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
graph*object
The information about the newly created graph
_id*string
The internal id value of this graph.
_rev*string
The revision of this graph. Can be used to make sure to not override
concurrent modifications to this graph.
edgeDefinitions*[object]
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edge are stored in.
from*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _to is in any of the collections here.
isDisjoint*boolean
Whether the graph is a Disjoint SmartGraph (Enterprise Edition only).
isSatellite*boolean
Flag if the graph is a SatelliteGraph (Enterprise Edition only) or not.
isSmart*boolean
Whether the graph is a SmartGraph (Enterprise Edition only).
name*string
The name of the graph.
numberOfShards*integer
Number of shards created for every new collection in the graph.
orphanCollections*[string]
An array of additional vertex collections.
Documents within these collections do not have edges within this graph.
replicationFactor*integer
The replication factor used for every new collection in the graph.
For SatelliteGraphs, it is the string "satellite" (Enterprise Edition only).
smartGraphAttribute*string
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcern*integer
The default write concern for new collections in the graph.
It determines how many copies of each shard are required to be
in sync on the different DB-Servers. If there are less than these many copies
in the cluster, a shard refuses to write. Writes to shards with enough
up-to-date copies succeed at the same time, however. The value of
writeConcern cannot be greater than replicationFactor.
For SatelliteGraphs, the writeConcern is automatically controlled to equal the
number of DB-Servers and the attribute is not available. (cluster only)
404
Returned if no graph with this name could be found.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
Adds a vertex collection to the set of orphan collections of the graph.
If the collection does not exist, it will be created.
Path Parameters
graph* string
The name of the graph.
Query Parameters
Request Body application/json
optionsobject
A JSON object to set options for creating vertex collections.
satellites[string]
An array of collection names that is used to create SatelliteCollections
for a (Disjoint) SmartGraph using SatelliteCollections (Enterprise Edition only).
Each array element must be a string and a valid collection name.
The collection type cannot be modified later.
Responses
201
Is returned if the collection could be created and waitForSync is enabled
for the _graphs collection, or given in the request.
The response body contains the graph configuration that has been stored.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
graph*object
The information about the modified graph.
_id*string
The internal id value of this graph.
_rev*string
The revision of this graph. Can be used to make sure to not override
concurrent modifications to this graph.
edgeDefinitions*[object]
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edge are stored in.
from*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _to is in any of the collections here.
isDisjoint*boolean
Whether the graph is a Disjoint SmartGraph (Enterprise Edition only).
isSatellite*boolean
Flag if the graph is a SatelliteGraph (Enterprise Edition only) or not.
isSmart*boolean
Whether the graph is a SmartGraph (Enterprise Edition only).
name*string
The name of the graph.
numberOfShards*integer
Number of shards created for every new collection in the graph.
orphanCollections*[string]
An array of additional vertex collections.
Documents within these collections do not have edges within this graph.
replicationFactor*integer
The replication factor used for every new collection in the graph.
For SatelliteGraphs, it is the string "satellite" (Enterprise Edition only).
smartGraphAttribute*string
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcern*integer
The default write concern for new collections in the graph.
It determines how many copies of each shard are required to be
in sync on the different DB-Servers. If there are less than these many copies
in the cluster, a shard refuses to write. Writes to shards with enough
up-to-date copies succeed at the same time, however. The value of
writeConcern cannot be greater than replicationFactor.
For SatelliteGraphs, the writeConcern is automatically controlled to equal the
number of DB-Servers and the attribute is not available. (cluster only)
202
Is returned if the collection could be created and waitForSync is disabled
for the _graphs collection, or given in the request.
The response body contains the graph configuration that has been stored.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
graph*object
The information about the newly created graph
_id*string
The internal id value of this graph.
_rev*string
The revision of this graph. Can be used to make sure to not override
concurrent modifications to this graph.
edgeDefinitions*[object]
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edge are stored in.
from*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _to is in any of the collections here.
isDisjoint*boolean
Whether the graph is a Disjoint SmartGraph (Enterprise Edition only).
isSatellite*boolean
Flag if the graph is a SatelliteGraph (Enterprise Edition only) or not.
isSmart*boolean
Whether the graph is a SmartGraph (Enterprise Edition only).
name*string
The name of the graph.
numberOfShards*integer
Number of shards created for every new collection in the graph.
orphanCollections*[string]
An array of additional vertex collections.
Documents within these collections do not have edges within this graph.
replicationFactor*integer
The replication factor used for every new collection in the graph.
For SatelliteGraphs, it is the string "satellite" (Enterprise Edition only).
smartGraphAttribute*string
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcern*integer
The default write concern for new collections in the graph.
It determines how many copies of each shard are required to be
in sync on the different DB-Servers. If there are less than these many copies
in the cluster, a shard refuses to write. Writes to shards with enough
up-to-date copies succeed at the same time, however. The value of
writeConcern cannot be greater than replicationFactor.
For SatelliteGraphs, the writeConcern is automatically controlled to equal the
number of DB-Servers and the attribute is not available. (cluster only)
400
Returned if the request is in an invalid format.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
403
Returned if your user has insufficient rights.
In order to modify a graph you at least need to have the following privileges
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
404
Returned if no graph with this name could be found.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
Removes a vertex collection from the graph and optionally deletes the collection,
if it is not used in any other graph.
It can only remove vertex collections that are no longer part of edge definitions,
if they are used in edge definitions you are required to modify those first.
Path Parameters
graph* string
The name of the graph.
collection* string
The name of the vertex collection.
Query Parameters
dropCollection boolean
Drop the collection as well.
Collection will only be dropped if it is not used in other graphs.
Responses
200
Returned if the vertex collection was removed from the graph successfully
and waitForSync is true.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
graph*object
The information about the newly created graph
_id*string
The internal id value of this graph.
_rev*string
The revision of this graph. Can be used to make sure to not override
concurrent modifications to this graph.
edgeDefinitions*[object]
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edge are stored in.
from*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _to is in any of the collections here.
isDisjoint*boolean
Whether the graph is a Disjoint SmartGraph (Enterprise Edition only).
isSatellite*boolean
Flag if the graph is a SatelliteGraph (Enterprise Edition only) or not.
isSmart*boolean
Whether the graph is a SmartGraph (Enterprise Edition only).
name*string
The name of the graph.
numberOfShards*integer
Number of shards created for every new collection in the graph.
orphanCollections*[string]
An array of additional vertex collections.
Documents within these collections do not have edges within this graph.
replicationFactor*integer
The replication factor used for every new collection in the graph.
For SatelliteGraphs, it is the string "satellite" (Enterprise Edition only).
smartGraphAttribute*string
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcern*integer
The default write concern for new collections in the graph.
It determines how many copies of each shard are required to be
in sync on the different DB-Servers. If there are less than these many copies
in the cluster, a shard refuses to write. Writes to shards with enough
up-to-date copies succeed at the same time, however. The value of
writeConcern cannot be greater than replicationFactor.
For SatelliteGraphs, the writeConcern is automatically controlled to equal the
number of DB-Servers and the attribute is not available. (cluster only)
202
Returned if the request was successful but waitForSync is false.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
graph*object
The information about the newly created graph
_id*string
The internal id value of this graph.
_rev*string
The revision of this graph. Can be used to make sure to not override
concurrent modifications to this graph.
edgeDefinitions*[object]
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edge are stored in.
from*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _to is in any of the collections here.
isDisjoint*boolean
Whether the graph is a Disjoint SmartGraph (Enterprise Edition only).
isSatellite*boolean
Flag if the graph is a SatelliteGraph (Enterprise Edition only) or not.
isSmart*boolean
Whether the graph is a SmartGraph (Enterprise Edition only).
name*string
The name of the graph.
numberOfShards*integer
Number of shards created for every new collection in the graph.
orphanCollections*[string]
An array of additional vertex collections.
Documents within these collections do not have edges within this graph.
replicationFactor*integer
The replication factor used for every new collection in the graph.
For SatelliteGraphs, it is the string "satellite" (Enterprise Edition only).
smartGraphAttribute*string
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcern*integer
The default write concern for new collections in the graph.
It determines how many copies of each shard are required to be
in sync on the different DB-Servers. If there are less than these many copies
in the cluster, a shard refuses to write. Writes to shards with enough
up-to-date copies succeed at the same time, however. The value of
writeConcern cannot be greater than replicationFactor.
For SatelliteGraphs, the writeConcern is automatically controlled to equal the
number of DB-Servers and the attribute is not available. (cluster only)
400
Returned if the vertex collection is still used in an edge definition.
In this case it cannot be removed from the graph yet, it has to be
removed from the edge definition first.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
403
Returned if your user has insufficient rights.
In order to drop a vertex you at least need to have the following privileges
Administrate access on the Database.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
404
Returned if no graph with this name could be found.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
Examples
You can remove vertex collections that are not used in any edge collection:
This edge definition has to contain a collection and an array of
each from and to vertex collections. An edge definition can only
be added if this definition is either not used in any other graph, or
it is used with exactly the same definition. It is not possible to
store a definition “e” from “v1” to “v2” in the one graph, and “e”
from “v2” to “v1” in the other graph.
Additionally, collection creation options can be set.
Path Parameters
graph* string
The name of the graph.
Query Parameters
Request Body application/json
collection*string
The name of the edge collection to be used.
from*[string]
One or many vertex collections that can contain source vertices.
optionsobject
A JSON object to set options for creating collections within this
edge definition.
satellites[string]
An array of collection names that is used to create SatelliteCollections
for a (Disjoint) SmartGraph using SatelliteCollections (Enterprise Edition only).
Each array element must be a string and a valid collection name.
The collection type cannot be modified later.
to*[string]
One or many vertex collections that can contain target vertices.
Responses
201
Returned if the definition could be added successfully and
waitForSync is enabled for the _graphs collection.
The response body contains the graph configuration that has been stored.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
graph*object
The information about the modified graph.
_id*string
The internal id value of this graph.
_rev*string
The revision of this graph. Can be used to make sure to not override
concurrent modifications to this graph.
edgeDefinitions*[object]
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edge are stored in.
from*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _to is in any of the collections here.
isDisjoint*boolean
Whether the graph is a Disjoint SmartGraph (Enterprise Edition only).
isSatellite*boolean
Flag if the graph is a SatelliteGraph (Enterprise Edition only) or not.
isSmart*boolean
Whether the graph is a SmartGraph (Enterprise Edition only).
name*string
The name of the graph.
numberOfShards*integer
Number of shards created for every new collection in the graph.
orphanCollections*[string]
An array of additional vertex collections.
Documents within these collections do not have edges within this graph.
replicationFactor*integer
The replication factor used for every new collection in the graph.
For SatelliteGraphs, it is the string "satellite" (Enterprise Edition only).
smartGraphAttribute*string
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcern*integer
The default write concern for new collections in the graph.
It determines how many copies of each shard are required to be
in sync on the different DB-Servers. If there are less than these many copies
in the cluster, a shard refuses to write. Writes to shards with enough
up-to-date copies succeed at the same time, however. The value of
writeConcern cannot be greater than replicationFactor.
For SatelliteGraphs, the writeConcern is automatically controlled to equal the
number of DB-Servers and the attribute is not available. (cluster only)
202
Returned if the definition could be added successfully and
waitForSync is disabled for the _graphs collection.
The response body contains the graph configuration that has been stored.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
graph*object
The information about the modified graph.
_id*string
The internal id value of this graph.
_rev*string
The revision of this graph. Can be used to make sure to not override
concurrent modifications to this graph.
edgeDefinitions*[object]
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edge are stored in.
from*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _to is in any of the collections here.
isDisjoint*boolean
Whether the graph is a Disjoint SmartGraph (Enterprise Edition only).
isSatellite*boolean
Flag if the graph is a SatelliteGraph (Enterprise Edition only) or not.
isSmart*boolean
Whether the graph is a SmartGraph (Enterprise Edition only).
name*string
The name of the graph.
numberOfShards*integer
Number of shards created for every new collection in the graph.
orphanCollections*[string]
An array of additional vertex collections.
Documents within these collections do not have edges within this graph.
replicationFactor*integer
The replication factor used for every new collection in the graph.
For SatelliteGraphs, it is the string "satellite" (Enterprise Edition only).
smartGraphAttribute*string
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcern*integer
The default write concern for new collections in the graph.
It determines how many copies of each shard are required to be
in sync on the different DB-Servers. If there are less than these many copies
in the cluster, a shard refuses to write. Writes to shards with enough
up-to-date copies succeed at the same time, however. The value of
writeConcern cannot be greater than replicationFactor.
For SatelliteGraphs, the writeConcern is automatically controlled to equal the
number of DB-Servers and the attribute is not available. (cluster only)
400
Returned if the definition could not be added.
This could be because it is ill-formed, or
if the definition is used in another graph with a different signature.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
403
Returned if your user has insufficient rights.
In order to modify a graph you at least need to have the following privileges
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
404
Returned if no graph with this name could be found.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
Change one specific edge definition.
This will modify all occurrences of this definition in all graphs known to your database.
Path Parameters
graph* string
The name of the graph.
collection* string
The name of the edge collection used in the edge definition.
Query Parameters
waitForSync boolean
Define if the request should wait until synced to disk.
dropCollections boolean
Drop the collection as well.
Collection will only be dropped if it is not used in other graphs.
Request Body application/json
collection*string
The name of the edge collection to be used.
from*[string]
One or many vertex collections that can contain source vertices.
optionsobject
A JSON object to set options for modifying collections within this
edge definition.
satellites[string]
An array of collection names that is used to create SatelliteCollections
for a (Disjoint) SmartGraph using SatelliteCollections (Enterprise Edition only).
Each array element must be a string and a valid collection name.
The collection type cannot be modified later.
to*[string]
One or many vertex collections that can contain target vertices.
Responses
201
Returned if the request was successful and waitForSync is true.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
graph*object
The information about the modified graph.
_id*string
The internal id value of this graph.
_rev*string
The revision of this graph. Can be used to make sure to not override
concurrent modifications to this graph.
edgeDefinitions*[object]
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edge are stored in.
from*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _to is in any of the collections here.
isDisjoint*boolean
Whether the graph is a Disjoint SmartGraph (Enterprise Edition only).
isSatellite*boolean
Flag if the graph is a SatelliteGraph (Enterprise Edition only) or not.
isSmart*boolean
Whether the graph is a SmartGraph (Enterprise Edition only).
name*string
The name of the graph.
numberOfShards*integer
Number of shards created for every new collection in the graph.
orphanCollections*[string]
An array of additional vertex collections.
Documents within these collections do not have edges within this graph.
replicationFactor*integer
The replication factor used for every new collection in the graph.
For SatelliteGraphs, it is the string "satellite" (Enterprise Edition only).
smartGraphAttribute*string
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcern*integer
The default write concern for new collections in the graph.
It determines how many copies of each shard are required to be
in sync on the different DB-Servers. If there are less than these many copies
in the cluster, a shard refuses to write. Writes to shards with enough
up-to-date copies succeed at the same time, however. The value of
writeConcern cannot be greater than replicationFactor.
For SatelliteGraphs, the writeConcern is automatically controlled to equal the
number of DB-Servers and the attribute is not available. (cluster only)
202
Returned if the request was successful but waitForSync is false.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
graph*object
The information about the modified graph.
_id*string
The internal id value of this graph.
_rev*string
The revision of this graph. Can be used to make sure to not override
concurrent modifications to this graph.
edgeDefinitions*[object]
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edge are stored in.
from*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _to is in any of the collections here.
isDisjoint*boolean
Whether the graph is a Disjoint SmartGraph (Enterprise Edition only).
isSatellite*boolean
Flag if the graph is a SatelliteGraph (Enterprise Edition only) or not.
isSmart*boolean
Whether the graph is a SmartGraph (Enterprise Edition only).
name*string
The name of the graph.
numberOfShards*integer
Number of shards created for every new collection in the graph.
orphanCollections*[string]
An array of additional vertex collections.
Documents within these collections do not have edges within this graph.
replicationFactor*integer
The replication factor used for every new collection in the graph.
For SatelliteGraphs, it is the string "satellite" (Enterprise Edition only).
smartGraphAttribute*string
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcern*integer
The default write concern for new collections in the graph.
It determines how many copies of each shard are required to be
in sync on the different DB-Servers. If there are less than these many copies
in the cluster, a shard refuses to write. Writes to shards with enough
up-to-date copies succeed at the same time, however. The value of
writeConcern cannot be greater than replicationFactor.
For SatelliteGraphs, the writeConcern is automatically controlled to equal the
number of DB-Servers and the attribute is not available. (cluster only)
400
Returned if the new edge definition is ill-formed and cannot be used.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
403
Returned if your user has insufficient rights.
In order to drop a vertex you at least need to have the following privileges
Administrate access on the Database.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
404
Returned if no graph with this name could be found, or if no edge definition
with this name is found in the graph.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
Remove one edge definition from the graph. This will only remove the
edge collection, the vertex collections remain untouched and can still
be used in your queries.
Path Parameters
graph* string
The name of the graph.
collection* string
The name of the edge collection used in the edge definition.
Query Parameters
waitForSync boolean
Define if the request should wait until synced to disk.
dropCollections boolean
Drop the collection as well.
Collection will only be dropped if it is not used in other graphs.
Responses
201
Returned if the edge definition could be removed from the graph
and waitForSync is true.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
graph*object
The information about the modified graph.
_id*string
The internal id value of this graph.
_rev*string
The revision of this graph. Can be used to make sure to not override
concurrent modifications to this graph.
edgeDefinitions*[object]
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edge are stored in.
from*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _to is in any of the collections here.
isDisjoint*boolean
Whether the graph is a Disjoint SmartGraph (Enterprise Edition only).
isSatellite*boolean
Flag if the graph is a SatelliteGraph (Enterprise Edition only) or not.
isSmart*boolean
Whether the graph is a SmartGraph (Enterprise Edition only).
name*string
The name of the graph.
numberOfShards*integer
Number of shards created for every new collection in the graph.
orphanCollections*[string]
An array of additional vertex collections.
Documents within these collections do not have edges within this graph.
replicationFactor*integer
The replication factor used for every new collection in the graph.
For SatelliteGraphs, it is the string "satellite" (Enterprise Edition only).
smartGraphAttribute*string
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcern*integer
The default write concern for new collections in the graph.
It determines how many copies of each shard are required to be
in sync on the different DB-Servers. If there are less than these many copies
in the cluster, a shard refuses to write. Writes to shards with enough
up-to-date copies succeed at the same time, however. The value of
writeConcern cannot be greater than replicationFactor.
For SatelliteGraphs, the writeConcern is automatically controlled to equal the
number of DB-Servers and the attribute is not available. (cluster only)
202
Returned if the edge definition could be removed from the graph and
waitForSync is false.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
graph*object
The information about the modified graph.
_id*string
The internal id value of this graph.
_rev*string
The revision of this graph. Can be used to make sure to not override
concurrent modifications to this graph.
edgeDefinitions*[object]
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edge are stored in.
from*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*[string]
List of vertex collection names.
Edges in collection can only be inserted if their _to is in any of the collections here.
isDisjoint*boolean
Whether the graph is a Disjoint SmartGraph (Enterprise Edition only).
isSatellite*boolean
Flag if the graph is a SatelliteGraph (Enterprise Edition only) or not.
isSmart*boolean
Whether the graph is a SmartGraph (Enterprise Edition only).
name*string
The name of the graph.
numberOfShards*integer
Number of shards created for every new collection in the graph.
orphanCollections*[string]
An array of additional vertex collections.
Documents within these collections do not have edges within this graph.
replicationFactor*integer
The replication factor used for every new collection in the graph.
For SatelliteGraphs, it is the string "satellite" (Enterprise Edition only).
smartGraphAttribute*string
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcern*integer
The default write concern for new collections in the graph.
It determines how many copies of each shard are required to be
in sync on the different DB-Servers. If there are less than these many copies
in the cluster, a shard refuses to write. Writes to shards with enough
up-to-date copies succeed at the same time, however. The value of
writeConcern cannot be greater than replicationFactor.
For SatelliteGraphs, the writeConcern is automatically controlled to equal the
number of DB-Servers and the attribute is not available. (cluster only)
403
Returned if your user has insufficient rights.
In order to drop a vertex you at least need to have the following privileges
Administrate access on the Database.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
404
Returned if no graph with this name could be found,
or if no edge definition with this name is found in the graph.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
The name of the vertex collection the vertex should be inserted into.
Query Parameters
waitForSync boolean
Define if the request should wait until synced to disk.
returnNew boolean
Define if the response should contain the complete
new version of the document.
Request Body application/json
vertex*object
The body has to be the JSON object to be stored.
Responses
201
Returned if the vertex could be added and waitForSync is true.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
newobject
The complete newly written vertex document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Will only be present if returnNew is true.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
vertex*object
The internal attributes for the vertex.
_id*string
The _id value of the stored data.
_key*string
The _key value of the stored data.
_rev*string
The _rev value of the stored data.
202
Returned if the request was successful but waitForSync is false.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
newobject
The complete newly written vertex document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Will only be present if returnNew is true.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
vertex*object
The internal attributes generated while storing the vertex.
Does not include any attribute given in request body.
_id*string
The _id value of the stored data.
_key*string
The _key value of the stored data.
_rev*string
The _rev value of the stored data.
403
Returned if your user has insufficient rights.
In order to insert vertices into the graph you at least need to have the following privileges
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
404
Returned if no graph with this name could be found.
Or if a graph is found but this collection is not part of the graph.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
The name of the vertex collection the vertex belongs to.
vertex* string
The _key attribute of the vertex.
Query Parameters
rev string
Must contain a revision.
If this is set a document is only returned if
it has exactly this revision.
Also see if-match header as an alternative to this.
Responses
200
Returned if the vertex could be found.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
vertex*object
The complete vertex.
_id*string
The _id value of the stored data.
_key*string
The _key value of the stored data.
_rev*string
The _rev value of the stored data.
304
Returned if the if-none-match header is given and the
currently stored vertex still has this revision value.
So there was no update between the last time the vertex
was fetched by the caller.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
403
Returned if your user has insufficient rights.
In order to update vertices in the graph you at least need to have the following privileges
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
404
Returned in the following cases
No graph with this name could be found.
This collection is not part of the graph.
The vertex does not exist.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
412
Returned if if-match header is given, but the stored documents revision is different.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
Updates the data of the specific vertex in the collection.
Path Parameters
graph* string
The name of the graph.
collection* string
The name of the vertex collection the vertex belongs to.
vertex* string
The _key attribute of the vertex.
Query Parameters
waitForSync boolean
Define if the request should wait until synced to disk.
keepNull boolean
Define if values set to null should be stored.
By default (true), the given documents attribute(s) are set to null.
If this parameter is set to false, top-level attribute and sub-attributes with
a null value in the request are removed from the document (but not attributes
of objects that are nested inside of arrays).
returnOld boolean
Define if a presentation of the deleted document should
be returned within the response object.
returnNew boolean
Define if a presentation of the new document should
be returned within the response object.
Request Body application/json
vertex*object
The body has to contain a JSON object containing exactly the attributes that should be overwritten, all other attributes remain unchanged.
Responses
200
Returned if the vertex could be updated, and waitForSync is true.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
newobject
The complete newly written vertex document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Will only be present if returnNew is true.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
oldobject
The complete overwritten vertex document.
Includes all attributes stored before this operation.
Will only be present if returnOld is true.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
vertex*object
The internal attributes for the vertex.
_id*string
The _id value of the stored data.
_key*string
The _key value of the stored data.
_rev*string
The _rev value of the stored data.
202
Returned if the request was successful, and waitForSync is false.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
newobject
The complete newly written vertex document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Will only be present if returnNew is true.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
oldobject
The complete overwritten vertex document.
Includes all attributes stored before this operation.
Will only be present if returnOld is true.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
vertex*object
The internal attributes for the vertex.
_id*string
The _id value of the stored data.
_key*string
The _key value of the stored data.
_rev*string
The _rev value of the stored data.
403
Returned if your user has insufficient rights.
In order to update vertices in the graph you at least need to have the following privileges
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
404
Returned in the following cases
No graph with this name could be found.
This collection is not part of the graph.
The vertex to update does not exist.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
412
Returned if if-match header is given, but the stored documents revision is different.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
The name of the vertex collection the vertex belongs to.
vertex* string
The _key attribute of the vertex.
Query Parameters
waitForSync boolean
Define if the request should wait until synced to disk.
keepNull boolean
Define if values set to null should be stored.
By default (true), the given documents attribute(s) are set to null.
If this parameter is set to false, top-level attribute and sub-attributes with
a null value in the request are removed from the document (but not attributes
of objects that are nested inside of arrays).
returnOld boolean
Define if a presentation of the deleted document should
be returned within the response object.
returnNew boolean
Define if a presentation of the new document should
be returned within the response object.
Request Body application/json
vertex*object
The body has to be the JSON object to be stored.
Responses
200
Returned if the vertex could be replaced, and waitForSync is true.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
newobject
The complete newly written vertex document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Will only be present if returnNew is true.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
oldobject
The complete overwritten vertex document.
Includes all attributes stored before this operation.
Will only be present if returnOld is true.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
vertex*object
The internal attributes for the vertex.
_id*string
The _id value of the stored data.
_key*string
The _key value of the stored data.
_rev*string
The _rev value of the stored data.
202
Returned if the vertex could be replaced, and waitForSync is false.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
newobject
The complete newly written vertex document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Will only be present if returnNew is true.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
oldobject
The complete overwritten vertex document.
Includes all attributes stored before this operation.
Will only be present if returnOld is true.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
vertex*object
The internal attributes for the vertex.
_id*string
The _id value of the stored data.
_key*string
The _key value of the stored data.
_rev*string
The _rev value of the stored data.
403
Returned if your user has insufficient rights.
In order to replace vertices in the graph you at least need to have the following privileges
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
404
Returned in the following cases
No graph with this name could be found.
This collection is not part of the graph.
The vertex to replace does not exist.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
412
Returned if if-match header is given, but the stored documents revision is different.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
Creates a new edge in the specified collection.
Within the body the edge has to contain a _from and _to value referencing to valid vertices in the graph.
Furthermore the edge has to be valid in the definition of the used edge collection.
Path Parameters
graph* string
The name of the graph.
collection* string
The name of the edge collection the edge belongs to.
Query Parameters
waitForSync boolean
Define if the request should wait until synced to disk.
returnNew boolean
Define if the response should contain the complete
new version of the document.
Request Body application/json
_from*string
The source vertex of this edge. Has to be valid within
the used edge definition.
_to*string
The target vertex of this edge. Has to be valid within
the used edge definition.
Responses
201
Returned if the edge could be created and waitForSync is true.
Response Body
code*integer
The response code.
edge*object
The internal attributes for the edge.
_from*string
The _from value of the stored data.
_id*string
The _id value of the stored data.
_key*string
The _key value of the stored data.
_rev*string
The _rev value of the stored data.
_to*string
The _to value of the stored data.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
newobject
The complete newly written edge document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Will only be present if returnNew is true.
_fromstring
The _from value of the stored data.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
_tostring
The _to value of the stored data.
202
Returned if the request was successful but waitForSync is false.
Response Body
code*integer
The response code.
edge*object
The internal attributes for the edge.
_from*string
The _from value of the stored data.
_id*string
The _id value of the stored data.
_key*string
The _key value of the stored data.
_rev*string
The _rev value of the stored data.
_to*string
The _to value of the stored data.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
newobject
The complete newly written edge document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Will only be present if returnNew is true.
_fromstring
The _from value of the stored data.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
_tostring
The _to value of the stored data.
400
Returned if the input document is invalid.
This can for instance be the case if the _from or _to attribute is missing
or malformed.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
403
Returned if your user has insufficient rights.
In order to insert edges into the graph you at least need to have the following privileges
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
404
Returned in any of the following cases
no graph with this name could be found.
the edge collection is not part of the graph.
the vertex collection referenced in the _from or _to attribute is not part of the graph.
the vertex collection is part of the graph, but does not exist.
_from or _to vertex does not exist.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
The name of the edge collection the edge belongs to.
edge* string
The _key attribute of the edge.
Query Parameters
rev string
Must contain a revision.
If this is set a document is only returned if
it has exactly this revision.
Also see if-match header as an alternative to this.
Responses
200
Returned if the edge could be found.
Response Body
code*integer
The response code.
edge*object
The complete edge.
_from*string
The _from value of the stored data.
_id*string
The _id value of the stored data.
_key*string
The _key value of the stored data.
_rev*string
The _rev value of the stored data.
_to*string
The _to value of the stored data.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
304
Returned if the if-none-match header is given and the
currently stored edge still has this revision value.
So there was no update between the last time the edge
was fetched by the caller.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
403
Returned if your user has insufficient rights.
In order to update vertices in the graph you at least need to have the following privileges
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
404
Returned in the following cases
No graph with this name could be found.
This collection is not part of the graph.
The edge does not exist.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
412
Returned if if-match header is given, but the stored documents revision is different.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
Partially modify the data of the specific edge in the collection.
Path Parameters
graph* string
The name of the graph.
collection* string
The name of the edge collection the edge belongs to.
edge* string
The _key attribute of the vertex.
Query Parameters
waitForSync boolean
Define if the request should wait until synced to disk.
keepNull boolean
Define if values set to null should be stored.
By default (true), the given documents attribute(s) are set to null.
If this parameter is set to false, top-level attribute and sub-attributes with
a null value in the request are removed from the document (but not attributes
of objects that are nested inside of arrays).
returnOld boolean
Define if a presentation of the deleted document should
be returned within the response object.
returnNew boolean
Define if a presentation of the new document should
be returned within the response object.
Request Body application/json
edge*object
The body has to contain a JSON object containing exactly the attributes that should be overwritten, all other attributes remain unchanged.
Responses
200
Returned if the edge could be updated, and waitForSync is false.
Response Body
code*integer
The response code.
edge*object
The internal attributes for the edge.
_from*string
The _from value of the stored data.
_id*string
The _id value of the stored data.
_key*string
The _key value of the stored data.
_rev*string
The _rev value of the stored data.
_to*string
The _to value of the stored data.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
newobject
The complete newly written edge document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Will only be present if returnNew is true.
_fromstring
The _from value of the stored data.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
_tostring
The _to value of the stored data.
oldobject
The complete overwritten edge document.
Includes all attributes stored before this operation.
Will only be present if returnOld is true.
_fromstring
The _from value of the stored data.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
_tostring
The _to value of the stored data.
202
Returned if the request was successful but waitForSync is false.
Response Body
code*integer
The response code.
edge*object
The internal attributes for the edge.
_from*string
The _from value of the stored data.
_id*string
The _id value of the stored data.
_key*string
The _key value of the stored data.
_rev*string
The _rev value of the stored data.
_to*string
The _to value of the stored data.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
newobject
The complete newly written edge document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Will only be present if returnNew is true.
_fromstring
The _from value of the stored data.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
_tostring
The _to value of the stored data.
oldobject
The complete overwritten edge document.
Includes all attributes stored before this operation.
Will only be present if returnOld is true.
_fromstring
The _from value of the stored data.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
_tostring
The _to value of the stored data.
403
Returned if your user has insufficient rights.
In order to update edges in the graph you at least need to have the following privileges
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
404
Returned in the following cases
No graph with this name could be found.
This collection is not part of the graph.
The edge to update does not exist.
either _from or _to vertex does not exist (if updated).
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
412
Returned if if-match header is given, but the stored documents revision is different.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
The name of the edge collection the edge belongs to.
edge* string
The _key attribute of the vertex.
Query Parameters
waitForSync boolean
Define if the request should wait until synced to disk.
keepNull boolean
Define if values set to null should be stored.
By default (true), the given documents attribute(s) are set to null.
If this parameter is set to false, top-level attribute and sub-attributes with
a null value in the request are removed from the document (but not attributes
of objects that are nested inside of arrays).
returnOld boolean
Define if a presentation of the deleted document should
be returned within the response object.
returnNew boolean
Define if a presentation of the new document should
be returned within the response object.
Request Body application/json
_from*string
The source vertex of this edge. Has to be valid within
the used edge definition.
_to*string
The target vertex of this edge. Has to be valid within
the used edge definition.
Responses
201
Returned if the request was successful but waitForSync is true.
Response Body
code*integer
The response code.
edge*object
The internal attributes for the edge
_from*string
The _from value of the stored data.
_id*string
The _id value of the stored data.
_key*string
The _key value of the stored data.
_rev*string
The _rev value of the stored data.
_to*string
The _to value of the stored data.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
newobject
The complete newly written edge document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Will only be present if returnNew is true.
_fromstring
The _from value of the stored data.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
_tostring
The _to value of the stored data.
oldobject
The complete overwritten edge document.
Includes all attributes stored before this operation.
Will only be present if returnOld is true.
_fromstring
The _from value of the stored data.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
_tostring
The _to value of the stored data.
202
Returned if the request was successful but waitForSync is false.
Response Body
code*integer
The response code.
edge*object
The internal attributes for the edge
_from*string
The _from value of the stored data.
_id*string
The _id value of the stored data.
_key*string
The _key value of the stored data.
_rev*string
The _rev value of the stored data.
_to*string
The _to value of the stored data.
error*boolean
Flag if there was an error (true) or not (false).
It is false in this response.
newobject
The complete newly written edge document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Will only be present if returnNew is true.
_fromstring
The _from value of the stored data.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
_tostring
The _to value of the stored data.
oldobject
The complete overwritten edge document.
Includes all attributes stored before this operation.
Will only be present if returnOld is true.
_fromstring
The _from value of the stored data.
_idstring
The _id value of the stored data.
_keystring
The _key value of the stored data.
_revstring
The _rev value of the stored data.
_tostring
The _to value of the stored data.
403
Returned if your user has insufficient rights.
In order to replace edges in the graph you at least need to have the following privileges
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
404
Returned in the following cases
No graph with this name could be found.
This collection is not part of the graph.
The edge to replace does not exist.
either _from or _to vertex does not exist.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.
412
Returned if if-match header is given, but the stored documents revision is different.
Response Body
code*integer
The response code.
error*boolean
Flag if there was an error (true) or not (false).
It is true in this response.
errorMessage*string
A message created for this error.
errorNum*integer
ArangoDB error number for the error that occurred.