Amazon Neptune openCypher API

openCypher graph query language API for querying property graphs with Cypher syntax in Neptune. It provides an HTTP endpoint for executing openCypher queries against property graph data. Neptune supports openCypher as a declarative query language with SQL-inspired syntax using MATCH, WHERE, WITH, an

Operations 5

POST /openCypher Amazon Neptune Execute an OpenCypher Query via HTTP POST #
GET /openCypher Amazon Neptune Execute an OpenCypher Query via HTTP GET #
GET /openCypher/status Amazon Neptune Get the Status of All Running OpenCypher Queries #
GET /openCypher/status/{queryId} Amazon Neptune Get the Status of a Specific OpenCypher Query #
DELETE /openCypher/status/{queryId} Amazon Neptune Cancel a Running OpenCypher Query #

Documentation

📖
APIReference
https://docs.aws.amazon.com/neptune-analytics/latest/apiref/Welcome.html
📖
APIReference
https://docs.aws.amazon.com/neptune/latest/data-api/Welcome.html
📖
APIReference
https://docs.aws.amazon.com/neptune/latest/userguide/api.html
📖
APIReference
https://docs.aws.amazon.com/neptune/latest/userguide/load-api-reference.html
📖
APIReference
https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-api-reference.html
📖
APIReference
https://docs.aws.amazon.com/neptune/latest/userguide/streams-using-api-call.html
📖
Documentation
https://docs.aws.amazon.com/neptune-analytics/latest/userguide/what-is-neptune-analytics.html
📖
Documentation
https://docs.aws.amazon.com/neptune/latest/userguide/access-graph-gremlin.html
📖
Documentation
https://docs.aws.amazon.com/neptune/latest/userguide/access-graph-opencypher.html
📖
Documentation
https://docs.aws.amazon.com/neptune/latest/userguide/access-graph-sparql.html
📖
Documentation
https://docs.aws.amazon.com/neptune/latest/userguide/bulk-load.html
📖
Documentation
https://docs.aws.amazon.com/neptune/latest/userguide/data-api.html
📖
Documentation
https://docs.aws.amazon.com/neptune/latest/userguide/intro.html
📖
Documentation
https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning.html
📖
Documentation
https://docs.aws.amazon.com/neptune/latest/userguide/streams.html
📖
GettingStarted
https://docs.aws.amazon.com/neptune-analytics/latest/userguide/gettingStarted-accessing.html
📖
GettingStarted
https://docs.aws.amazon.com/neptune/latest/userguide/get-started.html
📖
GettingStarted
https://docs.aws.amazon.com/neptune/latest/userguide/machine-learning-overview.html

Specifications

Other Resources

🔗
Best Practices
https://docs.aws.amazon.com/neptune/latest/userguide/best-practices-gremlin.html
🔗
Best Practices
https://docs.aws.amazon.com/neptune/latest/userguide/best-practices-opencypher.html
🔗
Best Practices
https://docs.aws.amazon.com/neptune/latest/userguide/best-practices-sparql.html
🔗
CLI Reference
https://docs.aws.amazon.com/cli/latest/reference/neptunedata/
🔗
Data API Reference
https://docs.aws.amazon.com/neptune/latest/userguide/data-api-dp-loader.html
🔗
Data API Reference
https://docs.aws.amazon.com/neptune/latest/userguide/data-api-dp-streams.html
🔗
Data Formats
https://docs.aws.amazon.com/neptune/latest/userguide/bulk-load-tutorial-format.html
🔗
Go SDK
https://docs.aws.amazon.com/sdk-for-go/api/service/neptunedata/
🔗
Gremlin Reference
https://tinkerpop.apache.org/docs/current/reference/
🔗
JavaScript SDK
https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/neptunedata/
🔗
Loader Command
https://docs.aws.amazon.com/neptune/latest/userguide/load-api-reference-load.html
🔗
Model Training
https://docs.aws.amazon.com/neptune/latest/userguide/data-api-dp-ml-training.html
🔗
Pricing
https://aws.amazon.com/neptune/pricing/
🔗
REST Endpoint
https://docs.aws.amazon.com/neptune/latest/userguide/access-graph-gremlin-rest.html
🔗
REST Endpoint
https://docs.aws.amazon.com/neptune/latest/userguide/access-graph-sparql-http-rest.html
🔗
Reference
https://docs.aws.amazon.com/neptune/latest/userguide/gremlin-api-reference.html
🔗
Response Format
https://docs.aws.amazon.com/neptune/latest/userguide/streams-using-api-reponse.html
🔗
SDKs
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/neptune-graph.html
🔗
SDKs
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/neptune.html
🔗
SDKs
https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/neptunedata.html
🔗
SPARQL Reference
https://www.w3.org/TR/sparql11-query/
🔗
openCypher Reference
https://opencypher.org/

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/amazon-neptune-opencypher"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

amazon-neptune-opencypher-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Amazon Neptune Neptune openCypher API
  description: >-
    openCypher graph query language API for querying property graphs with
    Cypher syntax in Neptune. It provides an HTTP endpoint for executing
    openCypher queries against property graph data. Neptune supports openCypher
    as a declarative query language with SQL-inspired syntax using MATCH,
    WHERE, WITH, and RETURN clauses. Production-ready since Neptune engine
    release 1.1.1.0. Uses HTTP/1.1 with HTTPS only.
  version: '2024-01-01'
  contact:
    name: Amazon Web Services
    url: https://docs.aws.amazon.com/neptune/latest/userguide/access-graph-opencypher.html
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
servers:
- url: https://{cluster-endpoint}:8182
  description: Neptune openCypher HTTP REST endpoint
  variables:
    cluster-endpoint:
      default: your-cluster-endpoint.region.neptune.amazonaws.com
      description: The cluster endpoint DNS name for your Neptune DB cluster
security:
- aws_sigv4: []
tags:
- name: Query
  description: Execute openCypher graph queries
- name: Status
  description: Query status and cancellation operations
paths:
  /openCypher:
    post:
      operationId: executeOpenCypherQuery
      summary: Amazon Neptune Execute an OpenCypher Query via HTTP POST
      description: >-
        Submits an openCypher query to the Neptune HTTP endpoint. The query
        is provided as a form-encoded parameter. Supports both read and write
        queries. Nodes are returned with ~id, ~entityType, ~labels, and
        ~properties fields. Relationships include ~id, ~entityType, ~start,
        ~end, ~type, and ~properties fields.
      tags:
      - Query
      parameters:
      - name: TE
        in: header
        description: >-
          Set to 'trailers' to enable trailing headers for better error
          detection. Available in Neptune 1.4.5.0+.
        schema:
          type: string
          enum:
          - trailers
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/OpenCypherQueryRequest'
            examples:
              matchAll:
                summary: Match all nodes
                value:
                  query: 'MATCH (n) RETURN n LIMIT 10'
              countNodes:
                summary: Count all nodes
                value:
                  query: 'MATCH (n) RETURN count(n)'
              createNode:
                summary: Create a node
                value:
                  query: "CREATE (n:Person {name: 'John', age: 30}) RETURN n"
      responses:
        '200':
          description: openCypher query executed successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenCypherQueryResponse'
              examples:
                executeOpenCypherQuery200Example:
                  summary: Default executeOpenCypherQuery 200 response
                  x-microcks-default: true
                  value:
                    results:
                    - {}
          headers:
            X-Neptune-Status:
              description: >-
                Response code and status (only when TE: trailers was sent).
              schema:
                type: string
            X-Neptune-Detail:
              description: >-
                URL-encoded JSON error details (only when TE: trailers was sent).
                Empty on success.
              schema:
                type: string
        '400':
          description: Bad request - malformed openCypher query.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenCypherErrorResponse'
              examples:
                executeOpenCypherQuery400Example:
                  summary: Default executeOpenCypherQuery 400 response
                  x-microcks-default: true
                  value:
                    requestId: neptune-cluster-abc123
                    code: example-value
                    detailedMessage: example-value
        '408':
          description: Query timed out before completing.
        '500':
          description: Internal server error during query execution.
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    get:
      operationId: executeOpenCypherQueryGet
      summary: Amazon Neptune Execute an OpenCypher Query via HTTP GET
      description: >-
        Submits an openCypher query via URL query parameter. Supports both
        read and write queries.
      tags:
      - Query
      parameters:
      - name: query
        in: query
        required: true
        description: The openCypher query string (URL-encoded).
        schema:
          type: string
        example: MATCH (n1) RETURN n1 LIMIT 10
      - name: TE
        in: header
        description: Set to 'trailers' for trailing headers.
        schema:
          type: string
          enum:
          - trailers
      responses:
        '200':
          description: openCypher query executed successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenCypherQueryResponse'
              examples:
                executeOpenCypherQueryGet200Example:
                  summary: Default executeOpenCypherQueryGet 200 response
                  x-microcks-default: true
                  value:
                    results:
                    - {}
        '400':
          description: Bad request - malformed openCypher query.
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /openCypher/status:
    get:
      operationId: getOpenCypherQueryStatus
      summary: Amazon Neptune Get the Status of All Running OpenCypher Queries
      description: >-
        Returns the status of all running and waiting openCypher queries,
        including query IDs and execution statistics.
      tags:
      - Status
      responses:
        '200':
          description: Query status retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenCypherQueryStatusList'
              examples:
                getOpenCypherQueryStatus200Example:
                  summary: Default getOpenCypherQueryStatus 200 response
                  x-microcks-default: true
                  value:
                    acceptedQueryCount: 1
                    runningQueryCount: 1
                    queries:
                    - {}
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /openCypher/status/{queryId}:
    get:
      operationId: getOpenCypherQueryStatusById
      summary: Amazon Neptune Get the Status of a Specific OpenCypher Query
      description: >-
        Returns the status of a specific openCypher query by its query ID.
      tags:
      - Status
      parameters:
      - name: queryId
        in: path
        required: true
        description: The unique identifier of the openCypher query.
        schema:
          type: string
      responses:
        '200':
          description: Query status retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OpenCypherQueryStatusDetail'
              examples:
                getOpenCypherQueryStatusById200Example:
                  summary: Default getOpenCypherQueryStatusById 200 response
                  x-microcks-default: true
                  value:
                    queryId: neptune-cluster-abc123
                    queryString: example-value
                    queryEvalStats:
                      waited: 1
                      elapsed: 1
                      cancelled: true
        '404':
          description: Query with the specified ID was not found.
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    delete:
      operationId: cancelOpenCypherQuery
      summary: Amazon Neptune Cancel a Running OpenCypher Query
      description: >-
        Cancels a running openCypher query by its query ID.
      tags:
      - Status
      parameters:
      - name: queryId
        in: path
        required: true
        description: The unique identifier of the openCypher query to cancel.
        schema:
          type: string
      responses:
        '200':
          description: Query cancelled successfully.
        '404':
          description: Query with the specified ID was not found.
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  securitySchemes:
    aws_sigv4:
      type: apiKey
      name: Authorization
      in: header
      description: AWS Signature Version 4 authentication via IAM
  schemas:
    OpenCypherQueryRequest:
      type: object
      required:
      - query
      properties:
        query:
          type: string
          description: The openCypher query string.
    OpenCypherQueryResponse:
      type: object
      properties:
        results:
          type: array
          description: The query result rows.
          items:
            type: object
            description: >-
              A result row. Keys are the RETURN alias names. Values can be
              scalars, nodes, relationships, or paths.
            additionalProperties:
              description: >-
                Result value. Nodes have ~id, ~entityType, ~labels,
                ~properties. Relationships have ~id, ~entityType, ~start,
                ~end, ~type, ~properties.
    OpenCypherNode:
      type: object
      description: A property graph node as returned by openCypher queries.
      properties:
        ~id:
          type: string
          description: The unique identifier of the node.
        ~entityType:
          type: string
          enum:
          - node
          description: The entity type (always 'node').
        ~labels:
          type: array
          items:
            type: string
          description: The labels assigned to the node.
        ~properties:
          type: object
          additionalProperties: true
          description: The node properties as key-value pairs.
    OpenCypherRelationship:
      type: object
      description: A property graph relationship as returned by openCypher queries.
      properties:
        ~id:
          type: string
          description: The unique identifier of the relationship.
        ~entityType:
          type: string
          enum:
          - relationship
          description: The entity type (always 'relationship').
        ~start:
          type: string
          description: The ID of the source node.
        ~end:
          type: string
          description: The ID of the target node.
        ~type:
          type: string
          description: The relationship type.
        ~properties:
          type: object
          additionalProperties: true
          description: The relationship properties as key-value pairs.
    OpenCypherErrorResponse:
      type: object
      properties:
        requestId:
          type: string
        code:
          type: string
        detailedMessage:
          type: string
    OpenCypherQueryStatusList:
      type: object
      properties:
        acceptedQueryCount:
          type: integer
        runningQueryCount:
          type: integer
        queries:
          type: array
          items:
            $ref: '#/components/schemas/OpenCypherQueryStatusDetail'
    OpenCypherQueryStatusDetail:
      type: object
      properties:
        queryId:
          type: string
        queryString:
          type: string
        queryEvalStats:
          type: object
          properties:
            waited:
              type: integer
              description: Time waited in queue (milliseconds).
            elapsed:
              type: integer
              description: Elapsed execution time (milliseconds).
            cancelled:
              type: boolean