ssistance Required: Enabling HTTP API Access for Neo4j Aura Instance
closed
Scott Schaefer
Dear Neo4j Support Team,
I am currently working on integrating my Neo4j Aura Professional instance with an n8n workflow via the HTTP API, but I am encountering persistent 403 Forbidden errors. The authentication credentials are correct, and I can successfully access the database via the Neo4j Browser and Cypher Shell. However, HTTP requests to the REST API (/db/neo4j/tx/commit) are being denied with the message:
403 - "Denied by administrative rules."
Steps Taken:
1. Verified that the username and password are correct by logging into the Neo4j Browser.
2. Confirmed that the instance is running properly and accepts Cypher queries manually.
3. Constructed a proper HTTP request with Basic Authentication using an encoded Authorization: Basic header.
4. Tried different REST API endpoints (/db/neo4j/query/v2, /db/neo4j/tx/commit), all resulting in a 403 Forbidden error.
5. Checked the Neo4j documentation for any required settings related to enabling HTTP API access on Neo4j Aura.
Request Details:
• Method: POST
• URL: https://<instance-id>.databases.neo4j.io/db/neo4j/tx/commit
• Headers:
Content-Type: application/json
Accept: application/json; charset=UTF-8
Authorization: Basic <encoded-credentials>
• Body:
{
"statements": [
{
"statement": "MATCH (d:Domain) RETURN d.name AS name, d.description AS description, d.usage_frequency AS usage_frequency, d.created_at AS created_at, d.last_updated AS last_updated"
}
]
}
• Response:
{
"errorMessage": "Forbidden - perhaps check your credentials?",
"errorDescription": "<html><body><h1>403 Forbidden</h1>\nDenied by administrative rules.\n</body></html>\n"
}
Question:
Is there a setting or permission in Neo4j Aura Professional that restricts HTTP API access? If so, how can I enable it to allow requests from external applications like n8n?
I appreciate your assistance in resolving this issue.
Best regards,
jon.giffard@neo4j.com
closed
jon.giffard@neo4j.com
With Aura, the Query API is available for HTTPS based connections.
The request details show you have tried to connect using the legacy HTTP API Endpoint that has never been available on Aura, only for customers running Neo4j in their own environments.
Information on the new Query API, including examples, can be found here:-
You will need to modify the body of your request to fit the data contract of the Query API. It's a small change and should be something like this ( please check )
{
"statement": "MATCH (d:Domain) RETURN d.name AS name, d.description AS description, d.usage_frequency AS usage_frequency, d.created_at AS created_at, d.last_updated AS last_updated"
}
You will need to post this to https://<instance-id>.databases.neo4j.io/db/neo4j/query/v2
For questions on how to use any aspect of Neo4j, I encourage you to take part in the community forum here:- https://community.neo4j.com/