Create Graph Project
create_graph_projectCreate a new Neo4j graph database project from a hierarchical JSON schema.
⚠️ GRAPH SCHEMA FORMAT — READ BEFORE CREATING:
Graph schemas define nodes (entities) and relationships, NOT flat database tables. Each field is a dict with "type" and optional "required": true (defaults to false).
SCHEMA STRUCTURE: { "nodes": { "EntityName": { "description": "What this entity represents", "flat_labels": ["AdditionalLabel"], "schema": { "field_name": {"type": "string", "required": true}, "other_field": {"type": "integer"} } } }, "relationships": { "RELATIONSHIP_TYPE": { "from": "EntityName", "to": "OtherEntity", "cardinality": "MANY_TO_MANY", "data_schema": { "field_name": {"type": "date"} } } } }
FIELD TYPES: string, integer, float, boolean, date, json
CARDINALITY OPTIONS: ONE_TO_ONE, ONE_TO_MANY, MANY_TO_ONE, MANY_TO_MANY
HIERARCHICAL NODES: nest an entity inside its parent entity (beside "description", "flat_labels" and "schema") to create a type hierarchy; the child inherits the parent's labels: "Animal": {"description": "...", "schema": {...}, "Dog": {"description": "...", "schema": {...}}}
RULES:
"nodes" key is REQUIRED — must contain at least one entity
Each entity needs "description" and "schema" with field definitions
Each field is {"type": "...", "required": true/false} — required defaults to false
Relationship "from"/"to" must reference defined node names
Relationship types should be UPPER_SNAKE_CASE
Entity names should be PascalCase
Automatic fields (id, created_at, updated_at) are NOT needed
WORKFLOW:
get_graph_template_schemas FIRST to see valid examples
create_graph_project with a cluster_id from list_clusters
Poll get_job_status with the returned job_id (2-5 minutes) While RationalBloks is being updated, the call is refused with 'RationalBloks is being updated': call it again in a few minutes.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Project name | |
| schema | Yes | Graph schema with 'nodes' and optionally 'relationships' keys. Use get_graph_template_schemas to see valid examples. | |
| cluster_id | Yes | REQUIRED — BYOC resource pool ID (from list_clusters) to deploy this graph project onto your own cluster. Owned hosting is retired: a project we operate must run on your own infrastructure. Register a pool via the Resource Pools UI first, then pass its id here. |