I would say that Cypher is the easiest, most documented and declarative way to interact with Neo4j. I would switch to the scala / java API for only two reasons:
Missing features, such as mandatory workarounds (if necessary)
Performance that is currently still better in some cases with a built-in API until Cypher builds on the new high-performance Java API
source share