23.12. Indexing

23.12.1. Create schema index
23.12.2. List indexes for a label
23.12.3. Drop schema index
[Note]Note

This documents schema based indexes, a feature that was introduced in Neo4j 2.0, see Section 23.16, “Legacy indexing” for legacy indexing.

For more details about schema based indexes and the optional schema in Neo4j, see Section 3.7, “Schema”.

23.12.1. Create schema index

This will start a background job in the database that will create and populate the new index. You can check the status of your index by listing all the indexes for the relevant label. The new index will show up, but have a state of "POPULATING" until the index is ready.

Figure 23.55. Final Graph


Example request

  • POST http://localhost:7474/db/data/schema/index/person
  • Accept: application/json
  • Content-Type: application/json
{
  "property_keys" : [ "name" ]
}

Example response

  • 200: OK
  • Content-Type: application/json
{
  "label" : "person",
  "property-keys" : [ "name" ]
}

23.12.2. List indexes for a label

Figure 23.56. Final Graph


Example request

  • GET http://localhost:7474/db/data/schema/index/user
  • Accept: application/json

Example response

  • 200: OK
  • Content-Type: application/json
[ {
  "label" : "user",
  "property-keys" : [ "name" ]
} ]

23.12.3. Drop schema index

Drop schema index

Figure 23.57. Final Graph


Example request

  • DELETE http://localhost:7474/db/data/schema/index/SomeLabel/name
  • Accept: application/json

Example response

  • 204: No Content