Prev |  | Next

## 20.10. Node properties

### 20.10.1. Set property on node

Setting different properties will retain the existing ones for this node. Note that a single value are submitted not as a map but just as a value (which is valid JSON) like in the example below.

Figure 20.36. Final Graph

Example request

- `PUT` `http://localhost:7474/db/data/node/11/properties/foo`
- `Accept:` `application/json; charset=UTF-8`
- `Content-Type:` `application/json`

    "bar"

Example response

- `204:` `No Content`

### 20.10.2. Update node properties

This will replace all existing properties on the node with the new set of attributes.

Figure 20.37. Final Graph

Example request

- `PUT` `http://localhost:7474/db/data/node/9/properties`
- `Accept:` `application/json; charset=UTF-8`
- `Content-Type:` `application/json`

    {
      "age" : "18"
    }

Example response

- `204:` `No Content`

### 20.10.3. Get properties for node

Figure 20.38. Final Graph

Example request

- `GET` `http://localhost:7474/db/data/node/36/properties`
- `Accept:` `application/json; charset=UTF-8`

Example response

- `200:` `OK`
- `Content-Type:` `application/json; charset=UTF-8`

    {
      "foo" : "bar"
    }

### 20.10.4. Property values can not be null

This example shows the response you get when trying to set a property to `null`.

Example request

- `POST` `http://localhost:7474/db/data/node`
- `Accept:` `application/json; charset=UTF-8`
- `Content-Type:` `application/json`

    {
      "foo" : null
    }

Example response

- `400:` `Bad Request`
- `Content-Type:` `application/json; charset=UTF-8`

    {
      "message": "Could not set property \"foo\", unsupported type: null",
      "exception": "PropertyValueException",
      "fullname": "org.neo4j.server.rest.web.PropertyValueException",
      "stacktrace": [
        "org.neo4j.server.rest.domain.PropertySettingStrategy.setProperty(PropertySettingStrategy.java:141)",
        "org.neo4j.server.rest.domain.PropertySettingStrategy.setProperties(PropertySettingStrategy.java:88)",
        "org.neo4j.server.rest.web.DatabaseActions.createNode(DatabaseActions.java:214)",
        "org.neo4j.server.rest.web.RestfulGraphDatabase.createNode(RestfulGraphDatabase.java:238)",
        "java.lang.reflect.Method.invoke(Method.java:606)",
        "org.neo4j.server.rest.transactional.TransactionalRequestDispatcher.dispatch(TransactionalRequestDispatcher.java:139)",
        "org.neo4j.server.rest.security.SecurityFilter.doFilter(SecurityFilter.java:112)",
        "java.lang.Thread.run(Thread.java:724)"
      ]
    }

### 20.10.5. Property values can not be nested

Nesting properties is not supported. You could for example store the nested JSON as a string instead.

Example request

- `POST` `http://localhost:7474/db/data/node/`
- `Accept:` `application/json; charset=UTF-8`
- `Content-Type:` `application/json`

    {
      "foo" : {
        "bar" : "baz"
      }
    }

Example response

- `400:` `Bad Request`
- `Content-Type:` `application/json; charset=UTF-8`

    {
      "message": "Could not set property \"foo\", unsupported type: {bar\u003dbaz}",
      "exception": "PropertyValueException",
      "fullname": "org.neo4j.server.rest.web.PropertyValueException",
      "stacktrace": [
        "org.neo4j.server.rest.domain.PropertySettingStrategy.setProperty(PropertySettingStrategy.java:141)",
        "org.neo4j.server.rest.domain.PropertySettingStrategy.setProperties(PropertySettingStrategy.java:88)",
        "org.neo4j.server.rest.web.DatabaseActions.createNode(DatabaseActions.java:214)",
        "org.neo4j.server.rest.web.RestfulGraphDatabase.createNode(RestfulGraphDatabase.java:238)",
        "java.lang.reflect.Method.invoke(Method.java:606)",
        "org.neo4j.server.rest.transactional.TransactionalRequestDispatcher.dispatch(TransactionalRequestDispatcher.java:139)",
        "org.neo4j.server.rest.security.SecurityFilter.doFilter(SecurityFilter.java:112)",
        "java.lang.Thread.run(Thread.java:724)"
      ]
    }

### 20.10.6. Delete all properties from node

Figure 20.39. Final Graph

Example request

- `DELETE` `http://localhost:7474/db/data/node/250/properties`
- `Accept:` `application/json; charset=UTF-8`

Example response

- `204:` `No Content`

### 20.10.7. Delete a named property from a node

To delete a single property from a node, see the example below.

Figure 20.40. Starting Graph

Figure 20.41. Final Graph

Example request

- `DELETE` `http://localhost:7474/db/data/node/249/properties/name`
- `Accept:` `application/json; charset=UTF-8`

Example response

- `204:` `No Content`

Copyright © 2014 Neo Technology

Prev | Up | Next
| Home |