ArangoDB v3.10 reached End of Life (EOL) and is no longer supported.

This documentation is outdated. Please see the most recent stable version.

HTTP interface for search-alias Views

The HTTP API for Views lets you manage search-alias Views, including adding and removing inverted indexes

Create a search-alias View

POST /_api/view
Creates a new View with a given name and properties if it does not already exist.
Request Body application/json object
  • A list of inverted indexes to add to the View.

    • The name of a collection.

    • The name of an inverted index of the collection, or the index ID without the <collection>/ prefix.

  • The name of the View.

  • The type of the View. Must be equal to "search-alias". This option is immutable.

Responses
  • If the name or type attribute are missing or invalid, then an HTTP 400 error is returned.

  • If a View called name already exists, then an HTTP 409 error is returned.

Examples

curl -X POST --header 'accept: application/json' --data-binary @- --dump - http://localhost:8529/_api/view
{
  "name": "products",
  "type": "search-alias",
  "indexes": [
    {
      "collection": "books",
      "index": "inv-idx"
    }
  ]
}
Show output

Get information about a View

GET /_api/view/{view-name}

The result is an object briefly describing the View with the following attributes:

  • id: The identifier of the View
  • name: The name of the View
  • type: The type of the View as string
Path Parameters
  • The name of the View.

Query Parameters
    HTTP Headers
      Responses
      • If the view-name is unknown, then a HTTP 404 is returned.

      Examples

      Using an identifier:

      curl --header 'accept: application/json' --dump - http://localhost:8529/_api/view/71485
      Show output

      Using a name:

      curl --header 'accept: application/json' --dump - http://localhost:8529/_api/view/productsView
      Show output

      Read properties of a View

      GET /_api/view/{view-name}/properties

      Returns an object containing the definition of the View identified by view-name.

      The result is an object with a full description of a specific View, including View type dependent properties.

      Path Parameters
      • The name of the View.

      Query Parameters
        HTTP Headers
          Responses
          • If the view-name is missing, then a HTTP 400 is returned.

          • If the view-name is unknown, then a HTTP 404 is returned.

          Examples

          Using an identifier:

          curl --header 'accept: application/json' --dump - http://localhost:8529/_api/view/71501/properties
          Show output

          Using a name:

          curl --header 'accept: application/json' --dump - http://localhost:8529/_api/view/productsView/properties
          Show output

          List all Views

          GET /_api/view

          Returns an object containing a listing of all Views in a database, regardless of their type. It is an array of objects with the following attributes:

          • id
          • name
          • type
          Responses
          • The list of Views

          Examples

          Return information about all Views:

          curl --header 'accept: application/json' --dump - http://localhost:8529/_api/view
          Show output

          Replace the properties of a search-alias View

          PUT /_api/view/{view-name}/properties
          Replaces the list of indexes of a search-alias View.
          Path Parameters
          • The name of the View.

          Query Parameters
            HTTP Headers
              Request Body application/json object
              • A list of inverted indexes for the View.

                • The name of a collection.

                • The name of an inverted index of the collection, or the index ID without the <collection>/ prefix.

              Responses
              • On success, an object with the following attributes is returned:

                  Response Body application/json object
                • The identifier of the View.

                • The list of inverted indexes that are part of the View.

                  • The name of a collection.

                  • The name of an inverted index of the collection.

                • The name of the View.

                • The View type ("search-alias").

              • If the view-name is missing, then a HTTP 400 is returned.

              • If the view-name is unknown, then a HTTP 404 is returned.

              Examples

              curl -X PUT --header 'accept: application/json' --data-binary @- --dump - http://localhost:8529/_api/view/productsView/properties
              {
                "indexes": [
                  {
                    "collection": "books",
                    "index": "inv_descr"
                  }
                ]
              }
              Show output

              Update the properties of a search-alias View

              PATCH /_api/view/{view-name}/properties
              Updates the list of indexes of a search-alias View.
              Path Parameters
              • The name of the View.

              Query Parameters
                HTTP Headers
                  Request Body application/json object
                  • A list of inverted indexes to add to or remove from the View.

                    • The name of a collection.

                    • The name of an inverted index of the collection, or the index ID without the <collection>/ prefix.

                    • Whether to add or remove the index to the stored indexes property of the View. Possible values: "add", "del". The default is "add".

                  Responses
                  • On success, an object with the following attributes is returned:

                      Response Body application/json object
                    • The identifier of the View.

                    • The list of inverted indexes that are part of the View.

                      • The name of a collection.

                      • The name of an inverted index of the collection.

                    • The name of the View.

                    • The View type ("search-alias").

                  • If the view-name is missing, then a HTTP 400 is returned.

                  • If the view-name is unknown, then a HTTP 404 is returned.

                  Examples

                  curl -X PATCH --header 'accept: application/json' --data-binary @- --dump - http://localhost:8529/_api/view/productsView/properties
                  {
                    "indexes": [
                      {
                        "collection": "books",
                        "index": "inv_descr"
                      }
                    ]
                  }
                  Show output

                  Rename a View

                  PUT /_api/view/{view-name}/rename

                  Renames a View. Expects an object with the attribute(s)

                  • name: The new name

                  It returns an object with the attributes

                  • id: The identifier of the View.
                  • name: The new name of the View.
                  • type: The View type.
                  Renaming Views is not supported in cluster deployments.
                  Path Parameters
                  • The name of the View to rename.

                  Query Parameters
                    HTTP Headers
                      Responses
                      • If the view-name is missing, then a HTTP 400 is returned.

                      • If the view-name is unknown, then a HTTP 404 is returned.

                      Examples

                      curl -X PUT --header 'accept: application/json' --data-binary @- --dump - http://localhost:8529/_api/view/productsView/rename
                      {
                        "name": "catalogView"
                      }
                      Show output

                      Drop a View

                      DELETE /_api/view/{view-name}

                      Drops the View identified by view-name.

                      If the View was successfully dropped, an object is returned with the following attributes:

                      • error: false
                      • id: The identifier of the dropped View
                      Path Parameters
                      • The name of the View to drop.

                      Query Parameters
                        HTTP Headers
                          Responses
                          • If the view-name is missing, then a HTTP 400 is returned.

                          • If the view-name is unknown, then a HTTP 404 is returned.

                          Examples

                          Using an identifier:

                          curl -X DELETE --header 'accept: application/json' --dump - http://localhost:8529/_api/view/71551
                          Show output

                          Using a name:

                          curl -X DELETE --header 'accept: application/json' --dump - http://localhost:8529/_api/view/productsView
                          Show output