Skip to content

Latest commit

 

History

History
224 lines (170 loc) · 9.14 KB

roadmap.md

File metadata and controls

224 lines (170 loc) · 9.14 KB

ArangoDB-net-standard Roadmap

Version 1.0

Miscellaneous

  • Readme
  • Usage guide
  • License
  • Automated CI build
  • Nuget package

API Implementations

A tick indicates an item is implemented and has automated tests in place.

Authentication

  • Basic authentication
  • JWT authentication

Collections API

  • GET/_api/collection reads all collections
  • POST/_api/collection Create collection
  • DELETE/_api/collection/{collection-name} Drops a collection
  • GET/_api/collection/{collection-name} Return information about a collection
  • GET/_api/collection/{collection-name}/count Return number of documents in a collection
  • GET/_api/collection/{collection-name}/properties Read properties of a collection
  • PUT/_api/collection/{collection-name}/properties Change properties of a collection
  • PUT/_api/collection/{collection-name}/rename Rename collection
  • GET/_api/collection/{collection-name}/revision Return collection revision id
  • PUT/_api/collection/{collection-name}/truncate Truncate collection
  • GET/_api/collection/{collection-name}/figures Return statistics for a collection

Cursor API

  • POST/_api/cursor Create cursor
  • DELETE/_api/cursor/{cursor-identifier} Delete cursor
  • PUT/_api/cursor/{cursor-identifier} Read next batch from cursor

Database API

  • GET/_api/database List of databases
  • POST/_api/database Create database
  • GET/_api/database/current Information of the database
  • GET/_api/database/user List of accessible databases
  • DELETE/_api/database/{database-name} Drop database

Document API

  • DELETE/_api/document/{collection} Removes multiple documents
  • PATCH/_api/document/{collection} Update documents
  • POST/_api/document/{collection} Create document
  • PUT/_api/document/{collection} Replace documents
  • DELETE/_api/document/{document-handle} Removes a document
  • GET/_api/document/{document-handle} Read document
  • HEAD/_api/document/{document-handle} Read document header
  • PATCH/_api/document/{document-handle} Update document
  • PUT/_api/document/{document-handle} Replace document

Graph API

  • GET/_api/gharial List all graphs
  • POST/_api/gharial Create a graph
  • DELETE/_api/gharial/{graph} Drop a graph
  • GET/_api/gharial/{graph} Get a graph
  • GET/_api/gharial/{graph}/edge List edge definitions
  • POST/_api/gharial/{graph}/edge Add edge definition
  • POST/_api/gharial/{graph}/edge/{collection} Create an edge
  • DELETE/_api/gharial/{graph}/edge/{collection}/{edge} Remove an edge
  • GET/_api/gharial/{graph}/edge/{collection}/{edge} Get an edge
  • PATCH/_api/gharial/{graph}/edge/{collection}/{edge} Modify an edge
  • PUT/_api/gharial/{graph}/edge/{collection}/{edge} Replace an edge
  • DELETE/_api/gharial/{graph}/edge/{definition} Remove an edge definition from the graph
  • PUT/_api/gharial/{graph}/edge/{definition} Replace an edge definition
  • GET/_api/gharial/{graph}/vertex List vertex collections
  • POST/_api/gharial/{graph}/vertex Add vertex collection
  • DELETE/_api/gharial/{graph}/vertex/{collection} Remove vertex collection
  • POST/_api/gharial/{graph}/vertex/{collection} Create a vertex
  • DELETE/_api/gharial/{graph}/vertex/{collection}/{vertex} Remove a vertex
  • GET/_api/gharial/{graph}/vertex/{collection}/{vertex} Get a vertex
  • PATCH/_api/gharial/{graph}/vertex/{collection}/{vertex} Update a vertex
  • PUT/_api/gharial/{graph}/vertex/{collection}/{vertex} Replace a vertex

Javascript Transaction API

  • POST/_api/transaction Execute transaction

Stream Transaction API

  • POST /_api/transaction/begin Begin transaction
  • GET /_api/transaction/{transaction-id} Get transaction status
  • PUT /_api/transaction/{transaction-id} Commit transaction
  • DELETE /_api/transaction/{transaction-id} Abort transaction
  • GET /_api/transaction Get currently running transactions

AQL User Functions Management API

  • POST /_api/aqlfunction Create AQL user function
  • DELETE /_api/aqlfunction/{name} Remove existing AQL user function
  • GET /_api/aqlfunction Return registered AQL user functions

User Management API

  • POST /_api/user Create User
  • PUT /_api/user/{user}/database/{dbname} Set the database access level
  • PUT /_api/user/{user}/database/{dbname}/{collection} Set the collection access level
  • DELETE /_api/user/{user}/database/{dbname} Clear the database access level
  • DELETE /_api/user/{user}/database/{dbname}/{collection} Clear the collection access level
  • GET /_api/user/{user}/database/ List the accessible databases for a user
  • GET /_api/user/{user}/database/{dbname} Get the database access level
  • GET /_api/user/{user}/database/{dbname}/{collection} Get the specific collection access level
  • PUT /_api/user/{user} Replace User
  • PATCH /_api/user/{user} Modify User
  • DELETE /_api/user/{user} Remove User
  • GET /_api/user/{user} Fetch User
  • GET /_api/user/ List available Users

Versions 1.1+

Collections API

  • GET/_api/collection/{collection-name}/checksum Return checksum for the collection
  • GET/_api/collection/{collection-name}/figures Return statistics for a collection
  • PUT/_api/collection/{collection-name}/loadIndexesIntoMemory Load Indexes into Memory
  • PUT/_api/collection/{collection-name}/recalculateCount Recalculate count of a collection

Bulk Operations API

  • POST /_api/import#document Bulk Import Document Arrays
  • POST /_api/import#json Bulk Import Document Objects

Indexes API

  • GET/_api/index Read all indexes of a collection
  • POST/_api/index#fulltext Create fulltext index
  • POST/_api/index#geo Create geo-spatial index
  • POST/_api/index#persistent Create a persistent index
  • POST/_api/index#ttl Create TTL index
  • DELETE/_api/index/{index-id} Delete index
  • GET/_api/index/{index-id} Read index

AQL API

  • POST/_api/explain Explain an AQL query
  • POST/_api/query Parse an AQL query
  • DELETE/_api/query/slow Clears the list of slow AQL queries
  • GET/_api/query/slow Returns the list of slow AQL queries
  • DELETE/_api/query/{query-id} Kills a running AQL query
  • DELETE/_api/query-cache Clears any results in the AQL query cache
  • GET/_api/query-cache/entries Returns the currently cached query results
  • GET/_api/query-cache/properties Returns the global properties for the AQL query cache
  • PUT/_api/query-cache/properties Globally adjusts the AQL query result cache properties
  • GET/_api/query/current Returns the currently running AQL queries
  • GET/_api/query/properties Returns the properties for the AQL query tracking
  • PUT/_api/query/properties Changes the properties for the AQL query tracking

Collections API

  • GET/_api/collection/{collection-name}/checksum Return checksum for the collection
  • PUT/_api/collection/{collection-name}/loadIndexesIntoMemory Load Indexes into Memory
  • PUT/_api/collection/{collection-name}/recalculateCount Recalculate count of a collection
  • PUT/_api/collection/{collection-name}/responsibleShard Return responsible shard for a document
  • GET/_api/collection/{collection-name}/shards Return the shard ids of a collection
  • PUT/_api/collection/{collection-name}/compact Compact a collection

Views API

  • GET/_api/view Reads all views
  • POST/_api/view#iresearch Create iresearch view
  • DELETE/_api/view/{view-name} Drops a view
  • GET/_api/view/{view-name} Return information about a view
  • GET/_api/view/{view-name}/properties Read properties of a view
  • PATCH/_api/view/{view-name}/properties#iresearch Partially changes properties of an iresearch view
  • PUT/_api/view/{view-name}/properties#iresearch Change properties of an iresearch view
  • PUT/_api/view/{view-name}/rename Rename view

Analyzers API

  • GET/_api/analyzer List all Analyzers
  • POST/_api/analyzer Create an Analyzer with the supplied definition
  • DELETE/_api/analyzer/{analyzer-name} Remove an Analyzer
  • GET/_api/analyzer/{analyzer-name} Return the Analyzer definition

Admin API

  • GET/_admin/log/entries Read global logs from the server
  • POST/_admin/routing/reload Reloads the routing information
  • GET/_admin/server/id Return id of a server in a cluster
  • GET/_admin/server/role Return role of a server in a cluster
  • GET/_api/engine Return server database engine type
  • GET/_api/version Return server version

Version 2.0

New transport implementations

  • VelocyStream support
  • VelocyPack-over-HTTP support

Simple Queries API

  • TODO

Job API

  • TODO

Graph Edges API

  • GET/_api/edges/{collection-id} Read in- or outbound edges

Graph Traversal API

  • POST/_api/traversal executes a traversal

Database Management API implementations

Cluster API

  • TODO

FOXX API

  • TODO

Replication API

  • TODO