Overview

Errors & limits

Error formats, error codes, retries, rate limits and size limits

Error format

A REST error has an HTTP status and a JSON body:

{
  "error": "rate_limited",
  "detail": "Too many write calls this minute.",
  "retryable": true,
  "request_id": "req_01JBY3K2Q8",
  "retry_after_ms": 12000
}

Retryable 429 and 503 answers also carry a Retry-After header.

Every response carries the request’s id (x-request-id). Include it when you contact support.

Common error codes

CodeStatusMeaningRetry?
validation_failed400An argument is missing, malformed or over a limit. The detail says which.Fix the request
unauthorized401No credential, or it was rejected or revoked.Sign in again
graph_frozen401The API key’s graph is read-only after a downgrade.Upgrade or use another graph
plan limit (e.g. document_limit_reached)402A Free allowance is used up.Upgrade (documents, meetings and notes also return next usage period)
organization_write_mode_not_permitted403Organization write mode is on, but you can no longer write the organization’s graph.Turn write mode off
not_found, start_node_not_found404The node, edge or file doesn’t exist.No
node_exists409hm_store with if_exists: "error" on an existing key.No
edge_version_conflict409The edge changed since the edge_version you sent.Re-read, then retry
node_deleting409The key is still being deleted in the background.Yes, later
idempotency_conflict409The same X-Request-ID was reused with different input.Use a new id
file_quota_exceeded413The file is over its type’s size limit.No
rate_limited429Over your plan’s per-minute rate limit.Yes, after retry_after_ms
analysis_pending503hm_list_orphans before the first graph analysis finished.Yes, after retry_after_ms
dependency_unavailable, transaction_conflict503A temporary problem on HyperMemory’s side.Yes, with backoff

Any answer with retryable: true is safe to retry. Retry writes with the same X-Request-ID so they are applied exactly once.

Rate limits

Tool calls are limited per account, per minute, in three buckets:

BucketToolsFreeBasicProBusinessEnterprise
Readevery tool not listed below3060120240600
Writehm_store, hm_update, hm_forget, hm_add_relationships306060120300
Ingesthm_ingest, hm_upload_file31030100300

A 429 answer includes bucket, limit_per_minute and retry_after_ms.

Size limits

ItemLimit
MCP request body64 MiB
REST request body16 MiB (use /upload-file or the dashboard for files)
Node key512 bytes
Node description16 KiB (aim for 80–300 characters)
Node data64 KiB
Node search_text32 KiB
Relationships per hm_store99
Relationships per hm_add_relationships25
Hyperedge participants2–256
hm_recall results1–50
hm_get_nodes keys1–50
hm_find_related nodes / depth500 / 3
hm_ingest text50,000 characters
hm_timeline entries per page200
Timeline entry16 KiB summary, 64 KiB meta
Uploaded file50 MiB documents, 20 MiB images, 100 MiB audio; about 47 MiB through MCP

Monthly allowances — queries + nodes, documents, meetings — depend on your plan. See Plans.