Is returned if the module is available and the graphs can be listed.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
graphs*array of objects
A list of all named graphs.
graphobject
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*array of objects
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edges are stored in.
from*array of strings
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*array of strings
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*array of strings
An array of additional vertex collections.
Documents in 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).
smartGraphAttributestring
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcerninteger
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
database-name*string
The name of the database.
Query Parameters
waitForSyncboolean
Define if the request should wait until everything is synced to disk.
Changes the success HTTP response status code.
HTTP Headers
Request Body application/jsonobject
edgeDefinitionsarray of objects
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edges are stored in.
from*array of strings
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*array of strings
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:
numberOfShards*integer
The number of shards that is used for every collection within this graph.
Cannot be modified later.
replicationFactor*integer
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).
satellitesarray of strings
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)
orphanCollectionsarray of strings
An array of additional vertex collections.
Documents in these collections do not have edges within this graph.
Responses
201Created
Is returned if the graph can 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 application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
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*array of objects
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edges are stored in.
from*array of strings
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*array of strings
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*array of strings
An array of additional vertex collections.
Documents in 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).
smartGraphAttributestring
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcerninteger
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)
202Accepted
Is returned if the graph can 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 application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
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*array of objects
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edges are stored in.
from*array of strings
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*array of strings
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*array of strings
An array of additional vertex collections.
Documents in 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).
smartGraphAttributestring
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcerninteger
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)
400Bad Request
Returned if the request is in a wrong format.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
403Forbidden
Returned if your user has insufficient rights.
In order to create a graph, you need to have at least the following privileges:
Administrate access on the database.
Read Only access on every collection used within this graph.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
409Conflict
Returned if there is a conflict storing the graph. This can occur
either if a graph with this name already exists, or if there is an
edge definition with the same edge collection but different from
and to vertex collections in any other graph.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
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.
Returns the edge definitions as well as the orphan collections,
or returns an error if the graph does not exist.
Path Parameters
database-name*string
The name of the database.
graph*string
The name of the graph.
Query Parameters
HTTP Headers
Responses
200OK
Returns the graph if it can be found.
The result has the following format:
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
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*array of objects
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edges are stored in.
from*array of strings
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*array of strings
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*array of strings
An array of additional vertex collections.
Documents in 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).
smartGraphAttributestring
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcerninteger
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)
404Not Found
Returned if no graph with this name can be found.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
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 is created.
Path Parameters
database-name*string
The name of the database.
graph*string
The name of the graph.
Query Parameters
HTTP Headers
Request Body application/jsonobject
collection*string
The name of the vertex collection to add to the graph definition.
optionsobject
A JSON object to set options for creating vertex collections.
satellitesarray of strings
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
201Created
Is returned if the collection can 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 application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
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*array of objects
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edges are stored in.
from*array of strings
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*array of strings
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*array of strings
An array of additional vertex collections.
Documents in 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).
smartGraphAttributestring
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcerninteger
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)
202Accepted
Is returned if the collection can 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 application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
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*array of objects
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edges are stored in.
from*array of strings
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*array of strings
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*array of strings
An array of additional vertex collections.
Documents in 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).
smartGraphAttributestring
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcerninteger
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)
400Bad Request
Returned if the request is in an invalid format.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
403Forbidden
Returned if your user has insufficient rights.
In order to modify a graph, you need to have at least the following privileges:
Administrate access on the database.
Read Only access on every collection used within this graph.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
404Not Found
Returned if no graph with this name can be found.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
Removes a vertex collection from the list of the graph’s
orphan collections. It can optionally delete the collection if it is
not used in any other graph.
You cannot remove vertex collections that are used in one of the
edge definitions of the graph. You need to modify or remove the
edge definition first in order to fully remove a vertex collection from
the graph.
Path Parameters
database-name*string
The name of the database.
graph*string
The name of the graph.
collection*string
The name of the vertex collection.
Query Parameters
dropCollectionboolean
Drop the collection in addition to removing it from the graph.
The collection is only dropped if it is not used in other graphs.
HTTP Headers
Responses
200OK
Returned if the vertex collection was removed from the graph successfully
and waitForSync is true.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
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*array of objects
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edges are stored in.
from*array of strings
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*array of strings
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*array of strings
An array of additional vertex collections.
Documents in 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).
smartGraphAttributestring
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcerninteger
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)
202Accepted
Returned if the request was successful but waitForSync is false.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
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*array of objects
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edges are stored in.
from*array of strings
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*array of strings
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*array of strings
An array of additional vertex collections.
Documents in 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).
smartGraphAttributestring
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcerninteger
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)
400Bad Request
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 application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
403Forbidden
Returned if your user has insufficient rights.
In order to drop a vertex, you need to have at least the following privileges:
Administrate access on the database.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
404Not Found
Returned if no graph with this name can be found.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
Examples
You can remove vertex collections that are not used in any edge definition:
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. For example, it is not
possible to store a definition “e” from “v1” to “v2” in one graph, and
“e” from “v2” to “v1” in another graph, but both can have “e” from
“v1” to “v2”.
Additionally, collection creation options can be set.
Path Parameters
database-name*string
The name of the database.
graph*string
The name of the graph.
Query Parameters
HTTP Headers
Request Body application/jsonobject
collection*string
The name of the edge collection to be used.
from*array of strings
One or many vertex collections that can contain source vertices.
optionsobject
A JSON object to set options for creating collections within this
edge definition.
satellitesarray of strings
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*array of strings
One or many vertex collections that can contain target vertices.
Responses
201Created
Returned if the definition can be added successfully and
waitForSync is enabled for the _graphs collection.
The response body contains the graph configuration that has been stored.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
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*array of objects
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edges are stored in.
from*array of strings
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*array of strings
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*array of strings
An array of additional vertex collections.
Documents in 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).
smartGraphAttributestring
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcerninteger
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)
202Accepted
Returned if the definition can be added successfully and
waitForSync is disabled for the _graphs collection.
The response body contains the graph configuration that has been stored.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
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*array of objects
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edges are stored in.
from*array of strings
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*array of strings
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*array of strings
An array of additional vertex collections.
Documents in 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).
smartGraphAttributestring
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcerninteger
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)
400Bad Request
Returned if the edge definition can not be added.
This can be because it is ill-formed, or if there is an
edge definition with the same edge collection but different from
and to vertex collections in any other graph.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
403Forbidden
Returned if your user has insufficient rights.
In order to modify a graph, you need to have at least the following privileges:
Administrate access on the database.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
404Not Found
Returned if no graph with this name can be found.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
Change one specific edge definition.
This modifies all occurrences of this definition in all graphs known to your database.
Path Parameters
database-name*string
The name of the database.
graph*string
The name of the graph.
collection*string
The name of the edge collection used in the edge definition.
Query Parameters
waitForSyncboolean
Define if the request should wait until synced to disk.
dropCollectionsboolean
Drop the edge collection in addition to removing it from the graph.
The collection is only dropped if it is not used in other graphs.
HTTP Headers
Request Body application/jsonobject
collection*string
The name of the edge collection to be used.
from*array of strings
One or many vertex collections that can contain source vertices.
optionsobject
A JSON object to set options for modifying collections within this
edge definition.
satellitesarray of strings
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*array of strings
One or many vertex collections that can contain target vertices.
Responses
201Created
Returned if the request was successful and waitForSync is true.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
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*array of objects
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edges are stored in.
from*array of strings
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*array of strings
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*array of strings
An array of additional vertex collections.
Documents in 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).
smartGraphAttributestring
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcerninteger
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)
202Accepted
Returned if the request was successful but waitForSync is false.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
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*array of objects
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edges are stored in.
from*array of strings
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*array of strings
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*array of strings
An array of additional vertex collections.
Documents in 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).
smartGraphAttributestring
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcerninteger
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)
400Bad Request
Returned if the new edge definition is ill-formed and cannot be used.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
403Forbidden
Returned if your user has insufficient rights.
In order to drop a vertex, you need to have at least the following privileges:
Administrate access on the database.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
404Not Found
Returned if no graph with this name can be found, or if no edge definition
with this name is found in the graph.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
Remove one edge definition from the graph. This only removes the
edge collection from the graph definition. The vertex collections of the
edge definition become orphan collections but otherwise remain untouched
and can still be used in your queries.
Path Parameters
database-name*string
The name of the database.
graph*string
The name of the graph.
collection*string
The name of the edge collection used in the edge definition.
Query Parameters
waitForSyncboolean
Define if the request should wait until synced to disk.
dropCollectionsboolean
Drop the edge collection in addition to removing it from the graph.
The collection is only dropped if it is not used in other graphs.
HTTP Headers
Responses
201Created
Returned if the edge definition can be removed from the graph
and waitForSync is true.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
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*array of objects
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edges are stored in.
from*array of strings
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*array of strings
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*array of strings
An array of additional vertex collections.
Documents in 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).
smartGraphAttributestring
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcerninteger
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)
202Accepted
Returned if the edge definition can be removed from the graph and
waitForSync is false.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
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*array of objects
An array of definitions for the relations of the graph.
Each has the following type:
collection*string
Name of the edge collection, where the edges are stored in.
from*array of strings
List of vertex collection names.
Edges in collection can only be inserted if their _from is in any of the collections here.
to*array of strings
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*array of strings
An array of additional vertex collections.
Documents in 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).
smartGraphAttributestring
Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
writeConcerninteger
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)
403Forbidden
Returned if your user has insufficient rights.
In order to drop a vertex, you need to have at least the following privileges:
Administrate access on the database.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
404Not Found
Returned if no graph with this name can be found,
or if no edge definition with this name is found in the graph.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
The name of the vertex collection the vertex should be inserted into.
Query Parameters
waitForSyncboolean
Define if the request should wait until synced to disk.
returnNewboolean
Define if the response should contain the complete
new version of the document.
HTTP Headers
x-arango-trx-idstring
To make this operation a part of a Stream Transaction, set this header to the
transaction ID returned by the POST /_api/transaction/begin call.
Request Body application/jsonobject
vertex*object
The body has to be the JSON object to be stored.
Responses
201Created
Returned if the vertex can be added and waitForSync is true.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
newobject
The complete newly written vertex document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Only present if returnNew is true.
_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.
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.
202Accepted
Returned if the request was successful but waitForSync is false.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
newobject
The complete newly written vertex document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Only present if returnNew is true.
_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.
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.
403Forbidden
Returned if your user has insufficient rights.
In order to insert vertices into the graph, you need to have at least the following privileges:
Read Only access on the database.
Write access on the given collection.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
404Not Found
Returned if no graph with this name can be found.
Or if a graph is found but this collection is not part of the graph.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
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
revstring
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.
HTTP Headers
if-matchstring
If the “If-Match” header is given, then it must contain exactly one ETag. The document is returned,
if it has the same revision as the given ETag. Otherwise a HTTP 412 is returned. As an alternative
you can supply the ETag in an query parameter rev.
if-none-matchstring
If the “If-None-Match” header is given, then it must contain exactly one ETag. The document is returned,
only if it has a different revision as the given ETag. Otherwise a HTTP 304 is returned.
x-arango-trx-idstring
To make this operation a part of a Stream Transaction, set this header to the
transaction ID returned by the POST /_api/transaction/begin call.
Responses
200OK
Returned if the vertex can be found.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
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.
304Not Modified
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 application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
403Forbidden
Returned if your user has insufficient rights.
In order to update vertices in the graph, you need to have at least the following privileges:
Read Only access on the database.
Read Only access on the given collection.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
404Not Found
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 application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
412Precondition Failed
Returned if if-match header is given, but the stored documents revision is different.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
Updates the data of the specific vertex in the collection.
Path Parameters
database-name*string
The name of the database.
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
waitForSyncboolean
Define if the request should wait until synced to disk.
keepNullboolean
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).
returnOldboolean
Define if a presentation of the deleted document should
be returned within the response object.
returnNewboolean
Define if a presentation of the new document should
be returned within the response object.
HTTP Headers
if-matchstring
If the “If-Match” header is given, then it must contain exactly one ETag. The document is updated,
if it has the same revision as the given ETag. Otherwise a HTTP 412 is returned. As an alternative
you can supply the ETag in an attribute rev in the URL.
x-arango-trx-idstring
To make this operation a part of a Stream Transaction, set this header to the
transaction ID returned by the POST /_api/transaction/begin call.
Request Body application/jsonobject
vertex*object
The body has to contain a JSON object containing exactly the attributes that should be overwritten, all other attributes remain unchanged.
Responses
200OK
Returned if the vertex can be updated, and waitForSync is true.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
newobject
The complete newly written vertex document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Only present if returnNew is true.
_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.
oldobject
The complete overwritten vertex document.
Includes all attributes stored before this operation.
Only present if returnOld is true.
_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.
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.
202Accepted
Returned if the request was successful, and waitForSync is false.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
newobject
The complete newly written vertex document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Only present if returnNew is true.
_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.
oldobject
The complete overwritten vertex document.
Includes all attributes stored before this operation.
Only present if returnOld is true.
_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.
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.
403Forbidden
Returned if your user has insufficient rights.
In order to update vertices in the graph, you need to have at least the following privileges:
Read Only access on the database.
Write access on the given collection.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
404Not Found
Returned in the following cases:
No graph with this name can be found.
This collection is not part of the graph.
The vertex to update does not exist.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
412Precondition Failed
Returned if if-match header is given, but the stored documents revision is different.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
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
waitForSyncboolean
Define if the request should wait until synced to disk.
keepNullboolean
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).
returnOldboolean
Define if a presentation of the deleted document should
be returned within the response object.
returnNewboolean
Define if a presentation of the new document should
be returned within the response object.
HTTP Headers
if-matchstring
If the “If-Match” header is given, then it must contain exactly one ETag. The document is updated,
if it has the same revision as the given ETag. Otherwise a HTTP 412 is returned. As an alternative
you can supply the ETag in an attribute rev in the URL.
x-arango-trx-idstring
To make this operation a part of a Stream Transaction, set this header to the
transaction ID returned by the POST /_api/transaction/begin call.
Request Body application/jsonobject
vertex*object
The body has to be the JSON object to be stored.
Responses
200OK
Returned if the vertex can be replaced, and waitForSync is true.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
newobject
The complete newly written vertex document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Only present if returnNew is true.
_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.
oldobject
The complete overwritten vertex document.
Includes all attributes stored before this operation.
Only present if returnOld is true.
_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.
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.
202Accepted
Returned if the vertex can be replaced, and waitForSync is false.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
newobject
The complete newly written vertex document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Only present if returnNew is true.
_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.
oldobject
The complete overwritten vertex document.
Includes all attributes stored before this operation.
Only present if returnOld is true.
_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.
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.
403Forbidden
Returned if your user has insufficient rights.
In order to replace vertices in the graph, you need to have at least the following privileges:
Read Only access on the database.
Write access on the given collection.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
404Not Found
Returned in the following cases:
No graph with this name can be found.
This collection is not part of the graph.
The vertex to replace does not exist.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
412Precondition Failed
Returned if if-match header is given, but the stored documents revision is different.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
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
waitForSyncboolean
Define if the request should wait until synced to disk.
returnOldboolean
Define if a presentation of the deleted document should
be returned within the response object.
HTTP Headers
if-matchstring
If the “If-Match” header is given, then it must contain exactly one ETag. The document is updated,
if it has the same revision as the given ETag. Otherwise a HTTP 412 is returned. As an alternative
you can supply the ETag in an attribute rev in the URL.
x-arango-trx-idstring
To make this operation a part of a Stream Transaction, set this header to the
transaction ID returned by the POST /_api/transaction/begin call.
Responses
200OK
Returned if the vertex can be removed.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
oldobject
The complete deleted vertex document.
Includes all attributes stored before this operation.
Only present if returnOld is true.
_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.
removed*boolean
Is set to true if the remove was successful.
202Accepted
Returned if the request was successful but waitForSync is false.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
oldobject
The complete deleted vertex document.
Includes all attributes stored before this operation.
Only present if returnOld is true.
_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.
removed*boolean
Is set to true if the remove was successful.
403Forbidden
Returned if your user has insufficient rights.
In order to delete vertices in the graph, you need to have at least the following privileges:
Read Only access on the database.
Write access on the given collection.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
404Not Found
Returned in the following cases:
No graph with this name can be found.
This collection is not part of the graph.
The vertex to remove does not exist.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
412Precondition Failed
Returned if if-match header is given, but the stored documents revision is different.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
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 according to the edge definitions.
Path Parameters
database-name*string
The name of the database.
graph*string
The name of the graph.
collection*string
The name of the edge collection the edge belongs to.
Query Parameters
waitForSyncboolean
Define if the request should wait until synced to disk.
returnNewboolean
Define if the response should contain the complete
new version of the document.
HTTP Headers
x-arango-trx-idstring
To make this operation a part of a Stream Transaction, set this header to the
transaction ID returned by the POST /_api/transaction/begin call.
Request Body application/jsonobject
_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
201Created
Returned if the edge can be created and waitForSync is true.
Response Body application/jsonobject
code*integer
The HTTP response status 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
A flag indicating that no error occurred.
newobject
The complete newly written edge document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Only present if returnNew is true.
_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.
202Accepted
Returned if the request was successful but waitForSync is false.
Response Body application/jsonobject
code*integer
The HTTP response status 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
A flag indicating that no error occurred.
newobject
The complete newly written edge document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Only present if returnNew is true.
_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.
400Bad Request
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 application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
403Forbidden
Returned if your user has insufficient rights.
In order to insert edges into the graph, you need to have at least the following privileges:
Read Only access on the database.
Write access on the given collection.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
404Not Found
Returned in any of the following cases:
No graph with this name can 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 application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
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
revstring
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.
HTTP Headers
if-matchstring
If the “If-Match” header is given, then it must contain exactly one ETag. The document is returned,
if it has the same revision as the given ETag. Otherwise a HTTP 412 is returned. As an alternative
you can supply the ETag in an attribute rev in the URL.
if-none-matchstring
If the “If-None-Match” header is given, then it must contain exactly one ETag. The document is returned,
only if it has a different revision as the given ETag. Otherwise a HTTP 304 is returned.
x-arango-trx-idstring
To make this operation a part of a Stream Transaction, set this header to the
transaction ID returned by the POST /_api/transaction/begin call.
Responses
200OK
Returned if the edge can be found.
Response Body application/jsonobject
code*integer
The HTTP response status 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
A flag indicating that no error occurred.
304Not Modified
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 application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
403Forbidden
Returned if your user has insufficient rights.
In order to update vertices in the graph, you need to have at least the following privileges:
Read Only access on the database.
Read Only access on the given collection.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
404Not Found
Returned in the following cases:
No graph with this name can be found.
This collection is not part of the graph.
The edge does not exist.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
412Precondition Failed
Returned if if-match header is given, but the stored documents revision is different.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
Partially modify the data of the specific edge in the collection.
Path Parameters
database-name*string
The name of the database.
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
waitForSyncboolean
Define if the request should wait until synced to disk.
keepNullboolean
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).
returnOldboolean
Define if a presentation of the deleted document should
be returned within the response object.
returnNewboolean
Define if a presentation of the new document should
be returned within the response object.
HTTP Headers
if-matchstring
If the “If-Match” header is given, then it must contain exactly one ETag. The document is updated,
if it has the same revision as the given ETag. Otherwise a HTTP 412 is returned. As an alternative
you can supply the ETag in an attribute rev in the URL.
x-arango-trx-idstring
To make this operation a part of a Stream Transaction, set this header to the
transaction ID returned by the POST /_api/transaction/begin call.
Request Body application/jsonobject
edge*object
The body has to contain a JSON object containing exactly the attributes that should be overwritten, all other attributes remain unchanged.
Responses
200OK
Returned if the edge can be updated, and waitForSync is false.
Response Body application/jsonobject
code*integer
The HTTP response status 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
A flag indicating that no error occurred.
newobject
The complete newly written edge document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Only present if returnNew is true.
_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.
oldobject
The complete overwritten edge document.
Includes all attributes stored before this operation.
Only present if returnOld is true.
_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.
202Accepted
Returned if the request was successful but waitForSync is false.
Response Body application/jsonobject
code*integer
The HTTP response status 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
A flag indicating that no error occurred.
newobject
The complete newly written edge document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Only present if returnNew is true.
_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.
oldobject
The complete overwritten edge document.
Includes all attributes stored before this operation.
Only present if returnOld is true.
_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.
403Forbidden
Returned if your user has insufficient rights.
In order to update edges in the graph, you need to have at least the following privileges:
Read Only access on the database.
Write access on the given collection.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
404Not Found
Returned in the following cases:
No graph with this name can 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 application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
412Precondition Failed
Returned if if-match header is given, but the stored documents revision is different.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
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
waitForSyncboolean
Define if the request should wait until synced to disk.
keepNullboolean
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).
returnOldboolean
Define if a presentation of the deleted document should
be returned within the response object.
returnNewboolean
Define if a presentation of the new document should
be returned within the response object.
HTTP Headers
if-matchstring
If the “If-Match” header is given, then it must contain exactly one ETag. The document is updated,
if it has the same revision as the given ETag. Otherwise a HTTP 412 is returned. As an alternative
you can supply the ETag in an attribute rev in the URL.
x-arango-trx-idstring
To make this operation a part of a Stream Transaction, set this header to the
transaction ID returned by the POST /_api/transaction/begin call.
Request Body application/jsonobject
_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
201Created
Returned if the request was successful but waitForSync is true.
Response Body application/jsonobject
code*integer
The HTTP response status 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
A flag indicating that no error occurred.
newobject
The complete newly written edge document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Only present if returnNew is true.
_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.
oldobject
The complete overwritten edge document.
Includes all attributes stored before this operation.
Only present if returnOld is true.
_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.
202Accepted
Returned if the request was successful but waitForSync is false.
Response Body application/jsonobject
code*integer
The HTTP response status 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
A flag indicating that no error occurred.
newobject
The complete newly written edge document.
Includes all written attributes in the request body
and all internal attributes generated by ArangoDB.
Only present if returnNew is true.
_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.
oldobject
The complete overwritten edge document.
Includes all attributes stored before this operation.
Only present if returnOld is true.
_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.
403Forbidden
Returned if your user has insufficient rights.
In order to replace edges in the graph, you need to have at least the following privileges:
Read Only access on the database.
Write access on the given collection.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
404Not Found
Returned in the following cases:
No graph with this name can 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 application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
412Precondition Failed
Returned if if-match header is given, but the stored documents revision is different.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
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
waitForSyncboolean
Define if the request should wait until synced to disk.
returnOldboolean
Define if a presentation of the deleted document should
be returned within the response object.
HTTP Headers
if-matchstring
If the “If-Match” header is given, then it must contain exactly one ETag. The document is updated,
if it has the same revision as the given ETag. Otherwise a HTTP 412 is returned. As an alternative
you can supply the ETag in an attribute rev in the URL.
x-arango-trx-idstring
To make this operation a part of a Stream Transaction, set this header to the
transaction ID returned by the POST /_api/transaction/begin call.
Responses
200OK
Returned if the edge can be removed.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
oldobject
The complete deleted edge document.
Includes all attributes stored before this operation.
Only present if returnOld is true.
_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.
removed*boolean
Is set to true if the remove was successful.
202Accepted
Returned if the request was successful but waitForSync is false.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that no error occurred.
oldobject
The complete deleted edge document.
Includes all attributes stored before this operation.
Only present if returnOld is true.
_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.
removed*boolean
Is set to true if the remove was successful.
403Forbidden
Returned if your user has insufficient rights.
In order to delete vertices in the graph, you need to have at least the following privileges:
Read Only access on the database.
Write access on the given collection.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
404Not Found
Returned in the following cases:
No graph with this name can be found.
This collection is not part of the graph.
The edge to remove does not exist.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.
412Precondition Failed
Returned if if-match header is given, but the stored documents revision is different.
Response Body application/jsonobject
code*integer
The HTTP response status code.
error*boolean
A flag indicating that an error occurred.
errorMessage*string
A descriptive error message.
errorNum*integer
ArangoDB error number for the error that occurred.